Package org.apache.slide.security

Examples of org.apache.slide.security.NodePermission


        String aRevisionNumber=aElement.getAttributeValue("revisionNumber");
        String aSubject=aElement.getAttributeValue("subjectUri");
        String aAction=aElement.getAttributeValue("actionUri");
        boolean aInheritable=new Boolean(aElement.getAttributeValue("inheritable")).booleanValue();
        boolean aNegative=new Boolean(aElement.getAttributeValue("negative")).booleanValue();
        return new NodePermission(aUri,aRevisionNumber,aSubject,aAction,aInheritable,aNegative);

    }
View Full Code Here


                if ("NULL".equals(revision)) {
                    revision = null;
                }
                boolean inheritable = (res.getInt(5) == 1);
                boolean negative = (res.getInt(6) == 1);
                NodePermission permission =
                    new NodePermission(object, revision, subject, action, inheritable, negative);
                permissions.add(permission);
            }
        } catch (SQLException e) {
            throw createException(e, uri.toString());
        } finally {
View Full Code Here

                }
                boolean negative = false;
                if (res.getInt(PERMISSIONS_NEGATIVE) == 1) {
                    negative = true;
                }
                NodePermission permission =
                    new NodePermission(object,revision,subject,
                                       action,inheritable,negative);
                permissionVector.addElement(permission);
            }
           
        } catch (SQLException e) {
View Full Code Here

        boolean currentNegative = false;
        Element currentAceElm = null;
        Element currentGrantDenyElm = null;
        Enumeration permissions = security.enumeratePermissions(sToken, objectNode, true);
        while (permissions.hasMoreElements()) {
            NodePermission perm = (NodePermission)permissions.nextElement();
            if (!perm.getSubjectUri().equals(currentSubjectUri)
                || (perm.isNegative() && !currentNegative || !perm.isNegative() && currentNegative)) {
               
                // save previous ACE
                if (currentAceElm != null) {
                    xmlValue.add(currentAceElm);
                }
               
                // new ACE
                currentAceElm = new Element(E_ACE, DNSP);
               
                // principal
                if (perm.isInvert()) {
                    Element invertElm = new Element(E_INVERT, DNSP);
                    invertElm.addContent(createPrincipalElement(perm.getSubjectUri()));
                    currentAceElm.addContent(invertElm);
                }
                else {
                    currentAceElm.addContent(createPrincipalElement(perm.getSubjectUri()));
                }
               
                // grant/deny
                currentGrantDenyElm = perm.isNegative()
                    ? new Element(E_DENY, DNSP)
                    : new Element(E_GRANT, DNSP);
                currentAceElm.addContent(currentGrantDenyElm);
               
                // inherited
                String inheritedFrom = perm.getInheritedFrom();
                if (inheritedFrom != null && inheritedFrom.length() > 0) {
                    currentAceElm.addContent(createInheritedElement(inheritedFrom));
                }
               
                // protected
                if (perm.isProtected()) {
                    currentAceElm.addContent(new Element(E_PROTECTED, DNSP));
                }
               
                currentSubjectUri = perm.getSubjectUri();
                currentNegative = perm.isNegative();
            }
            currentGrantDenyElm.addContent(createPrivilegeElement(perm.getActionUri()));
        }
       
        // save last ACE
        if (currentAceElm != null) {
            xmlValue.add(currentAceElm);
View Full Code Here

    public void execute(String resourcePath, Element multistatusElm, int depth) throws SlideException, IOException {
        NodeRevisionDescriptors nrds = content.retrieve(slideToken, resourcePath);
        NodeRevisionDescriptor nrd = content.retrieve(slideToken, nrds);
        Enumeration permissions = security.enumeratePermissions(slideToken, resourcePath, true);
        while (permissions != null && permissions.hasMoreElements()) {
            NodePermission p = (NodePermission)permissions.nextElement();
            SubjectNode principalNode = SubjectNode.getSubjectNode(p.getSubjectUri());
            String principalPath = getPrincipalPath(principalNode, nrd);
            if (principalPath != null) {
                multistatusElm.addContent(getResponseElement(slideToken, principalPath, new NodeRevisionNumber(), requestedProperties));
            }
        }
View Full Code Here

     * @param permission Permission we want to create
     * @exception ServiceAccessException Error accessing the Descriptors Store
     */
    public void grantPermission(Uri uri, NodePermission permission)
        throws ServiceAccessException {
        NodePermission tempPermission = permission.cloneObject();
        tempPermission.validate(uri.toString());
        enlist(securityStore);
        try {
            securityStore.grantPermission(uri, tempPermission);
        } catch (ServiceAccessException e) {
            delist(securityStore, false);
View Full Code Here

    public void grantPermission(Uri uri, NodePermission permission) throws ServiceAccessException {
        super.grantPermission(uri, permission);
        if (securityStore.cacheResults()) {
            enlist(this);
            try {
                NodePermission tempPermission = permission.cloneObject();
                Object value = permissionsCache.get(uri.toString());
                if (value == null) {
                    // populate the cache with the existing entries
                    enumeratePermissions(uri);
                    // and check if the cache contains a corresponding entry now
View Full Code Here

                    permissionsVector = (Vector) value;
                } else {
                    permissionsVector = new Vector();
                    Enumeration tempEnum = securityStore.enumeratePermissions(uri);
                    while (tempEnum.hasMoreElements()) {
                        NodePermission tempPermission = (NodePermission) tempEnum.nextElement();
                        tempPermission.validate(uri.toString());
                        permissionsVector.addElement(tempPermission);
                    }
                    permissionsCache.put(uri.toString(), permissionsVector);
                }
                return ((Vector) permissionsVector.clone()).elements();
View Full Code Here

               
                Enumeration sourcePermissions = securityHelper
                    .enumeratePermissions(token, sourceNode);
               
                while (sourcePermissions.hasMoreElements()) {
                    NodePermission permission =
                        (NodePermission) sourcePermissions.nextElement();
                    NodePermission newPermission =
                        new NodePermission(destinationUri,
                                           permission.getSubjectUri(),
                                           permission.getActionUri(),
                                           permission.isInheritable(),
                                           permission.isNegative());
                    securityHelper.grantPermission(token, newPermission);
View Full Code Here

                }
                // remove the associated security
                Enumeration permissions = securityHelper.enumeratePermissions
                    (token, currentObject);
                while (permissions.hasMoreElements()) {
                    NodePermission permission =
                        (NodePermission) permissions.nextElement();
                    securityHelper.revokePermission(token, permission);
                }
               
                // remove all revisions
View Full Code Here

TOP

Related Classes of org.apache.slide.security.NodePermission

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.