Package org.exoplatform.services.jcr.access

Examples of org.exoplatform.services.jcr.access.AccessControlEntry


      checkPermission(PermissionType.CHANGE_PERMISSION);

      List<AccessControlEntry> aces = new ArrayList<AccessControlEntry>();
      for (String perm : PermissionType.ALL)
      {
         AccessControlEntry ace = new AccessControlEntry(SystemIdentity.ANY, perm);
         aces.add(ace);
      }
      AccessControlList acl = new AccessControlList(getACL().getOwner(), aces);

      setACL(acl);
View Full Code Here


      List<AccessControlEntry> listEntry = new ArrayList<AccessControlEntry>();

      for (AccessControlEntry aEntry : nodeData().getACL().getPermissionEntries())
      {
         listEntry.add(new AccessControlEntry(aEntry.getIdentity(), aEntry.getPermission()));
      }

      return new AccessControlList(nodeData().getACL().getOwner(), listEntry);
   }
View Full Code Here

         if (perm == null)
            throw new RepositoryException("Permissions cannot be null");

         for (int j = 0; j < perm.length; j++)
         {
            AccessControlEntry ace = new AccessControlEntry(identity, perm[j]);
            aces.add(ace);
         }
      }
      AccessControlList acl = new AccessControlList(getACL().getOwner(), aces);
      updatePermissions(acl);
View Full Code Here

         {
            do
            {
               StringTokenizer parser =
                  new StringTokenizer(new String(exoPerm.getBytes(COLUMN_VDATA)), AccessControlEntry.DELIMITER);
               naPermissions.add(new AccessControlEntry(parser.nextToken(), parser.nextToken()));
            }
            while (exoPerm.next());

            return naPermissions;
         }
View Full Code Here

         case PropertyType.REFERENCE :
            Identifier identifier = new Identifier(value.getString());
            return new TransientValueData(identifier);
         case ExtendedPropertyType.PERMISSION :
            PermissionValue permValue = (PermissionValue)value;
            AccessControlEntry ace = new AccessControlEntry(permValue.getIdentity(), permValue.getPermission());
            return new TransientValueData(ace);
         default :
            throw new ValueFormatException("ValueFactory.convert() unknown or unconvertable type " + type);
      }
   }
View Full Code Here

      for (String perm : exoPermissions)
      {

         StringTokenizer parser = new StringTokenizer(perm, AccessControlEntry.DELIMITER);
         naPermissions.add(new AccessControlEntry(parser.nextToken(), parser.nextToken()));

      }
      return naPermissions;
   }
View Full Code Here

               new TransientValueData(acl.getOwner()));

         List<ValueData> permsValues = new ArrayList<ValueData>();
         for (int i = 0; i < acl.getPermissionEntries().size(); i++)
         {
            AccessControlEntry entry = acl.getPermissionEntries().get(i);
            permsValues.add(new TransientValueData(entry));
         }
         TransientPropertyData exoPerms =
            TransientPropertyData.createPropertyData(rootNode, Constants.EXO_PERMISSIONS,
               ExtendedPropertyType.PERMISSION, true, permsValues);
View Full Code Here

               new TransientValueData(acl.getOwner()));

         List<ValueData> permsValues = new ArrayList<ValueData>();
         for (int i = 0; i < acl.getPermissionEntries().size(); i++)
         {
            AccessControlEntry entry = acl.getPermissionEntries().get(i);
            permsValues.add(new TransientValueData(entry));
         }
         TransientPropertyData exoPerms =
            TransientPropertyData.createPropertyData(jcrSystem, Constants.EXO_PERMISSIONS,
               ExtendedPropertyType.PERMISSION, true, permsValues);
View Full Code Here

            // here should be added to TransactionalDataManager (i.e. saved
            // immediatelly!
            // nodeData: /exo:audit with UUID = AUDIT_STORAGE_ID
            // its primaryType exo:auditStorage
            List<AccessControlEntry> access = new ArrayList<AccessControlEntry>();
            access.add(new AccessControlEntry(IdentityConstants.ANY, PermissionType.ADD_NODE));

            for (String identity : adminIdentitys)
            {
               access.add(new AccessControlEntry(identity, PermissionType.READ));
            }

            access.add(new AccessControlEntry(IdentityConstants.ANY, PermissionType.REMOVE));

            AccessControlList exoAuditAccessControlList = new AccessControlList(IdentityConstants.SYSTEM, access);

            InternalQName[] mixins = new InternalQName[]{Constants.EXO_PRIVILEGEABLE, Constants.MIX_REFERENCEABLE};

            TransientNodeData exoAuditNode =
               new TransientNodeData(QPath.makeChildPath(Constants.ROOT_PATH, AuditService.EXO_AUDIT),
                  AuditService.AUDIT_STORAGE_ID, -1, AuditService.EXO_AUDITSTORAGE, mixins, 0, Constants.ROOT_UUID,
                  exoAuditAccessControlList);

            // jcr:primaryType
            TransientPropertyData exoAuditPrType =
               TransientPropertyData.createPropertyData(exoAuditNode, Constants.JCR_PRIMARYTYPE, PropertyType.NAME,
                  false, new TransientValueData(exoAuditNode.getPrimaryTypeName()));
            // jcr:uuid
            TransientPropertyData exoAuditUuid =
               TransientPropertyData.createPropertyData(exoAuditNode, Constants.JCR_UUID, PropertyType.STRING, false,
                  new TransientValueData(exoAuditNode.getIdentifier()));
            // jcr:mixinTypes
            List<ValueData> mixValues = new ArrayList<ValueData>();
            mixValues.add(new TransientValueData(Constants.MIX_REFERENCEABLE));
            mixValues.add(new TransientValueData(Constants.EXO_PRIVILEGEABLE));

            TransientPropertyData exoAuditMixinTypes =
               TransientPropertyData.createPropertyData(exoAuditNode, Constants.JCR_MIXINTYPES, PropertyType.NAME,
                  true, mixValues);
            // EXO_PERMISSIONS

            List<ValueData> permsValues = new ArrayList<ValueData>();
            for (int i = 0; i < exoAuditNode.getACL().getPermissionEntries().size(); i++)
            {
               AccessControlEntry entry = exoAuditNode.getACL().getPermissionEntries().get(i);
               permsValues.add(new TransientValueData(entry));
            }
            TransientPropertyData exoAuditPerms =
               TransientPropertyData.createPropertyData(exoAuditNode, Constants.EXO_PERMISSIONS,
                  ExtendedPropertyType.PERMISSION, true, permsValues);
View Full Code Here

      myNode.save();
      marySession.logout();

      //Dynamic session fail read
      List<AccessControlEntry> accessControlEntries = new ArrayList<AccessControlEntry>();
      accessControlEntries.add(new AccessControlEntry("*:/platform/administrators", "READ"));
      SessionProvider dynamicProvider = SessionProvider.createProvider(accessControlEntries);

      Session dynamicSession = null;
      try
      {
         dynamicSession = dynamicProvider.getSession(session.getWorkspace().getName(), repository);
         NodeImpl maryNodeDynamic = (NodeImpl) dynamicSession.getItem(maryNode.getPath());
         fail("Dynamic session with membership '*:/platform/users' should not read node with membership '*:/platform/users'");
      }
      catch (AccessDeniedException e)
      {
         //ok
      }

      //Dynamic session successful read
      accessControlEntries = new ArrayList<AccessControlEntry>();
      accessControlEntries.add(new AccessControlEntry("*:/platform/users", "READ"));
      dynamicProvider = SessionProvider.createProvider(accessControlEntries);

      //check get
      try
      {
View Full Code Here

TOP

Related Classes of org.exoplatform.services.jcr.access.AccessControlEntry

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.