Package org.apache.slide.content

Examples of org.apache.slide.content.NodeRevisionDescriptor


            NodeRevisionDescriptors revisionDescriptors =
                content.retrieve(slideToken, resourcePath);
           
            NodeRevisionNumber revisionNumber =
                revisionDescriptors.getLatestRevision();
            NodeRevisionDescriptor revisionDescriptor = null;
            if (revisionNumber != null) {
                try {
                    revisionDescriptor = content.retrieve
                        (slideToken, revisionDescriptors);
                } catch (RevisionDescriptorNotFoundException e) {
                }
            }
           
            if (revisionDescriptor == null) {
                revisionDescriptor = new NodeRevisionDescriptor(0);
            }
           
            ResourceKind resourceKind = AbstractResourceKind.determineResourceKind(token, resourcePath, revisionDescriptor);
           
            // check preconditions
            ViolatedPrecondition violatedPrecondition = getPreconditionViolation(revisionDescriptors, revisionDescriptor, resourceKind);
            if (violatedPrecondition != null) {
                throw new PreconditionViolationException(violatedPrecondition, resourcePath);
            }
           
            // Changed for DeltaV --start--
            boolean mustCheckIn = false;
            if( Configuration.useVersionControl() &&
                   (resourceKind instanceof CheckedInVersionControlled) &&
               versioningHelper.mustCheckoutAutoVersionedVCR(revisionDescriptors, revisionDescriptor) ) {
               
                vHelp.checkout(revisionDescriptors, revisionDescriptor, false, false, true );
                mustCheckIn = versioningHelper.mustCheckinAutoVersionedVCR(slideToken, revisionDescriptors, revisionDescriptor);
            }
           
            // Modifying the properties
           
            Iterator propertyIterator = null;
           
            propertyIterator = propertiesToSet.iterator();
            PropPatchProperty currentProperty = null;
            while (propertyIterator.hasNext()) {
               
                currentProperty = (PropPatchProperty)propertyIterator.next();
                if (checkPropertyModification(currentProperty, revisionDescriptor, resourceKind)) {
                    NodeProperty newProperty =
                        new NodeProperty(currentProperty.getName(),
                                         currentProperty.getValue(),
                                         currentProperty.getNamespace());
                    revisionDescriptor.setProperty(newProperty);
                   
                }
                else {
                    allOperationsExcecuted = false;
                }
            }
           
            propertyIterator = propertiesToRemove.iterator();
            while (propertyIterator.hasNext()) {
               
                currentProperty = (PropPatchProperty)propertyIterator.next();
                if (checkPropertyModification(currentProperty, revisionDescriptor, resourceKind)) {
                    revisionDescriptor.removeProperty(currentProperty.getName(),
                                                      currentProperty.getNamespace());
                }
                else {
                    allOperationsExcecuted = false;
                }
View Full Code Here


       
        ResourceKind resourceKind = null;
        try {
            NodeRevisionDescriptors revisionDescriptors =
                content.retrieve(slideToken, resourceUri);
            NodeRevisionDescriptor revisionDescriptor =
                content.retrieve(slideToken, revisionDescriptors);
            resourceKind = AbstractResourceKind.determineResourceKind(token, revisionDescriptors, revisionDescriptor);
            resourceExists = true;
            if( WebdavUtils.isCollection(revisionDescriptor) )
                resourceIsCollection = true;
View Full Code Here

       
        String labelHeader = WebdavUtils.fixTomcatHeader(requestHeaders.getLabel(), "UTF-8");
        String labeledResourceUri = getResourceUri(resourcePath, labelHeader);
        NodeRevisionDescriptors revisionDescriptors =
            content.retrieve( slideToken, labeledResourceUri);
        NodeRevisionDescriptor revisionDescriptor =
            content.retrieve( slideToken, revisionDescriptors);
        ResourceKind resourceKind = AbstractResourceKind.determineResourceKind(token, revisionDescriptors, revisionDescriptor);
        if (resourceKind instanceof Version) {
           
            if (DeltavConstants.E_REMOVE.equals(operation)) {
                PropertyHelper.removeElementFromProperty(revisionDescriptor,
                                                         P_LABEL_NAME_SET,
                                                         E_LABEL_NAME,
                                                         label);
                content.store(slideToken, revisionDescriptors.getUri(), revisionDescriptor, null);
            }
           
            if (DeltavConstants.E_SET.equals(operation)) {
                try {
                    NodeRevisionDescriptor alreadyLabeledDescriptor =
                        versioningHelper.retrieveLabeledRevision(revisionDescriptors.getUri(),
                                                                 label);
                    PropertyHelper.removeElementFromProperty(alreadyLabeledDescriptor,
                                                             P_LABEL_NAME_SET,
                                                             E_LABEL_NAME,
View Full Code Here

        SlideToken stoken = readonlySlideToken();
       
        ViolatedPrecondition violatedPrecondition = null;
        NodeRevisionDescriptors revisionDescriptors =
            content.retrieve( stoken, resourcePath);
        NodeRevisionDescriptor revisionDescriptor =
            content.retrieve( stoken, revisionDescriptors);
        ResourceKind resourceKind = AbstractResourceKind.determineResourceKind(token, revisionDescriptors, revisionDescriptor);
       
        // check <DAV:must-be-checked-in>
        if ( (resourceKind instanceof VersionControlled) &&
View Full Code Here

       
        String labeledResourceUri = versioningHelper.getLabeledResourceUri(resourcePath,
                                                                           label);
        NodeRevisionDescriptors revisionDescriptors =
            content.retrieve( slideToken,labeledResourceUri);
        NodeRevisionDescriptor revisionDescriptor =
            content.retrieve( slideToken, revisionDescriptors);
        ResourceKind resourceKind = AbstractResourceKind.determineResourceKind(token, revisionDescriptors, revisionDescriptor);
        if (resourceKind instanceof VersionControlled) {
            labeledResourceUri = versioningHelper.getUriOfAssociatedVR(resourcePath);
        }
View Full Code Here

        // the other part of the fix is a HACK in ExtendedStore
        synchronized (HISTORY_LOCK) {
            NodeRevisionDescriptors hpathNrds =
                content.retrieve( sToken, hpath );
           
            NodeRevisionDescriptor hpathNrd =
                content.retrieve( sToken, hpathNrds );
           
            NodeProperty nextHnProp = hpathNrd.getProperty(I_NEXT_HISTORY_NAME,
                                                           NamespaceCache.SLIDE_URI);
            if (nextHnProp == null) {
                // convert to slide namespace if this property is still
                // in DAV: namespace
                nextHnProp = hpathNrd.getProperty( I_NEXT_HISTORY_NAME );
                if (nextHnProp != null) {
                    hpathNrd.removeProperty(nextHnProp);
                    nextHnProp = new NodeProperty(I_NEXT_HISTORY_NAME,
                                                  nextHnProp.getValue(),
                                                  NamespaceCache.SLIDE_URI);
                    nextHnProp.setKind( NodeProperty.Kind.PROTECTED );
                    hpathNrd.setProperty( nextHnProp );
                }
            }
            if( nextHnProp == null || nextHnProp.getValue() == null ) {
                nextHnProp =
                    new NodeProperty(I_NEXT_HISTORY_NAME,
                                     I_INITIAL_HISTORY_NAME,
                                     NamespaceCache.SLIDE_URI);
                nextHnProp.setKind( NodeProperty.Kind.PROTECTED );
                hpathNrd.setProperty( nextHnProp );
            }
           
            String nextHnStr = (String)nextHnProp.getValue();
            result = new UriHandler( hpath+"/"+nextHnStr );
           
            long nextHnLong = Long.parseLong( nextHnStr );
            nextHnProp = new NodeProperty(I_NEXT_HISTORY_NAME,
                                          String.valueOf(nextHnLong + 1),
                                          NamespaceCache.SLIDE_URI );
            hpathNrd.setProperty( nextHnProp );
           
            content.store( sToken, hpath, hpathNrd, null ); //revisionContent = null
        }
                     
        return result;
View Full Code Here

    }
   
    private boolean isSameResourcetype() throws ServiceAccessException {
        boolean sameResourceType = false;
        try {
            NodeRevisionDescriptor sourceNrd =
                content.retrieve( slideToken, content.retrieve(slideToken, sourceUri) );
            NodeRevisionDescriptor destinationNrd =
                content.retrieve( slideToken, content.retrieve(slideToken, destinationUri) );
            sameResourceType =
                sourceNrd.getResourceType().equals(destinationNrd.getResourceType());
        }
        catch (ServiceAccessException e) {
            throw e;
        }
        catch (SlideException e) {
View Full Code Here

     * @param      destinationRevisionDescriptors  the NodeRevisionDescriptors of
     *                                             the resource.
     */
    private void restoreBackupRevisionDescriptor(String destinationUri, NodeRevisionDescriptors destinationNrds) throws RevisionNotFoundException, ServiceAccessException, RevisionAlreadyExistException, ObjectNotFoundException, LinkedObjectNotFoundException, ObjectLockedException, AccessDeniedException, RevisionDescriptorNotFoundException, BranchNotFoundException, NodeNotVersionedException {
       
        NodeRevisionDescriptor backupNrd =
            (NodeRevisionDescriptor)destinationBackupDescriptorMap.get(destinationUri);
        if (backupNrd != null) {
            try {
                content.retrieve( slideToken,
                                 destinationNrds,
View Full Code Here

        }
        if (isRootOfCopy && Configuration.useBinding(token.getUri(slideToken, destinationUri).getStore())) {
            // collect the parent bindings of the destination node
            Map parentBindings = new HashMap();
            try {
                NodeRevisionDescriptor destinationNrd =
                    content.retrieve( slideToken, content.retrieve(slideToken, destinationUri) );
                XMLValue v = new XMLValue( (String)destinationNrd.getProperty( P_PARENT_SET ).getValue() );
                Iterator i = v.iterator();
                while (i.hasNext()) {
                    Namespace dnsp = Namespace.getNamespace(S_DAV);
                    Element parentElm = (Element)i.next();
                    String segment = parentElm.getChild(E_SEGMENT, dnsp).getTextTrim();
View Full Code Here

    public void afterCopy(String sourceUri, String destinationUri, boolean isRootOfCopy) throws SlideException {
       
        if(Configuration.useVersionControl()) {
           
            NodeRevisionDescriptors destinationNrds = content.retrieve( slideToken, destinationUri);
            NodeRevisionDescriptor destinationNrd = content.retrieve( slideToken, destinationNrds);
           
            // restore backup descriptor
            restoreBackupRevisionDescriptor(destinationUri, destinationNrds);
           
            NodeRevisionDescriptor existingNrd =
                (NodeRevisionDescriptor)destinationDescriptorMap.get(destinationUri);
            if (existingNrd != null) {
               
                // there has been an existing destination, so restore live properties
                restoreLiveProperties(destinationUri, destinationNrd, existingNrd);
View Full Code Here

TOP

Related Classes of org.apache.slide.content.NodeRevisionDescriptor

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.