Package org.exist

Examples of org.exist.Database


  public void responseEvent(CommandContinuation command, Response response) {
    System.out.println("getResponse command = "+command);
  }
 
    private void store(String name,  String data) throws EXistException {
      Database pool = BrokerPool.getInstance();;
     
        DBBroker broker = null;
        TransactionManager transact = null;
        Txn transaction = null;
        try {
            broker = pool.get(pool.getSecurityManager().getSystemSubject());
            assertNotNull(broker);
            transact = pool.getTransactionManager();
            assertNotNull(transact);
            transaction = transact.beginTransaction();
            assertNotNull(transaction);

            Collection root = broker.getOrCreateCollection(transaction, TestConstants.TEST_COLLECTION_URI);
        broker.saveCollection(transaction, root);
            assertNotNull(root);

            root.addBinaryResource(transaction, broker, XmldbURI.create(name), data.getBytes(), "application/xquery");

            transact.commit(transaction);
        } catch (Exception e) {
            if (transact != null)
                transact.abort(transaction);
            e.printStackTrace();
            fail(e.getMessage());
        } finally {
            pool.release(broker);
        }
    }
View Full Code Here


    }
  }
 
  protected void runScript(Subject subject, String scriptURI, String script, QName functionName, List<Expression> args) {
       
    final Database db = getDatabase();
        DBBroker broker = null;
        try {
            broker = db.get(subject);

            final Source source = getQuerySource(broker, scriptURI, script);
            if(source == null) {return;}

            final XQuery xquery = broker.getXQueryService();
            final XQueryContext context = xquery.newContext(AccessContext.XMLDB);

            final CompiledXQuery compiled = xquery.compile(context, source);

//            Sequence result = xquery.execute(compiled, subject.getName());

        final ProcessMonitor pm = db.getProcessMonitor();

            //execute the XQuery
            try {
            final UserDefinedFunction function = context.resolveFunction(functionName, 0);
            if (function != null) {
                  context.getProfiler().traceQueryStart();
                  pm.queryStarted(context.getWatchDog());
                 
                  final FunctionCall call = new FunctionCall(context, function);
                  if (args != null)
                    {call.setArguments(args);}
                  call.analyze(new AnalyzeContextInfo());
              call.eval(NodeSet.EMPTY_SET);
            }
            } catch(final XPathException e) {
              //XXX: log
              e.printStackTrace();
            } finally {
              if (pm != null) {
                context.getProfiler().traceQueryEnd(context);
                pm.queryCompleted(context.getWatchDog());
              }
              compiled.reset();
            context.reset();
            }
           
        } catch (final Exception e) {
          //XXX: log
          e.printStackTrace();
        } finally {
          db.release(broker);
        }
   }
View Full Code Here

    @Test
    public void addManager_calls_assertCanModifyGroup() throws PermissionDeniedException, NoSuchMethodException {
        AbstractRealm mockRealm = EasyMock.createMock(AbstractRealm.class);
        Subject mockSubject = EasyMock.createMock(Subject.class);
        Database mockDatabase = EasyMock.createMock(Database.class);
        Group partialMockGroup = EasyMock.createMockBuilder(AbstractGroup.class)
                .withConstructor(AbstractRealm.class, int.class, String.class, List.class)
                .withArgs(mockRealm, 1, "testGroup", null)
                .addMockedMethod("assertCanModifyGroup", Account.class)
                .addMockedMethod(AbstractGroup.class.getDeclaredMethod("_addManager", Account.class))
                .createNiceMock();

        //expectations
        expect(mockRealm.getDatabase()).andReturn(mockDatabase);
        expect(mockDatabase.getSubject()).andReturn(mockSubject);
        partialMockGroup.assertCanModifyGroup(mockSubject);

        replay(mockRealm, mockDatabase, partialMockGroup);

        //test
View Full Code Here

    @Test
    public void addManagerWithString_calls_assertCanModifyGroup() throws PermissionDeniedException, NoSuchMethodException {
        AbstractRealm mockRealm = EasyMock.createNiceMock(AbstractRealm.class);
        Subject mockSubject = EasyMock.createMock(Subject.class);
        Database mockDatabase = EasyMock.createMock(Database.class);
        AbstractGroup partialMockGroup = EasyMock.createMockBuilder(AbstractGroup.class)
                .withConstructor(AbstractRealm.class, int.class, String.class, List.class)
                .withArgs(mockRealm, 1, "testGroup", null)
                .addMockedMethod("assertCanModifyGroup", Account.class)
                .addMockedMethod(AbstractGroup.class.getDeclaredMethod("_addManager", Account.class))
                .createNiceMock();

        //expectations
        expect(mockRealm.getDatabase()).andReturn(mockDatabase);
        expect(mockDatabase.getSubject()).andReturn(mockSubject);
        partialMockGroup.assertCanModifyGroup(mockSubject);

        replay(mockRealm, mockDatabase, partialMockGroup);

        //test
View Full Code Here

    @Test
    public void removeManager_calls_assertCanModifyGroup() throws PermissionDeniedException, NoSuchMethodException {
        AbstractRealm mockRealm = EasyMock.createMock(AbstractRealm.class);
        Subject mockSubject = EasyMock.createMock(Subject.class);
        Database mockDatabase = EasyMock.createMock(Database.class);
        Group partialMockGroup = EasyMock.createMockBuilder(AbstractGroup.class)
                .withConstructor(AbstractRealm.class, int.class, String.class, List.class)
                .withArgs(mockRealm, 1, "testGroup", null)
                .addMockedMethod("assertCanModifyGroup", Account.class)
                .addMockedMethod(AbstractGroup.class.getDeclaredMethod("_addManager", Account.class))
                .createNiceMock();

        //expectations
        expect(mockRealm.getDatabase()).andReturn(mockDatabase);
        expect(mockDatabase.getSubject()).andReturn(mockSubject);
        partialMockGroup.assertCanModifyGroup(mockSubject);

        replay(mockRealm, mockDatabase, partialMockGroup);

        //test
View Full Code Here

public class AbstractAccountTest {

    @Test
    public void addGroup_calls_assertCanModifyGroup() throws PermissionDeniedException, NoSuchMethodException {
        AbstractRealm mockRealm = EasyMock.createMock(AbstractRealm.class);
        Database mockDatabase = EasyMock.createMock(Database.class);
        Subject mockSubject = EasyMock.createMock(Subject.class);
        Group mockGroup = EasyMock.createMock(Group.class);
        Account partialMockAccount = EasyMock.createMockBuilder(AbstractAccount.class)
                .withConstructor(AbstractRealm.class, int.class, String.class)
                .withArgs(mockRealm, 1, "testAccount")
                .addMockedMethod(AbstractGroup.class.getDeclaredMethod("_addManager", Account.class))
                .createMock();

        //expectations
        expect(mockRealm.getDatabase()).andReturn(mockDatabase);
        expect(mockDatabase.getSubject()).andReturn(mockSubject);
        mockGroup.assertCanModifyGroup(mockSubject);

        replay(mockRealm, mockDatabase, mockGroup, partialMockAccount);

        //test
View Full Code Here

    }

    @Test
    public void remGroup_calls_assertCanModifyGroupForEachGroup() throws PermissionDeniedException, NoSuchMethodException, ConfigurationException {
        AbstractRealm mockRealm = EasyMock.createMock(AbstractRealm.class);
        Database mockDatabase = EasyMock.createMock(Database.class);
        Subject mockSubject = EasyMock.createMock(Subject.class);
        Group mockGroup = EasyMock.createMock(Group.class);
        final String groupName = "testGroup";

        TestableAbstractAccount partialMockAccount = new TestableAbstractAccount(mockRealm, 1, "testGroup");
        List<Group> groups = new ArrayList<Group>();
        groups.add(mockGroup);
        partialMockAccount.setInternalGroups(groups);

        //expectations
        expect(mockRealm.getDatabase()).andReturn(mockDatabase);
        expect(mockDatabase.getSubject()).andReturn(mockSubject);
        expect(mockGroup.getName()).andReturn(groupName);
        mockGroup.assertCanModifyGroup(mockSubject);

        replay(mockRealm, mockDatabase, mockGroup);
View Full Code Here

//        final String mockRealmId = "mock";
        final String testAccountName = "testUser";
        final String testGroupName = "testGroup";

        Database mockDatabase = EasyMock.createMock(Database.class);

        SecurityManagerImpl mockSecurityManager = EasyMock.createMock(SecurityManagerImpl.class,
                new ConstructorArgs(
                    SecurityManagerImpl.class.getConstructor(Database.class),
                    new Object[] {
View Full Code Here

   * @see org.exist.plugin.command.AbstractCommand#process(org.exist.xmldb.XmldbURI, java.lang.String[])
   */
  @Override
  public void process(XmldbURI collectionURI, String[] commandData) throws CommandException {

    Database db = null;
    DBBroker broker = null;
    try {
     
      db = BrokerPool.getInstance();
     
      broker = db.getBroker();
     
      Collection collection = broker.getCollection(collectionURI);
     
      out().println("Collection lock:");
      collection.getLock().debug(out());
     
      if (commandData.length == 0) return;
     
      DocumentImpl doc = collection.getDocument(broker, XmldbURI.create(commandData[0]) );
     
      if (doc == null) {
        err().println("Resource '"+commandData[0]+"' not found.");
        return;
      }
     
      out().println("Locked by "+doc.getUserLock());
      out().println("Lock token: "+doc.getMetadata().getLockToken());
     
      out().println("Update lock: ");
      doc.getUpdateLock().debug(out());

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

        qnames = worker.getDefinedIndexes(qnames);

        final LuceneIndex index = worker.index;

        final Database db = index.getBrokerPool();
       
        DBBroker broker = db.getActiveBroker();
       
        IndexSearcher searcher = null;
        try {
            searcher = index.getSearcher();
            final TaxonomyReader taxonomyReader = index.getTaxonomyReader();

            DocumentHitCollector collector = new DocumentHitCollector(docs, callback, searchParams, taxonomyReader);

            for (QName qname : qnames) {

                String field = LuceneUtil.encodeQName(qname, db.getSymbols());

                Analyzer analyzer = worker.getAnalyzer(null, qname, broker, docs);

                QueryParser parser = new QueryParser(LuceneIndex.LUCENE_VERSION_IN_USE, field, analyzer);
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.