Package org.exist.memtree

Examples of org.exist.memtree.MemTreeBuilder


      }
  }
 
  protected Sequence deepCopy(Sequence inSeq) throws XPathException {
    context.pushDocumentContext();
    final MemTreeBuilder builder = context.getDocumentBuilder();
    final DocumentBuilderReceiver receiver = new DocumentBuilderReceiver(builder);
    final Serializer serializer = context.getBroker().getSerializer();
    serializer.setReceiver(receiver);
   
    try {
      final Sequence out = new ValueSequence();
      for (final SequenceIterator i = inSeq.iterate(); i.hasNext(); ) {
        Item item = i.nextItem();
        if (item.getType() == Type.DOCUMENT) {
          if (((NodeValue)item).getImplementationType() == NodeValue.PERSISTENT_NODE) {
            final StoredNode root = (StoredNode) ((NodeProxy)item).getDocument().getDocumentElement();
            item = new NodeProxy(root.getDocument(), root.getNodeId(), root.getInternalAddress());
          } else {
            item = (Item)((NodeValue) item).getOwnerDocument().getDocumentElement();
          }
        }
        if (Type.subTypeOf(item.getType(), Type.NODE)) {
          if (((NodeValue)item).getImplementationType() == NodeValue.PERSISTENT_NODE) {
            final int last = builder.getDocument().getLastNode();
            final NodeProxy p = (NodeProxy) item;
            serializer.toReceiver(p, false, false);
                        if (p.getNodeType() == Node.ATTRIBUTE_NODE)
                            {item = builder.getDocument().getLastAttr();}
                        else
                            {item = builder.getDocument().getNode(last + 1);}
          } else {
            ((org.exist.memtree.NodeImpl)item).deepCopy();
          }
        }
        out.add(item);
View Full Code Here


                {adminPass = args[1].getStringValue();}
        String adminPassAfter = null;
        if (args[2].hasOne())
                {adminPassAfter = args[2].getStringValue();}

        final MemTreeBuilder builder = context.getDocumentBuilder();
        builder.startDocument();
        builder.startElement(RESTORE_ELEMENT, null);
       
        try {
            final org.exist.backup.Restore restore = new org.exist.backup.Restore();
            final RestoreListener listener = new XMLRestoreListener(builder);
            restore.restore(listener, org.exist.security.SecurityManager.DBA_USER, adminPass, adminPassAfter, new File(dirOrFile), XmldbURI.EMBEDDED_SERVER_URI.toString());
        } catch (final Exception e) {
            throw new XPathException(this, "restore failed with exception: " + e.getMessage(), e);
        }
       
        builder.endElement();
        builder.endDocument();
        return (NodeValue) builder.getDocument().getDocumentElement();
    }
View Full Code Here

 
  private Sequence getRunningXQueries() throws XPathException
  {
    Sequence    xmlResponse     = null;
       
        final MemTreeBuilder builder = context.getDocumentBuilder();
       
        builder.startDocument();
        builder.startElement( new QName( "xqueries", NAMESPACE_URI, PREFIX ), null );
       
        //Add all the running xqueries
        final XQueryWatchDog watchdogs[] = getContext().getBroker().getBrokerPool().getProcessMonitor().getRunningXQueries();
        for (int i = 0; i < watchdogs.length; i++) {
          final XQueryContext   context   = watchdogs[i].getContext();
         
          getRunningXQuery( builder, context, watchdogs[i] );
        }
       
        builder.endElement();
       
        xmlResponse = (NodeValue)builder.getDocument().getDocumentElement();
       
        return( xmlResponse );
  }
View Full Code Here

            return BooleanValue.valueOf(context.getBroker().getBrokerPool().getPerformanceStats().isEnabled());
           
        } else {
          logger.info("Entering the " + SystemModule.PREFIX + ":trace XQuery function");
            context.getProfiler().reset();
            final MemTreeBuilder builder = context.getDocumentBuilder();

            builder.startDocument();
            final BrokerPool brokerPool = context.getBroker().getBrokerPool();
            brokerPool.getPerformanceStats().toXML(builder);
            builder.endDocument();
          logger.info("Exiting " + SystemModule.PREFIX + ":" + getName().getLocalName());
            return (NodeValue)builder.getDocument().getDocumentElement();
        }
      logger.info("Exiting " + SystemModule.PREFIX + ":" + getName().getLocalName());
        return Sequence.EMPTY_SEQUENCE;
    }
View Full Code Here

            final Sequence result = new ValueSequence();
            result.add(new BooleanValue(report.isValid()));
            return result;

        } else  /* isCalledAs("validate-report") || isCalledAs("jing-report") */{
            final MemTreeBuilder builder = context.getDocumentBuilder();
            final NodeImpl result = Shared.writeReport(report, builder);
            return result;

        }
    }
View Full Code Here

       
        final FunctionReference func = (FunctionReference) args[1].itemAt(0);
       
        context.pushDocumentContext();
       
        final MemTreeBuilder builder = context.getDocumentBuilder();
        final ValueSequence result = new ValueSequence();
        for (final SequenceIterator i = args[0].iterate(); i.hasNext(); ) {
            final NodeValue v = (NodeValue) i.nextItem();
            if (v.getImplementationType() == NodeValue.IN_MEMORY_NODE) {
                result.add(v);
View Full Code Here

            final XPathException xPathException = new XPathException( this, "Permission denied, calling user '" + context.getSubject().getName() + "' must be a DBA to get the list of scheduled jobs" );
          logger.error("Invalid user " + SystemModule.PREFIX + ":get-scheduled-jobs", xPathException);
      throw xPathException;
        }

        final MemTreeBuilder builder = context.getDocumentBuilder();

        builder.startDocument();
        builder.startElement( new QName( "jobs", NAMESPACE_URI, PREFIX ), null );

        final BrokerPool brokerPool = context.getBroker().getBrokerPool();
        logger.trace("brokerPool = " + brokerPool.toString());
       
        if( brokerPool != null ) {
            final org.exist.scheduler.Scheduler existScheduler = brokerPool.getScheduler();
           
            if( existScheduler != null ) {
                final List<ScheduledJobInfo> scheduledJobsInfo = existScheduler.getScheduledJobs();
                final ScheduledJobInfo[] executingJobsInfo = existScheduler.getExecutingJobs();
               
                if( scheduledJobsInfo != null ) {
                    for(final ScheduledJobInfo scheduledJobInfo : scheduledJobsInfo) {
                      addRow(scheduledJobInfo, builder, false );
                    }
                }
                if( executingJobsInfo != null ) {
                    for( int i = 0; i < executingJobsInfo.length; i++ ) {
                      addRow( executingJobsInfo[i], builder, true );
                    }
                }
            }
        }

        builder.endElement();
        builder.endDocument();

        return( (NodeValue)builder.getDocument().getDocumentElement() );
    }
View Full Code Here

            final Sequence result = new ValueSequence();
            result.add(new BooleanValue(report.isValid()));
            return result;

        } else /* isCalledAs("jaxv-report") */ {
            final MemTreeBuilder builder = context.getDocumentBuilder();
            final NodeImpl result = Shared.writeReport(report, builder);
            return result;
        }
    }
View Full Code Here

        }
       
        if (report.isValid())
          {return (DocumentImpl) adapter.getDocument();}
        else {
          final MemTreeBuilder builder = context.getDocumentBuilder();
            final NodeImpl result = Shared.writeReport(report, builder);
        throw new XPathException(this, ErrorCodes.EXXQDY0002, report.toString(), result);
        }
    }
View Full Code Here

           
            return result;
           
           
        } else if (isCalledAs("show-grammar-cache")){
            final MemTreeBuilder builder = context.getDocumentBuilder();
            final NodeImpl result = writeReport(grammarpool, builder);
            return result;
           
        } else if (isCalledAs("pre-parse-grammar")){
           
View Full Code Here

TOP

Related Classes of org.exist.memtree.MemTreeBuilder

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.