Package org.exist

Examples of org.exist.Database


    }

    @Test
    public void validate_cant_read_ACL_ordered_entries() throws PermissionDeniedException {
        final SecurityManager mockSecurityManager = EasyMock.createMock(SecurityManager.class);
        final Database mockDatabase = EasyMock.createMock(Database.class);
        final Subject mockCurrentSubject = EasyMock.createMock(Subject.class);
       
        //expect(mockSecurityManager.getDatabase()).andReturn(mockDatabase).times(2);
        //expect(mockDatabase.getSubject()).andReturn(mockCurrentSubject).times(2);
        //expect(mockCurrentSubject.hasDbaRole()).andReturn(true).times(2);
View Full Code Here


    }

    @Test
    public void validate_can_write_ACL_ordered_entries() throws PermissionDeniedException {
        final SecurityManager mockSecurityManager = EasyMock.createMock(SecurityManager.class);
        final Database mockDatabase = EasyMock.createMock(Database.class);
        final Subject mockCurrentSubject = EasyMock.createMock(Subject.class);
       
        //expect(mockSecurityManager.getDatabase()).andReturn(mockDatabase).times(2);
        //expect(mockDatabase.getSubject()).andReturn(mockCurrentSubject).times(2);
        //expect(mockCurrentSubject.hasDbaRole()).andReturn(true).times(2);
View Full Code Here

   
    @Test
    public void roundtrip_write_read() throws PermissionDeniedException, IOException {
       
        final SecurityManager mockSecurityManager = EasyMock.createMock(SecurityManager.class);
        final Database mockDatabase = EasyMock.createMock(Database.class);
        final Subject mockCurrentSubject = EasyMock.createMock(Subject.class);
       
        replay(mockSecurityManager, mockDatabase, mockCurrentSubject);
       
        SimpleACLPermission permission = new SimpleACLPermission(mockSecurityManager);
View Full Code Here

    try {
          Configuration config = new Configuration();
          config.setProperty(FunctionFactory.PROPERTY_DISABLE_DEPRECATED_FUNCTIONS, new Boolean(false));
          BrokerPool.configure(1, 5, config);
         
          Database db = BrokerPool.getInstance();
         
          Thread thread = new Thread(new EnterServiceMode());
         
          DBBroker broker = null;
          try {
            broker = db.get(null);
           
            thread.start();
            Thread.sleep(1000);
           
          } finally {
            System.out.println("release broker"+Thread.currentThread());
            db.release(broker);
          }
         
          Thread.sleep(1000);
         
          assertFalse(thread.isAlive());
View Full Code Here

    try {
          Configuration config = new Configuration();
          config.setProperty(FunctionFactory.PROPERTY_DISABLE_DEPRECATED_FUNCTIONS, new Boolean(false));
          BrokerPool.configure(1, 5, config);
         
          Database db = BrokerPool.getInstance();
         
          Thread thread;
          for (int i = 0; i < 1000; i++) {
            thread = new Thread(new GetRelease());
            thread.start();
            Thread.sleep(rd.nextInt(250));
           
            System.out.println(""+i+", "+db.countActiveBrokers());
           
            if (ex != null) {
              ex.printStackTrace();
          fail(ex.getMessage());
            }
           
            if (debug && db.countActiveBrokers() == 20) {
            Map<Thread, StackTraceElement[]> stackTraces = Thread.getAllStackTraces();
           
            StringBuilder sb = new StringBuilder();
           
                sb.append("************************************************\n");
                sb.append("************************************************\n");

                for (Map.Entry<Thread, StackTraceElement[]> entry : stackTraces.entrySet()) {
                 
                  StackTraceElement[] stacks = entry.getValue();

                  sb.append("THREAD: ");
                  sb.append(entry.getKey().getName());
                  sb.append("\n");
                  for (int n = 0; n < stacks.length; n++) {
                    sb.append(" ");
                    sb.append(stacks[n]);
                    sb.append("\n");
                  }
                }
               
                if (stackTraces.isEmpty())
                  sb.append("No threads.");
               
                System.out.println(sb.toString());
            }
          }
         
          while (db.countActiveBrokers() > 0) {
            System.out.println(db.countActiveBrokers());
            Thread.sleep(100);
          }
           
         
    } catch (Exception e) {
View Full Code Here

    @Test
    public void copyOf_calls_getMetadata() {

        BrokerPool mockBrokerPool = EasyMock.createMock(BrokerPool.class);
        Database mockDatabase = EasyMock.createMock(Database.class);
        Subject mockCurrentSubject = EasyMock.createMock(Subject.class);
        Group mockCurrentSubjectGroup= EasyMock.createMock(Group.class);
        SecurityManager mockSecurityManager = EasyMock.createMock(SecurityManager.class);
        PermissionFactory.sm = mockSecurityManager;

        //test values
        final DocumentMetadata otherMetadata = new DocumentMetadata();

        //expectations
        expect(mockSecurityManager.getDatabase()).andReturn(mockDatabase).times(2);
        expect(mockDatabase.getSubject()).andReturn(mockCurrentSubject).times(2);
        expect(mockCurrentSubject.getUserMask()).andReturn(Permission.DEFAULT_UMASK).times(2);
        expect(mockCurrentSubject.getId()).andReturn(RealmImpl.SYSTEM_ACCOUNT_ID).times(2);
        expect(mockCurrentSubject.getDefaultGroup()).andReturn(mockCurrentSubjectGroup).times(2);
        expect(mockCurrentSubjectGroup.getId()).andReturn(RealmImpl.DBA_GROUP_ID).times(2);
View Full Code Here

    }

    @Test
    public void copyOf_calls_metadata_copyOf() {
        BrokerPool mockBrokerPool = EasyMock.createMock(BrokerPool.class);
        Database mockDatabase = EasyMock.createMock(Database.class);
        Subject mockCurrentSubject = EasyMock.createMock(Subject.class);
        Group mockCurrentSubjectGroup= EasyMock.createMock(Group.class);
        SecurityManager mockSecurityManager = EasyMock.createMock(SecurityManager.class);
        PermissionFactory.sm = mockSecurityManager;

        //test values
        final TestableDocumentMetadata docMetadata = new TestableDocumentMetadata();
        final DocumentMetadata otherMetadata = new DocumentMetadata();

        //expectations
        expect(mockSecurityManager.getDatabase()).andReturn(mockDatabase).times(2);
        expect(mockDatabase.getSubject()).andReturn(mockCurrentSubject).times(2);
        expect(mockCurrentSubject.getUserMask()).andReturn(Permission.DEFAULT_UMASK).times(2);
        expect(mockCurrentSubject.getId()).andReturn(RealmImpl.SYSTEM_ACCOUNT_ID).times(2);
        expect(mockCurrentSubject.getDefaultGroup()).andReturn(mockCurrentSubjectGroup).times(2);
        expect(mockCurrentSubjectGroup.getId()).andReturn(RealmImpl.DBA_GROUP_ID).times(2);
View Full Code Here

    }

    @Test
    public void copyOf_updates_metadata_created_and_lastModified() {
        BrokerPool mockBrokerPool = EasyMock.createMock(BrokerPool.class);
        Database mockDatabase = EasyMock.createMock(Database.class);
        Subject mockCurrentSubject = EasyMock.createMock(Subject.class);
        Group mockCurrentSubjectGroup= EasyMock.createMock(Group.class);
        SecurityManager mockSecurityManager = EasyMock.createMock(SecurityManager.class);
        PermissionFactory.sm = mockSecurityManager;

        //test values
        final DocumentMetadata docMetadata = new TestableDocumentMetadata();
        final DocumentMetadata otherMetadata = new DocumentMetadata();
        final long otherCreated = System.currentTimeMillis() - 2000;
        final long otherLastModified = System.currentTimeMillis() - 1000;

        //expectations
        expect(mockSecurityManager.getDatabase()).andReturn(mockDatabase).times(2);
        expect(mockDatabase.getSubject()).andReturn(mockCurrentSubject).times(2);
        expect(mockCurrentSubject.getUserMask()).andReturn(Permission.DEFAULT_UMASK).times(2);
        expect(mockCurrentSubject.getId()).andReturn(RealmImpl.SYSTEM_ACCOUNT_ID).times(2);
        expect(mockCurrentSubject.getDefaultGroup()).andReturn(mockCurrentSubjectGroup).times(2);
        expect(mockCurrentSubjectGroup.getId()).andReturn(RealmImpl.DBA_GROUP_ID).times(2);
View Full Code Here

  /* (non-Javadoc)
   * @see java.lang.Runnable#run()
   */
  @Override
  public void run() {
    Database db = null;
    DBBroker broker = null;
   
    try {
      db = BrokerPool.getInstance();
     
            BrokerPool.registerStatusObserver(this);
     
      broker = db.get(null);

          XQuery xquery = broker.getXQueryService();

          xquery.execute(expression, null);

//          XQueryContext context = expression.getContext();
//         
//          expression.reset();
//
//          context.setBroker(broker);
//          context.getWatchDog().reset();
//
//          //do any preparation before execution
//          context.prepare();
//
//          context.getProfiler().traceQueryStart();
//          broker.getBrokerPool().getProcessMonitor().queryStarted(context.getWatchDog());
//          try {
//            Sequence result = expression.eval(null);
//           
//            if(outputProperties != null)
//              context.checkOptions(outputProperties); //must be done before context.reset!
//           
//            //return result;
//          } finally {
//              context.getProfiler().traceQueryEnd(context);
//              expression.reset();
//                context.reset();
//            broker.getBrokerPool().getProcessMonitor().queryCompleted(context.getWatchDog());
//          }
   
        } catch (Exception e) {
          e.printStackTrace();
          exception = e;
    } finally {
      if (db != null)
        db.release(broker);
    }
  }
View Full Code Here

   
  }

  @Override
  public String start(String uri) throws Exception {
    Database db = null;
    DBBroker broker = null;
    ScriptRunner runner = null;
   
    try {
      db = BrokerPool.getInstance();
     
      broker = db.get(null);
     
          // Try to find the XQuery
          Source source = SourceFactory.getSource(broker, "", uri, true);
 
          if (source == null) return null;
 
          XQuery xquery = broker.getXQueryService();
     
          XQueryContext queryContext = xquery.newContext(AccessContext.REST);
 
      // Find correct script load path
      queryContext.setModuleLoadPath(XmldbURI.create(uri).removeLastSegment().toString());
 
      CompiledXQuery compiled;
      try {
        compiled = xquery.compile(queryContext, source);
      } catch (IOException e) {
        e.printStackTrace();
        return null;
      }
         
      String sessionId = String.valueOf(queryContext.hashCode());
     
      //link debugger session & script
      DebuggeeJointImpl joint = new DebuggeeJointImpl();
      SessionImpl session = new SessionImpl();

      joint.setCompiledScript(compiled);
      queryContext.setDebuggeeJoint(joint);
      joint.continuation(new Init(session, sessionId, "eXist"));

      runner = new ScriptRunner(session, compiled);
      runner.start();
     
      int count = 0;
      while (joint.firstExpression == null && runner.exception == null && count < 10) {
        try {
          Thread.sleep(100);
        } catch (InterruptedException e) {
        }
        count++;
      }
     
      if (runner.exception != null) {
        throw runner.exception;
      }
     
      if (joint.firstExpression == null) {
        throw new XPathException("Can't run debug session.");
      }

      //queryContext.declareVariable(Debuggee.SESSION, sessionId);
     
      //XXX: make sure that it started up
      sessions.put(sessionId, session);
     
      return sessionId;

    } catch (Exception e) {
      if (runner != null)
        runner.stop();
     
      throw e;
    } finally {
      if (db != null)
        db.release(broker);
    }
  }
View Full Code Here

TOP

Related Classes of org.exist.Database

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.