Class Environment
java.lang.Object
org.gcube.informationsystem.resourceregistry.environments.Environment
- Direct Known Subclasses:
HierarchicalEnvironment,SystemEnvironment
- Author:
- Luca Frosini (ISTI - CNR) Base class for any environment. In the current implementation it represents a portion of a graph which in OrientDB is implemented via security.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumstatic enum -
Field Summary
FieldsModifier and TypeFieldDescriptionRoles allowed to operate on the security contextstatic final Stringprotected static final Stringprotected static final Stringprotected final UUIDstatic final Stringstatic final Stringprotected final Map<Environment.PermissionMode,com.orientechnologies.orient.core.db.ODatabasePool> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddElement(com.orientechnologies.orient.core.record.OElement element) voidaddElement(com.orientechnologies.orient.core.record.OElement element, com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument) protected com.orientechnologies.orient.core.metadata.security.ORoleaddExtraRules(com.orientechnologies.orient.core.metadata.security.ORole role, Environment.PermissionMode permissionMode) protected voidallow(com.orientechnologies.orient.core.metadata.security.OSecurity oSecurity, com.orientechnologies.orient.core.record.impl.ODocument oDocument) protected booleanallowed(com.orientechnologies.orient.core.metadata.security.ORole role, com.orientechnologies.orient.core.record.impl.ODocument oDocument) voidcreate()voidcreate(com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument) protected voidcreateRolesAndUsers(com.orientechnologies.orient.core.metadata.security.OSecurity oSecurity) voiddelete()voiddelete(com.orientechnologies.orient.core.db.document.ODatabaseDocument orientGraph) protected voiddeleteRolesAndUsers(com.orientechnologies.orient.core.metadata.security.OSecurity oSecurity) protected voiddeny(com.orientechnologies.orient.core.metadata.security.OSecurity oSecurity, com.orientechnologies.orient.core.record.impl.ODocument oDocument) protected voiddrop(com.orientechnologies.orient.core.metadata.security.OSecurity oSecurity, String name, Environment.SecurityType securityType) com.orientechnologies.orient.core.db.document.ODatabaseDocumentgetDatabaseDocument(Environment.PermissionMode permissionMode) protected com.orientechnologies.orient.core.db.ODatabasePoolgetPool(Environment.PermissionMode permissionMode, boolean recreate) static StringgetRoleOrUserName(Environment.PermissionMode permissionMode, Environment.SecurityType securityType) getSecurityRoleOrUserName(Environment.PermissionMode permissionMode, Environment.SecurityType securityType) protected com.orientechnologies.orient.core.metadata.security.ORolegetSuperRole(com.orientechnologies.orient.core.metadata.security.OSecurity oSecurity, Environment.PermissionMode permissionMode) getUUID()booleanisElementInContext(com.orientechnologies.orient.core.record.OElement element) booleanisUserAllowed(Collection<String> allowedRoles) voidremoveElement(com.orientechnologies.orient.core.record.OElement element) voidremoveElement(com.orientechnologies.orient.core.record.OElement element, com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument) toString()
-
Field Details
-
DEFAULT_WRITER_ROLE
- See Also:
-
DEFAULT_READER_ROLE
- See Also:
-
environmentUUID
-
poolMap
protected final Map<Environment.PermissionMode,com.orientechnologies.orient.core.db.ODatabasePool> poolMap -
allOperationAllowedRoles
Roles allowed to operate on the security context -
allowedRoles
-
INFRASTRUCTURE_MANAGER
- See Also:
-
IS_MANAGER
- See Also:
-
CONTEXT_MANAGER
- See Also:
-
-
Constructor Details
-
Environment
protected Environment(UUID context) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException - Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
-
Method Details
-
getAllOperationsAllowedRoles
-
getAllowedRoles
-
getPool
protected com.orientechnologies.orient.core.db.ODatabasePool getPool(Environment.PermissionMode permissionMode, boolean recreate) -
getUUID
-
getRoleOrUserName
public static String getRoleOrUserName(Environment.PermissionMode permissionMode, Environment.SecurityType securityType) -
getSecurityRoleOrUserName
public String getSecurityRoleOrUserName(Environment.PermissionMode permissionMode, Environment.SecurityType securityType) -
addElement
public void addElement(com.orientechnologies.orient.core.record.OElement element) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException - Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
allow
protected void allow(com.orientechnologies.orient.core.metadata.security.OSecurity oSecurity, com.orientechnologies.orient.core.record.impl.ODocument oDocument) -
isElementInContext
public boolean isElementInContext(com.orientechnologies.orient.core.record.OElement element) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException - Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
addElement
public void addElement(com.orientechnologies.orient.core.record.OElement element, com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument) -
removeElement
public void removeElement(com.orientechnologies.orient.core.record.OElement element) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException - Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
deny
protected void deny(com.orientechnologies.orient.core.metadata.security.OSecurity oSecurity, com.orientechnologies.orient.core.record.impl.ODocument oDocument) -
removeElement
public void removeElement(com.orientechnologies.orient.core.record.OElement element, com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument) -
allowed
protected boolean allowed(com.orientechnologies.orient.core.metadata.security.ORole role, com.orientechnologies.orient.core.record.impl.ODocument oDocument) -
isUserAllowed
-
create
public void create() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
addExtraRules
protected com.orientechnologies.orient.core.metadata.security.ORole addExtraRules(com.orientechnologies.orient.core.metadata.security.ORole role, Environment.PermissionMode permissionMode) -
getSuperRole
protected com.orientechnologies.orient.core.metadata.security.ORole getSuperRole(com.orientechnologies.orient.core.metadata.security.OSecurity oSecurity, Environment.PermissionMode permissionMode) -
createRolesAndUsers
protected void createRolesAndUsers(com.orientechnologies.orient.core.metadata.security.OSecurity oSecurity) -
create
public void create(com.orientechnologies.orient.core.db.document.ODatabaseDocument oDatabaseDocument) -
drop
protected void drop(com.orientechnologies.orient.core.metadata.security.OSecurity oSecurity, String name, Environment.SecurityType securityType) -
delete
public void delete() throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException- Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
deleteRolesAndUsers
protected void deleteRolesAndUsers(com.orientechnologies.orient.core.metadata.security.OSecurity oSecurity) -
delete
public void delete(com.orientechnologies.orient.core.db.document.ODatabaseDocument orientGraph) -
getDatabaseDocument
public com.orientechnologies.orient.core.db.document.ODatabaseDocument getDatabaseDocument(Environment.PermissionMode permissionMode) throws org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException - Throws:
org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException
-
toString
-