org.pentaho.platform.plugin.services.metadata
Class MetadataAclHolder

java.lang.Object
  extended by org.pentaho.platform.plugin.services.metadata.MetadataAclHolder
All Implemented Interfaces:
IAclHolder

public class MetadataAclHolder
extends Object
implements IAclHolder


Field Summary
 
Fields inherited from interface org.pentaho.platform.api.engine.IAclHolder
ACCESS_TYPE_ADMIN, ACCESS_TYPE_DELETE, ACCESS_TYPE_READ, ACCESS_TYPE_UPDATE, ACCESS_TYPE_WRITE
 
Constructor Summary
MetadataAclHolder(org.pentaho.metadata.model.concept.IConcept aclHolder)
           
 
Method Summary
 List<IPentahoAclEntry> getAccessControls()
          Returns the ACLs on the existing object.
 List<IPentahoAclEntry> getEffectiveAccessControls()
          Examines whether the existing object has ACLs.
 void resetAccessControls(List<IPentahoAclEntry> acls)
          Replaces existing access controls with a new list of access controls.
 void setAccessControls(List<IPentahoAclEntry> acls)
          Sets the access controls on this specific object.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MetadataAclHolder

public MetadataAclHolder(org.pentaho.metadata.model.concept.IConcept aclHolder)
Method Detail

getAccessControls

public List<IPentahoAclEntry> getAccessControls()
Description copied from interface: IAclHolder
Returns the ACLs on the existing object. Never returns null. If you need to get the effective access controls, you may need to call getEffectiveAccessControls() which will chain up from this object if necessary to find the ACLs that control this object.

Specified by:
getAccessControls in interface IAclHolder
Returns:
List of ACLs for this object only.

getEffectiveAccessControls

public List<IPentahoAclEntry> getEffectiveAccessControls()
Description copied from interface: IAclHolder
Examines whether the existing object has ACLs. If not, it will return the parent's ACLs. All the way up to the top if necessary. This method should never return null.

Specified by:
getEffectiveAccessControls in interface IAclHolder
Returns:
List containing all the AclEntry objects

resetAccessControls

public void resetAccessControls(List<IPentahoAclEntry> acls)
Description copied from interface: IAclHolder
Replaces existing access controls with a new list of access controls. This method should be used in favor of setting the access controls with setAccessControls when the object is being persisted.

Specified by:
resetAccessControls in interface IAclHolder

setAccessControls

public void setAccessControls(List<IPentahoAclEntry> acls)
Description copied from interface: IAclHolder
Sets the access controls on this specific object. Currently doesn't check whether the acls are the same as those assigned to the parent.

Specified by:
setAccessControls in interface IAclHolder