Class GroupResourceVirtualAttributesModuleAbstract
java.lang.Object
cz.metacentrum.perun.core.implApi.modules.attributes.AttributesModuleAbstract
cz.metacentrum.perun.core.implApi.modules.attributes.GroupResourceAttributesModuleAbstract
cz.metacentrum.perun.core.implApi.modules.attributes.GroupResourceVirtualAttributesModuleAbstract
- All Implemented Interfaces:
AttributesModuleImplApi
,GroupResourceAttributesModuleImplApi
,GroupResourceVirtualAttributesModuleImplApi
,VirtualAttributesModuleImplApi
- Direct Known Subclasses:
urn_perun_group_resource_attribute_def_virt_googleGroupName
,urn_perun_group_resource_attribute_def_virt_unixGID
,urn_perun_group_resource_attribute_def_virt_unixGroupName
public abstract class GroupResourceVirtualAttributesModuleAbstract
extends GroupResourceAttributesModuleAbstract
implements GroupResourceVirtualAttributesModuleImplApi
Abstract class for Resource Group Virtual Attributes modules. Implements methods for modules to perform default
function. In the function that the method in the module does nothing, it is not necessary to implement it, simply
extend this abstract class.
- Author:
- Michal Stava invalid input: '<'stavamichal@gmail.com>
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetAttributeValue
(PerunSessionImpl perunSession, Group group, Resource resource, AttributeDefinition attribute) This method will return computed value.Get list of attributes which this attribute value is computed from.boolean
removeAttributeValue
(PerunSessionImpl perunSession, Group group, Resource resource, AttributeDefinition attribute) Currently do nothing.resolveVirtualAttributeValueChange
(PerunSessionImpl perunSession, AuditEvent message) Gets message from auditer and resolves if it is needed to add another messages to DB about virtualAttribute changes.boolean
setAttributeValue
(PerunSessionImpl perunSession, Group group, Resource resource, Attribute attribute) Method sets attributes' values which are dependent on this virtual attribute.Methods inherited from class cz.metacentrum.perun.core.implApi.modules.attributes.GroupResourceAttributesModuleAbstract
changedAttributeHook, checkAttributeSemantics, checkAttributeSyntax, fillAttribute
Methods inherited from class cz.metacentrum.perun.core.implApi.modules.attributes.AttributesModuleAbstract
getAttributeDefinition, getAuthorizedRoles, getDependencies
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface cz.metacentrum.perun.core.implApi.modules.attributes.AttributesModuleImplApi
getAttributeDefinition, getAuthorizedRoles, getDependencies
Methods inherited from interface cz.metacentrum.perun.core.implApi.modules.attributes.GroupResourceAttributesModuleImplApi
changedAttributeHook, checkAttributeSemantics, checkAttributeSyntax, fillAttribute
-
Constructor Details
-
GroupResourceVirtualAttributesModuleAbstract
public GroupResourceVirtualAttributesModuleAbstract()
-
-
Method Details
-
getAttributeValue
public Attribute getAttributeValue(PerunSessionImpl perunSession, Group group, Resource resource, AttributeDefinition attribute) Description copied from interface:GroupResourceVirtualAttributesModuleImplApi
This method will return computed value.- Specified by:
getAttributeValue
in interfaceGroupResourceVirtualAttributesModuleImplApi
- Parameters:
perunSession
- perun sessiongroup
- group which is needed for computing the valueresource
- resource which is needed for computing the valueattribute
- attribute to operate on- Returns:
-
getStrongDependencies
Description copied from interface:VirtualAttributesModuleImplApi
Get list of attributes which this attribute value is computed from. In other words attributes whose values change can also directly affect value of this attribute.An attribute should strongly depend on all attributes which values are used in method "getAttributeValue" defined in attribute module for virtual attributes.
- Specified by:
getStrongDependencies
in interfaceVirtualAttributesModuleImplApi
- Returns:
- list of attributes this attribute strongly depends on
- See Also:
-
removeAttributeValue
public boolean removeAttributeValue(PerunSessionImpl perunSession, Group group, Resource resource, AttributeDefinition attribute) Description copied from interface:GroupResourceVirtualAttributesModuleImplApi
Currently do nothing.- Specified by:
removeAttributeValue
in interfaceGroupResourceVirtualAttributesModuleImplApi
- Parameters:
perunSession
-group
- group which is needed for computing the valueresource
- resource which is needed for computing the valueattribute
- attribute to operate on- Returns:
true
if attribute was changed (deleted) orfalse
if attribute was not present in a first place
-
resolveVirtualAttributeValueChange
public List<AuditEvent> resolveVirtualAttributeValueChange(PerunSessionImpl perunSession, AuditEvent message) Description copied from interface:AttributesModuleImplApi
Gets message from auditer and resolves if it is needed to add another messages to DB about virtualAttribute changes.- Specified by:
resolveVirtualAttributeValueChange
in interfaceAttributesModuleImplApi
- Overrides:
resolveVirtualAttributeValueChange
in classAttributesModuleAbstract
- Parameters:
perunSession
-message
-- Returns:
- list of additional messages for auditer to log it
-
setAttributeValue
public boolean setAttributeValue(PerunSessionImpl perunSession, Group group, Resource resource, Attribute attribute) throws WrongReferenceAttributeValueException Description copied from interface:GroupResourceVirtualAttributesModuleImplApi
Method sets attributes' values which are dependent on this virtual attribute.- Specified by:
setAttributeValue
in interfaceGroupResourceVirtualAttributesModuleImplApi
- Parameters:
perunSession
-group
- group which is needed for computing the valueresource
- resource which is needed for computing the valueattribute
- attribute to operate on- Returns:
- true if attribute was really changed
- Throws:
WrongReferenceAttributeValueException
-