Class ResourcesManagerBlImpl
- All Implemented Interfaces:
ResourcesManagerBl
- Author:
- Slavek Licehammer glory@ics.muni.cz
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidactivateGroupResourceAssignment(PerunSession sess, Group group, Resource resource, boolean async) Try to activate the group-resource status.voidaddResourceSelfServiceGroup(PerunSession sess, Resource resource, Group group) Sets ResourceSelfService role to given group for given resource.voidaddResourceSelfServiceUser(PerunSession sess, Resource resource, User user) Sets ResourceSelfService role to given user for given resource.voidassignAutomaticGroupToResource(PerunSession perunSession, Group sourceGroup, Group groupToAssign, Resource resource) Asynchronously assigns single subgroup to resource as automatically assigned source group's subgroup.voidassignGroupsToResource(PerunSession perunSession, Iterable<Group> groups, Resource resource, boolean async, boolean assignInactive, boolean autoAssignSubgroups) Assign groups to a resource.voidassignGroupToResource(PerunSession sess, Group group, Resource resource, boolean async, boolean assignInactive, boolean autoAssignSubgroups) Assign group to a resource.voidassignGroupToResources(PerunSession perunSession, Group group, List<Resource> resources, boolean async, boolean assignInactive, boolean autoAssignSubgroups) Assign group to the resources.voidassignResourceTagsToResource(PerunSession perunSession, List<ResourceTag> resourceTags, Resource resource) Assign existing ResourceTags on existing Resource.voidassignResourceTagToResource(PerunSession perunSession, ResourceTag resourceTag, Resource resource) Assign existing ResourceTag on existing Resource.voidassignService(PerunSession sess, Resource resource, Service service) Assign service to resource.voidassignServices(PerunSession sess, Resource resource, List<Service> services) Assign services to resource.booleanbanExists(PerunSession sess, int banId) Get true if any band defined by id exists for any user and facility.booleanbanExists(PerunSession sess, int memberId, int resourceId) Get true if any ban for member and resource exists.voidcheckBanExists(PerunSession sess, int banId) Check if ban already exists.voidcheckBanExists(PerunSession sess, int memberId, int resourceId) Check if ban already exists.voidcheckResourceExists(PerunSession sess, Resource resource) voidcheckResourceTagExists(PerunSession sess, ResourceTag resourceTag) voidChecks semantics of all required attributes of given resource and its facility.convertToEnrichedResource(PerunSession sess, Resource resource, List<String> attrNames) Creates enrichedResource from given resource and load attributes with given names.voidcopyAttributes(PerunSession sess, Resource sourceResource, Resource destinationResource) Copy all attributes of the source resource to the destination resource.voidcopyGroups(PerunSession sess, Resource sourceResource, Resource destinationResource) Copy all groups of the source resource to the destination resource.copyResource(PerunSession sess, Resource templateResource, Resource destinationResource, boolean withGroups) Copy "template" settings from user's another existing resource and create new resource with this template.voidcopyServices(PerunSession sess, Resource sourceResource, Resource destinationResource) Copy all services of the source resource to the destination resource.createResource(PerunSession sess, Resource resource, Vo vo, Facility facility) Inserts resource into DB.createResourceTag(PerunSession perunSession, ResourceTag resourceTag, Vo vo) Create new Resource tag.voiddeactivateGroupResourceAssignment(PerunSession sess, Group group, Resource resource) Deactivates the group-resource assignment.voiddeleteAllResources(PerunSession sess, Vo vo) Deletes all resources for the VO.voiddeleteAllResourcesTagsForVo(PerunSession perunSession, Vo vo) Delete all ResourcesTags for specific VO.voiddeleteResource(PerunSession sess, Resource resource) Deletes resource by id.voiddeleteResourceTag(PerunSession perunSession, ResourceTag resourceTag) Delete existing Resource tag.voidfillAndSetRequiredAttributesForGroups(PerunSession sess, List<Service> services, Resource resource) Fill and set group and group-resource attributes required by given services for all groups which are assigned to the given resource.filterOnlyAllowedAttributes(PerunSession sess, EnrichedResource enrichedResource) Filter attributes in given enrichedResources, which are allowed for current principal.getAdminGroups(PerunSession sess, Resource resource) Gets list of all group administrators of the Resource.getAdmins(PerunSession perunSession, Resource resource, boolean onlyDirectAdmins) Gets list of all user administrators of the Resource.Get all expired bans on any resource to now dategetAllowedMembers(PerunSession sess, Resource resource) Returns all members who can access the resource.getAllowedMembersNotExpiredInGroups(PerunSession sess, Resource resource) Returns all members who can access the resource and who are also valid in at least one group associated to the resource.getAllowedResources(PerunSession sess, Facility facility, User user) Return all resources which are under the facility and has member of the user with status other than INVALID.getAllowedResources(PerunSession sess, Member member) Get all resources which have the member access on.getAllowedUsers(PerunSession sess, Resource resource) Get all users, who can assess the resource.getAllowedUsersNotExpiredInGroups(PerunSession sess, Resource resource) Get all users, who can assess the resource and who are not expired in at least one group associated to the resource.getAllResources(PerunSession sess) Get all resources from database.getAllResourcesByResourceTag(PerunSession perunSession, ResourceTag resourceTag) Get all resources in specific Vo (specific by resourceTag.getVoId) for existing resourceTaggetAllResourcesTagsForResource(PerunSession perunSession, Resource resource) Get all resourcesTags for existing ResourcegetAllResourcesTagsForVo(PerunSession perunSession, Vo vo) Get all resourcesTags for existing Vo.getAssignedGroups(PerunSession sess, Resource resource) List all groups associated with the resource.getAssignedGroups(PerunSession sess, Resource resource, Member member) List all groups associated with the resource where Member is a member.getAssignedMembers(PerunSession sess, Resource resource) Returns all members assigned to the resource.getAssignedMembersWithStatus(PerunSession sess, Resource resource) Returns members of groups assigned to resource with status of group-resource assignment.getAssignedResources(PerunSession sess, Group group) List all resources to which the group is assigned.getAssignedResources(PerunSession sess, Member member) Get all resources where the member is assigned.getAssignedResources(PerunSession sess, Member member, Service service) Get all resources where the member and the service are assigned.getAssignedResources(PerunSession sess, User user, Vo vo) Return List of assigned resources to user on the vo.getAssignedResourcesWithStatus(PerunSession sess, Member member) Returns all assigned resources where member is assigned through the groups.getAssignedRichMembers(PerunSession sess, Resource resource) Returns all members assigned to the resource as RichMembers.getAssignedRichResources(PerunSession sess, Group group) List all rich resources associated with the group with facility property filled.getAssignedRichResources(PerunSession sess, Member member) Get all rich resources where the member is assigned with facility property filled.getAssignedRichResources(PerunSession sess, Member member, Service service) Get all rich resources where the service and the member are assigned with facility property filled.getAssignedServices(PerunSession sess, Resource resource) List all services associated with the resource.getAssignedUsers(PerunSession sess, Resource resource) Returns all users assigned to the resource.getAssociatedGroups(PerunSession sess, Resource resource, Member member) Return list of groups associated with the resource with specified member.getAssociatedMembers(PerunSession sess, Resource resource) Returns all members who are associated with the resource.getAssociatedResources(PerunSession sess, Group group) List all resources associated with the group.getAssociatedResources(PerunSession sess, Member member) Returns all resources with which the member is associated through the groups.getAssociatedUsers(PerunSession sess, Resource resource) Returns all users who are associated with the defined resource.getBan(PerunSession sess, int memberId, int resourceId) Get specific resource ban.getBanById(PerunSession sess, int banId) Get Ban for member on resource by it's idgetBansForMember(PerunSession sess, int memberId) Get all resources bans for member.getBansForResource(PerunSession sess, int resourceId) Get all members bans for resourcegetEnrichedBansForResource(PerunSession sess, Resource resource, List<String> attrNames) Get all enriched bans for members on the resource with user and member attributesgetEnrichedBansForUser(PerunSession sess, User user, List<String> attrNames) Get enriched bans for user on all resources where user is assigned with user and member attributesgetEnrichedResourceById(PerunSession sess, int id, List<String> attrNames) Find resource for given id and returns it with given attributes.getEnrichedRichResourcesForFacility(PerunSession sess, Facility facility, List<String> attrNames) Find resources for given facility and attributes for given names.getEnrichedRichResourcesForVo(PerunSession sess, Vo vo, List<String> attrNames) Find resources for given vo and attributes for given names.getFacility(PerunSession sess, Resource resource) Get facility which belongs to the concrete resource.getGroupAssignments(PerunSession sess, Resource resource, List<String> attrNames) Lists all of the assigned groups for the given resource.getGroupResourceAssignments(PerunSession sess, List<GroupResourceStatus> statuses) Lists all group-resource assignments with given statuses.getMailingServiceRichResourcesWithMember(PerunSession sess, Member member) Return all rich resources with mailing service(s) where given member is assigned.Gets the perunBl.getResourceAssignments(PerunSession sess, Group group, List<String> attrNames) Lists all of the resource assignments for the given group.getResourceById(PerunSession sess, int id) Searches for the Resource with specified id.getResourceByName(PerunSession sess, Vo vo, Facility facility, String name) Return resource by its name.getResources(PerunSession sess) Finds all resources.getResources(PerunSession sess, User user, List<Status> memberStatuses, List<MemberGroupStatus> memberGroupStatuses, List<GroupResourceStatus> groupResourceStatuses) Return all resources where user is assigned.getResources(PerunSession sess, Vo vo) Get all VO resources.getResourcesByAttribute(PerunSession sess, Attribute attribute) Returns all resource which have set the attribute with the value.getResourcesByIds(PerunSession sess, List<Integer> ids) Searches for the Resources with specified ids.intGet count of all resources.intgetResourcesCount(PerunSession sess, Vo vo) Get all VO resources count.Gets the resourcesManagerImpl.getResourcesWhereGroupIsAdmin(PerunSession sess, Facility facility, Vo vo, Group authorizedGroup) Return all resources for the facility and the vo where the group is authorized as resource manager.getResourcesWhereUserIsAdmin(PerunSession sess, Facility facility, Vo vo, User authorizedUser) Return all resources for the facility and the vo where user is authorized as resource manager.getResourcesWhereUserIsAdmin(PerunSession sess, User user) Returns list of resources, where the user is an admin.getResourcesWhereUserIsAdmin(PerunSession sess, Vo vo, User authorizedUser) Return all resources for the vo where user is authorized as resource manager.getRichAdmins(PerunSession perunSession, Resource resource, List<String> specificAttributes, boolean allUserAttributes, boolean onlyDirectAdmins) Gets list of all richUser administrators of the Resource.getRichResourceById(PerunSession sess, int id) Searches for the RichResource with specified id.getRichResources(PerunSession sess, Vo vo) Get all VO rich resources with facility property filled.getRichResourcesByIds(PerunSession sess, List<Integer> ids) Searches for the RichResources with specified ids.getVo(PerunSession sess, Resource resource) Get Vo which is tied to specified resource.booleangroupResourceAssignmentExists(PerunSession sess, Resource resource, Group group) Returns true if the group is assigned to the current resource with any status, false otherwise.booleanisGroupAssigned(PerunSession sess, Resource resource, Group group) Returns true if the group is assigned to the current resource with ACTIVE status, false otherwise.booleanisGroupManuallyAssigned(PerunSession sess, Group group, Resource resource) Returns true if the group is assigned to the given resource manually, false otherwise.isResourceLastAssignedServices(PerunSession sess, Resource resource, List<Service> services) Checks whether the resource is the last one on the facility to have the provided services assigned.booleanisUserAllowed(PerunSession sess, User user, Resource resource) Returns true if the user is allowed to the current resource, false otherwise.booleanisUserAssigned(PerunSession sess, User user, Resource resource) Returns true if the user is assigned to the current resource, false otherwise.voidprocessGroupResourceActivationAsync(PerunSession sess, Group group, Resource resource) Asynchronously processes group-resource activation.voidRemove all expired bans on resources to now date.voidremoveAllResourcesTagFromResource(PerunSession perunSession, Resource resource) Remove all existing Resource tags for specific resource.voidremoveAutomaticGroupFromResource(PerunSession sess, Group group, Resource resource, int sourceGroupId) Remove automatically assigned group from resource.voidremoveBan(PerunSession sess, int banId) Remove ban by id from resources bans.voidremoveBan(PerunSession sess, int memberId, int resourceId) Remove ban by member_id and facility_idvoidremoveGroupFromResource(PerunSession sess, Group group, Resource resource) Remove group from a resource.voidremoveGroupFromResources(PerunSession perunSession, Group group, List<Resource> resources) Remove group from resources.voidremoveGroupsFromResource(PerunSession perunSession, List<Group> groups, Resource resource) Remove groups from a resource.voidremoveResourceSelfServiceGroup(PerunSession sess, Resource resource, Group group) Unset ResourceSelfService role to given group for given resource.voidremoveResourceSelfServiceUser(PerunSession sess, Resource resource, User user) Unset ResourceSelfService role to given user for given resource.voidremoveResourceTagFromResource(PerunSession perunSession, ResourceTag resourceTag, Resource resource) Remove specific ResourceTag from existing Resource.voidremoveResourceTagsFromResource(PerunSession perunSession, List<ResourceTag> resourceTags, Resource resource) Remove specific ResourceTags from existing Resource.voidremoveService(PerunSession sess, Resource resource, Service service) Remove service from resource.voidremoveServices(PerunSession sess, Resource resource, List<Service> services, boolean removeTasks, boolean removeTaskResults, boolean removeDestinations) Remove services from resource.setBan(PerunSession sess, BanOnResource banOnResource) Set ban for member on resourcevoidsetPerunBl(PerunBl perunBl) voidupdateAllRequiredAttributesForAllowedMembers(PerunSession sess, Resource resource, List<Service> services) For given resource, finds all allowed members and sets them attributes, (member-resource, member, user-facility and user) that are required by given services.updateBan(PerunSession sess, BanOnResource banOnResource) Update description and validity timestamp of specific ban.updateResource(PerunSession sess, Resource resource) Updates Resource.updateResourceTag(PerunSession perunSession, ResourceTag resourceTag) Update existing Resource tag.
-
Constructor Details
-
ResourcesManagerBlImpl
-
-
Method Details
-
activateGroupResourceAssignment
public void activateGroupResourceAssignment(PerunSession sess, Group group, Resource resource, boolean async) throws WrongReferenceAttributeValueException, GroupResourceMismatchException, WrongAttributeValueException, GroupNotDefinedOnResourceException Description copied from interface:ResourcesManagerBlTry to activate the group-resource status. If the async is set to false, the validation is performed synchronously. The assignment will be either ACTIVE, in case of a successful synchronous call, or it will be PROCESSING in case of an asynchronous call. After the async validation, the state can be either ACTIVE or FAILED.- Specified by:
activateGroupResourceAssignmentin interfaceResourcesManagerBl- Parameters:
sess- sessiongroup- groupresource- resourceasync- if true the validation is performed asynchronously- Throws:
WrongReferenceAttributeValueException- when an attribute value has wrong/illegal semanticsGroupResourceMismatchException- when the given group and resource are not from the same VOWrongAttributeValueException- when an attribute value has wrong/illegal syntaxGroupNotDefinedOnResourceException- when the group-resource assignment doesn't exist
-
addResourceSelfServiceGroup
public void addResourceSelfServiceGroup(PerunSession sess, Resource resource, Group group) throws AlreadyAdminException Description copied from interface:ResourcesManagerBlSets ResourceSelfService role to given group for given resource.- Specified by:
addResourceSelfServiceGroupin interfaceResourcesManagerBl- Parameters:
sess- sessionresource- resourcegroup- group- Throws:
AlreadyAdminException- already has role
-
addResourceSelfServiceUser
public void addResourceSelfServiceUser(PerunSession sess, Resource resource, User user) throws AlreadyAdminException Description copied from interface:ResourcesManagerBlSets ResourceSelfService role to given user for given resource.- Specified by:
addResourceSelfServiceUserin interfaceResourcesManagerBl- Parameters:
sess- sessionresource- resourceuser- user- Throws:
AlreadyAdminException- already has role
-
assignAutomaticGroupToResource
public void assignAutomaticGroupToResource(PerunSession perunSession, Group sourceGroup, Group groupToAssign, Resource resource) throws GroupResourceMismatchException, GroupAlreadyAssignedException, WrongReferenceAttributeValueException, WrongAttributeValueException Description copied from interface:ResourcesManagerBlAsynchronously assigns single subgroup to resource as automatically assigned source group's subgroup. Source group must have existing assignment on resource with autoAssignSubgroups set to true.- Specified by:
assignAutomaticGroupToResourcein interfaceResourcesManagerBl- Parameters:
perunSession- sesssourceGroup- source group (containing groupToAssign in hierarchy as a subgroup)groupToAssign- source group's subgroup to be assigned on resource as by automatic assignmentresource- resource- Throws:
GroupResourceMismatchExceptionGroupAlreadyAssignedExceptionWrongReferenceAttributeValueExceptionWrongAttributeValueException
-
assignGroupToResource
public void assignGroupToResource(PerunSession sess, Group group, Resource resource, boolean async, boolean assignInactive, boolean autoAssignSubgroups) throws WrongAttributeValueException, WrongReferenceAttributeValueException, GroupResourceMismatchException Description copied from interface:ResourcesManagerBlAssign group to a resource. Check if attributes for each member form group are valid. Fill members' attributes with missing value. Provide options for creating inactive or automatic subgroups group-resource assignments.- Specified by:
assignGroupToResourcein interfaceResourcesManagerBl- Parameters:
sess-group-resource-async-assignInactive-autoAssignSubgroups-- Throws:
WrongAttributeValueExceptionWrongReferenceAttributeValueExceptionGroupResourceMismatchException
-
assignGroupToResources
public void assignGroupToResources(PerunSession perunSession, Group group, List<Resource> resources, boolean async, boolean assignInactive, boolean autoAssignSubgroups) throws WrongAttributeValueException, WrongReferenceAttributeValueException, GroupResourceMismatchException Description copied from interface:ResourcesManagerBlAssign group to the resources. Check if attributes for each member from group are valid. Fill members' attributes with missing values. Provide options for creating inactive or automatic subgroups group-resource assignments.If the group is already assigned to some of the resources, the assignment is silently skipped.
- Specified by:
assignGroupToResourcesin interfaceResourcesManagerBl- Parameters:
perunSession-group- the groupresources- list of resourcesasync-assignInactive-autoAssignSubgroups-- Throws:
WrongAttributeValueExceptionWrongReferenceAttributeValueExceptionGroupResourceMismatchException
-
assignGroupsToResource
public void assignGroupsToResource(PerunSession perunSession, Iterable<Group> groups, Resource resource, boolean async, boolean assignInactive, boolean autoAssignSubgroups) throws WrongAttributeValueException, WrongReferenceAttributeValueException, GroupResourceMismatchException Description copied from interface:ResourcesManagerBlAssign groups to a resource. Check if attributes for each member from all groups are valid. Fill members' attributes with missing values. Provide options for creating inactive or automatic subgroups group-resource assignments.Already assigned groups are silently skipped.
- Specified by:
assignGroupsToResourcein interfaceResourcesManagerBl- Parameters:
perunSession-groups- groups to assignresource-async-assignInactive-autoAssignSubgroups-- Throws:
WrongAttributeValueExceptionWrongReferenceAttributeValueExceptionGroupResourceMismatchException
-
assignResourceTagToResource
public void assignResourceTagToResource(PerunSession perunSession, ResourceTag resourceTag, Resource resource) throws ResourceTagAlreadyAssignedException Description copied from interface:ResourcesManagerBlAssign existing ResourceTag on existing Resource.- Specified by:
assignResourceTagToResourcein interfaceResourcesManagerBl- Parameters:
perunSession-resourceTag-resource-- Throws:
ResourceTagAlreadyAssignedException
-
assignResourceTagsToResource
public void assignResourceTagsToResource(PerunSession perunSession, List<ResourceTag> resourceTags, Resource resource) throws ResourceTagAlreadyAssignedException Description copied from interface:ResourcesManagerBlAssign existing ResourceTags on existing Resource.- Specified by:
assignResourceTagsToResourcein interfaceResourcesManagerBl- Parameters:
perunSession-resourceTags-resource-- Throws:
ResourceTagAlreadyAssignedException
-
assignService
public void assignService(PerunSession sess, Resource resource, Service service) throws ServiceAlreadyAssignedException, WrongAttributeValueException, WrongReferenceAttributeValueException Description copied from interface:ResourcesManagerBlAssign service to resource.- Specified by:
assignServicein interfaceResourcesManagerBl- Parameters:
sess-resource-service-- Throws:
ServiceAlreadyAssignedExceptionWrongAttributeValueExceptionWrongReferenceAttributeValueException
-
assignServices
public void assignServices(PerunSession sess, Resource resource, List<Service> services) throws ServiceAlreadyAssignedException, WrongAttributeValueException, WrongReferenceAttributeValueException Description copied from interface:ResourcesManagerBlAssign services to resource.- Specified by:
assignServicesin interfaceResourcesManagerBl- Parameters:
sess- sessionresource- resourceservices- services to be assigned- Throws:
ServiceAlreadyAssignedExceptionWrongAttributeValueExceptionWrongReferenceAttributeValueException
-
banExists
Description copied from interface:ResourcesManagerBlGet true if any ban for member and resource exists.- Specified by:
banExistsin interfaceResourcesManagerBl- Parameters:
sess-memberId- id of memberresourceId- id of resource- Returns:
- true if ban exists
-
banExists
Description copied from interface:ResourcesManagerBlGet true if any band defined by id exists for any user and facility.- Specified by:
banExistsin interfaceResourcesManagerBl- Parameters:
sess-banId- id of ban- Returns:
- true if ban exists
-
checkBanExists
public void checkBanExists(PerunSession sess, int memberId, int resourceId) throws BanNotExistsException Description copied from interface:ResourcesManagerBlCheck if ban already exists.Throw exception if no.
- Specified by:
checkBanExistsin interfaceResourcesManagerBl- Parameters:
sess-memberId- user idresourceId- facility id- Throws:
BanNotExistsException
-
checkBanExists
Description copied from interface:ResourcesManagerBlCheck if ban already exists.Throw exception if no.
- Specified by:
checkBanExistsin interfaceResourcesManagerBl- Parameters:
sess-banId- ban id- Throws:
BanNotExistsException
-
checkResourceExists
public void checkResourceExists(PerunSession sess, Resource resource) throws ResourceNotExistsException - Specified by:
checkResourceExistsin interfaceResourcesManagerBl- Throws:
ResourceNotExistsException
-
checkResourceTagExists
public void checkResourceTagExists(PerunSession sess, ResourceTag resourceTag) throws ResourceTagNotExistsException - Specified by:
checkResourceTagExistsin interfaceResourcesManagerBl- Throws:
ResourceTagNotExistsException
-
checkSemanticsOfFacilityAndResourceRequiredAttributes
public void checkSemanticsOfFacilityAndResourceRequiredAttributes(PerunSession sess, Resource resource) throws WrongReferenceAttributeValueException, WrongAttributeAssignmentException Checks semantics of all required attributes of given resource and its facility.- Parameters:
sess- sessionresource- resource used to get facility and attributes- Throws:
WrongReferenceAttributeValueException- WrongReferenceAttributeValueExceptionWrongAttributeAssignmentException- WrongAttributeAssignmentException
-
convertToEnrichedResource
public EnrichedResource convertToEnrichedResource(PerunSession sess, Resource resource, List<String> attrNames) Description copied from interface:ResourcesManagerBlCreates enrichedResource from given resource and load attributes with given names. If the attrNames are null or emtpy, all resource attributes are added.- Specified by:
convertToEnrichedResourcein interfaceResourcesManagerBl- Parameters:
sess- sessionresource- resourceattrNames- names of attributes to return- Returns:
- EnrichedResource for given resource with desired attributes
-
copyAttributes
public void copyAttributes(PerunSession sess, Resource sourceResource, Resource destinationResource) throws WrongReferenceAttributeValueException Description copied from interface:ResourcesManagerBlCopy all attributes of the source resource to the destination resource. The attributes, that are in the destination resource and aren't in the source resource, are retained. The common attributes are replaced with attributes from the source resource. The virtual attributes are not copied.- Specified by:
copyAttributesin interfaceResourcesManagerBl- Parameters:
sess-sourceResource-destinationResource-- Throws:
WrongReferenceAttributeValueException
-
copyGroups
Description copied from interface:ResourcesManagerBlCopy all groups of the source resource to the destination resource. The groups, that are in the destination resource and aren't in the source resource, are retained. The common groups are replaced with the groups from source resource.- Specified by:
copyGroupsin interfaceResourcesManagerBl- Parameters:
sourceResource-destinationResource-
-
copyResource
public Resource copyResource(PerunSession sess, Resource templateResource, Resource destinationResource, boolean withGroups) throws ResourceExistsException Description copied from interface:ResourcesManagerBlCopy "template" settings from user's another existing resource and create new resource with this template. The settings are attributes, services, tags (if the resources are from the same VO), groups and their members (if the resources are from the same VO and withGroups is true) Template Resource can be from any of user's facilities.- Specified by:
copyResourcein interfaceResourcesManagerBl- Parameters:
sess-templateResource- template resource to copydestinationResource- destination resource containing IDs of destination facility, VO and resource name.withGroups- if set to true and resources ARE from the same VO we also copy all group-resource and member-resource attributes and assign all groups same as on templateResource, if set to true and resources ARE NOT from the same VO InternalErrorException is thrown, if set to false we will NOT copy groups and group related attributes.- Throws:
ResourceExistsException
-
copyServices
public void copyServices(PerunSession sess, Resource sourceResource, Resource destinationResource) throws WrongAttributeValueException, WrongReferenceAttributeValueException Description copied from interface:ResourcesManagerBlCopy all services of the source resource to the destination resource. The services, that are in the destination resource and aren't in the source resource, are retained. The common services are replaced with services from source resource.- Specified by:
copyServicesin interfaceResourcesManagerBl- Parameters:
sourceResource-destinationResource-- Throws:
WrongAttributeValueExceptionWrongReferenceAttributeValueException
-
createResource
public Resource createResource(PerunSession sess, Resource resource, Vo vo, Facility facility) throws ResourceExistsException Description copied from interface:ResourcesManagerBlInserts resource into DB.- Specified by:
createResourcein interfaceResourcesManagerBl- Parameters:
resource- resource to create- Throws:
ResourceExistsException
-
createResourceTag
Description copied from interface:ResourcesManagerBlCreate new Resource tag.- Specified by:
createResourceTagin interfaceResourcesManagerBl- Parameters:
perunSession-resourceTag-vo-- Returns:
- new created resourceTag
-
deactivateGroupResourceAssignment
public void deactivateGroupResourceAssignment(PerunSession sess, Group group, Resource resource) throws GroupNotDefinedOnResourceException, GroupResourceStatusException Description copied from interface:ResourcesManagerBlDeactivates the group-resource assignment. The assignment will become INACTIVE and will not be used to allow users from the given group to the resource.- Specified by:
deactivateGroupResourceAssignmentin interfaceResourcesManagerBl- Parameters:
group- groupresource- resource- Throws:
GroupNotDefinedOnResourceException- when the group-resource assignment doesn't existGroupResourceStatusException- when trying to deactivate an assignment in PROCESSING state
-
deleteAllResources
public void deleteAllResources(PerunSession sess, Vo vo) throws ResourceAlreadyRemovedException, GroupAlreadyRemovedFromResourceException Description copied from interface:ResourcesManagerBlDeletes all resources for the VO.- Specified by:
deleteAllResourcesin interfaceResourcesManagerBl- Parameters:
sess-vo-- Throws:
ResourceAlreadyRemovedException- if there is at least 1 resource not affected by deleting from DBGroupAlreadyRemovedFromResourceException- if there is at least 1 group not affected by deleting from DB
-
deleteAllResourcesTagsForVo
public void deleteAllResourcesTagsForVo(PerunSession perunSession, Vo vo) throws ResourceTagAlreadyAssignedException Description copied from interface:ResourcesManagerBlDelete all ResourcesTags for specific VO.- Specified by:
deleteAllResourcesTagsForVoin interfaceResourcesManagerBl- Parameters:
perunSession-vo-- Throws:
ResourceTagAlreadyAssignedException
-
deleteResource
public void deleteResource(PerunSession sess, Resource resource) throws ResourceAlreadyRemovedException, GroupAlreadyRemovedFromResourceException Description copied from interface:ResourcesManagerBlDeletes resource by id.- Specified by:
deleteResourcein interfaceResourcesManagerBl- Parameters:
sess-resource-- Throws:
ResourceAlreadyRemovedException- if there are 0 rows affected by deleting from DBGroupAlreadyRemovedFromResourceException- if there is at least 1 group not affected by deleting from DB
-
deleteResourceTag
public void deleteResourceTag(PerunSession perunSession, ResourceTag resourceTag) throws ResourceTagAlreadyAssignedException Description copied from interface:ResourcesManagerBlDelete existing Resource tag.- Specified by:
deleteResourceTagin interfaceResourcesManagerBl- Parameters:
perunSession-resourceTag-- Throws:
ResourceTagAlreadyAssignedException
-
fillAndSetRequiredAttributesForGroups
public void fillAndSetRequiredAttributesForGroups(PerunSession sess, List<Service> services, Resource resource) throws GroupResourceMismatchException, WrongAttributeAssignmentException, WrongAttributeValueException, WrongReferenceAttributeValueException Fill and set group and group-resource attributes required by given services for all groups which are assigned to the given resource.- Parameters:
sess- sessionservices- services of which required attributes are setresource- resource- Throws:
GroupResourceMismatchException- GroupResourceMismatchExceptionWrongAttributeAssignmentException- WrongAttributeAssignmentExceptionWrongAttributeValueException- WrongAttributeValueExceptionWrongReferenceAttributeValueException- WrongReferenceAttributeValueException
-
filterOnlyAllowedAttributes
public EnrichedResource filterOnlyAllowedAttributes(PerunSession sess, EnrichedResource enrichedResource) Description copied from interface:ResourcesManagerBlFilter attributes in given enrichedResources, which are allowed for current principal.- Specified by:
filterOnlyAllowedAttributesin interfaceResourcesManagerBl- Parameters:
sess- sessionenrichedResource- resource with attributes to filter- Returns:
- resource with attributes that are allowed for current principal
-
getAdminGroups
Description copied from interface:ResourcesManagerBlGets list of all group administrators of the Resource.- Specified by:
getAdminGroupsin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- list of Groups that are admins in the resource
-
getAdmins
Description copied from interface:ResourcesManagerBlGets list of all user administrators of the Resource. If some group is administrator of the given resource, all VALID members are included in the list.If onlyDirectAdmins is true, return only direct users of the group for supported role.
Supported roles: ResourceAdmin, VOAdmin
- Specified by:
getAdminsin interfaceResourcesManagerBl- Parameters:
perunSession-resource-onlyDirectAdmins- if true, get only direct user administrators (if false, get both direct and indirect)- Returns:
- list of all user administrators of the given resource for supported role
-
getAllExpiredBansOnResources
Description copied from interface:ResourcesManagerBlGet all expired bans on any resource to now date- Specified by:
getAllExpiredBansOnResourcesin interfaceResourcesManagerBl- Parameters:
sess-- Returns:
- list of expired bans for any resource
-
getAllResources
Description copied from interface:ResourcesManagerBlGet all resources from database.- Specified by:
getAllResourcesin interfaceResourcesManagerBl- Parameters:
sess- Perun session- Returns:
- list of all resources
-
getAllResourcesByResourceTag
public List<Resource> getAllResourcesByResourceTag(PerunSession perunSession, ResourceTag resourceTag) Description copied from interface:ResourcesManagerBlGet all resources in specific Vo (specific by resourceTag.getVoId) for existing resourceTag- Specified by:
getAllResourcesByResourceTagin interfaceResourcesManagerBl- Parameters:
perunSession-resourceTag-- Returns:
- list of Resources
-
getAllResourcesTagsForResource
public List<ResourceTag> getAllResourcesTagsForResource(PerunSession perunSession, Resource resource) Description copied from interface:ResourcesManagerBlGet all resourcesTags for existing Resource- Specified by:
getAllResourcesTagsForResourcein interfaceResourcesManagerBl- Parameters:
perunSession-resource-- Returns:
- list of ResourcesTags
-
getAllResourcesTagsForVo
Description copied from interface:ResourcesManagerBlGet all resourcesTags for existing Vo.- Specified by:
getAllResourcesTagsForVoin interfaceResourcesManagerBl- Parameters:
perunSession-vo-- Returns:
- list of all resourcesTags for existing Vo
-
getAllowedMembers
Description copied from interface:ResourcesManagerBlReturns all members who can access the resource.- Specified by:
getAllowedMembersin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- list of members assigned to the resource
-
getAllowedMembersNotExpiredInGroups
Description copied from interface:ResourcesManagerBlReturns all members who can access the resource and who are also valid in at least one group associated to the resource.- Specified by:
getAllowedMembersNotExpiredInGroupsin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- list of members assigned to the resource
-
getAllowedResources
Description copied from interface:ResourcesManagerBlGet all resources which have the member access on.- Specified by:
getAllowedResourcesin interfaceResourcesManagerBl- Parameters:
sess-member-- Returns:
- list of resources which have the member access on
-
getAllowedResources
Description copied from interface:ResourcesManagerBlReturn all resources which are under the facility and has member of the user with status other than INVALID.- Specified by:
getAllowedResourcesin interfaceResourcesManagerBl- Parameters:
sess-facility-user-- Returns:
- list of resources allowed for user (user has there member with status other than INVALID)
-
getAllowedUsers
Description copied from interface:ResourcesManagerBlGet all users, who can assess the resource.- Specified by:
getAllowedUsersin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- list of users
-
getAllowedUsersNotExpiredInGroups
Description copied from interface:ResourcesManagerBlGet all users, who can assess the resource and who are not expired in at least one group associated to the resource.- Specified by:
getAllowedUsersNotExpiredInGroupsin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- list of users
-
getAssignedGroups
Description copied from interface:ResourcesManagerBlList all groups associated with the resource.- Specified by:
getAssignedGroupsin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- list of assigned group
-
getAssignedGroups
Description copied from interface:ResourcesManagerBlList all groups associated with the resource where Member is a member.- Specified by:
getAssignedGroupsin interfaceResourcesManagerBl- Parameters:
sess-resource-member-- Returns:
- list of assigned groups
-
getAssignedMembers
Description copied from interface:ResourcesManagerBlReturns all members assigned to the resource.- Specified by:
getAssignedMembersin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- list of members assigned to the resource
-
getAssignedMembersWithStatus
Description copied from interface:ResourcesManagerBlReturns members of groups assigned to resource with status of group-resource assignment.- Specified by:
getAssignedMembersWithStatusin interfaceResourcesManagerBl- Parameters:
sess- perunSessionresource- resource- Returns:
- list of members of groups assigned to given resource
-
getAssignedResources
Description copied from interface:ResourcesManagerBlList all resources to which the group is assigned.- Specified by:
getAssignedResourcesin interfaceResourcesManagerBl- Parameters:
sess-group-- Returns:
- list of assigned resources
-
getAssignedResources
Description copied from interface:ResourcesManagerBlGet all resources where the member is assigned.- Specified by:
getAssignedResourcesin interfaceResourcesManagerBl- Parameters:
sess-member-- Returns:
-
getAssignedResources
Description copied from interface:ResourcesManagerBlGet all resources where the member and the service are assigned.- Specified by:
getAssignedResourcesin interfaceResourcesManagerBl- Parameters:
sess-member-service-- Returns:
- list of resources
-
getAssignedResources
Description copied from interface:ResourcesManagerBlReturn List of assigned resources to user on the vo. If user is not member of Vo, return empty List;- Specified by:
getAssignedResourcesin interfaceResourcesManagerBl- Parameters:
sess-user-vo-- Returns:
- return list of assigned resources or empty list if user is not member of Vo
-
getAssignedResourcesWithStatus
Description copied from interface:ResourcesManagerBlReturns all assigned resources where member is assigned through the groups.- Specified by:
getAssignedResourcesWithStatusin interfaceResourcesManagerBl- Parameters:
sess- perun sessionmember- member- Returns:
- list of assigned resources
-
getAssignedRichMembers
Description copied from interface:ResourcesManagerBlReturns all members assigned to the resource as RichMembers.- Specified by:
getAssignedRichMembersin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- list of rich members assigned to the resource
-
getAssignedRichResources
Description copied from interface:ResourcesManagerBlList all rich resources associated with the group with facility property filled.- Specified by:
getAssignedRichResourcesin interfaceResourcesManagerBl- Parameters:
sess-group-- Returns:
- list of assigned rich resources
-
getAssignedRichResources
Description copied from interface:ResourcesManagerBlGet all rich resources where the member is assigned with facility property filled.- Specified by:
getAssignedRichResourcesin interfaceResourcesManagerBl- Parameters:
sess-member-- Returns:
- list of resources
-
getAssignedRichResources
public List<RichResource> getAssignedRichResources(PerunSession sess, Member member, Service service) Description copied from interface:ResourcesManagerBlGet all rich resources where the service and the member are assigned with facility property filled.- Specified by:
getAssignedRichResourcesin interfaceResourcesManagerBl- Parameters:
sess-member-service-- Returns:
- list of resources
-
getAssignedServices
Description copied from interface:ResourcesManagerBlList all services associated with the resource.- Specified by:
getAssignedServicesin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- list of assigned resources
-
getAssignedUsers
Description copied from interface:ResourcesManagerBlReturns all users assigned to the resource.- Specified by:
getAssignedUsersin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- list of users assigned to the resource
-
getAssociatedGroups
Description copied from interface:ResourcesManagerBlReturn list of groups associated with the resource with specified member. Does not require ACTIVE group-resource status.- Specified by:
getAssociatedGroupsin interfaceResourcesManagerBl- Parameters:
sess-resource-member-- Returns:
- list of groups, which are associated with the resource with specified member
-
getAssociatedMembers
Description copied from interface:ResourcesManagerBlReturns all members who are associated with the resource. Does not require ACTIVE group-resource status or any specific member status.- Specified by:
getAssociatedMembersin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- list of members
-
getAssociatedResources
Description copied from interface:ResourcesManagerBlList all resources associated with the group. Does not require ACTIVE group-resource status.- Specified by:
getAssociatedResourcesin interfaceResourcesManagerBl- Parameters:
sess-group-- Returns:
- list of associated resources
-
getAssociatedResources
Description copied from interface:ResourcesManagerBlReturns all resources with which the member is associated through the groups. Does not require ACTIVE group-resource status.- Specified by:
getAssociatedResourcesin interfaceResourcesManagerBl- Parameters:
sess-member-- Returns:
- list of resources
-
getAssociatedUsers
Description copied from interface:ResourcesManagerBlReturns all users who are associated with the defined resource. Does not require ACTIVE group-resource status.- Specified by:
getAssociatedUsersin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- list of users
-
getBan
public BanOnResource getBan(PerunSession sess, int memberId, int resourceId) throws BanNotExistsException Description copied from interface:ResourcesManagerBlGet specific resource ban.- Specified by:
getBanin interfaceResourcesManagerBl- Parameters:
sess-memberId- the member idresourceId- the resource id- Returns:
- specific resource ban
- Throws:
BanNotExistsException
-
getBanById
Description copied from interface:ResourcesManagerBlGet Ban for member on resource by it's id- Specified by:
getBanByIdin interfaceResourcesManagerBl- Parameters:
sess-banId- the ban id- Returns:
- resource ban by it's id
- Throws:
BanNotExistsException
-
getBansForMember
Description copied from interface:ResourcesManagerBlGet all resources bans for member.- Specified by:
getBansForMemberin interfaceResourcesManagerBl- Parameters:
sess-memberId- the member id- Returns:
- list of bans for member on any resource
-
getBansForResource
Description copied from interface:ResourcesManagerBlGet all members bans for resource- Specified by:
getBansForResourcein interfaceResourcesManagerBl- Parameters:
sess-resourceId- the resource id- Returns:
- list of all members bans on resource
-
getEnrichedBansForResource
public List<EnrichedBanOnResource> getEnrichedBansForResource(PerunSession sess, Resource resource, List<String> attrNames) throws AttributeNotExistsException Description copied from interface:ResourcesManagerBlGet all enriched bans for members on the resource with user and member attributes- Specified by:
getEnrichedBansForResourcein interfaceResourcesManagerBl- Parameters:
sess-resource- resourceattrNames- names of attributes- Returns:
- list of all enriched bans on resource
- Throws:
AttributeNotExistsException
-
getEnrichedBansForUser
public List<EnrichedBanOnResource> getEnrichedBansForUser(PerunSession sess, User user, List<String> attrNames) throws AttributeNotExistsException Description copied from interface:ResourcesManagerBlGet enriched bans for user on all resources where user is assigned with user and member attributes- Specified by:
getEnrichedBansForUserin interfaceResourcesManagerBl- Parameters:
sess-user- userattrNames- names of attributes- Returns:
- list of all user's bans on resources
- Throws:
AttributeNotExistsException
-
getEnrichedResourceById
public EnrichedResource getEnrichedResourceById(PerunSession sess, int id, List<String> attrNames) throws ResourceNotExistsException Description copied from interface:ResourcesManagerBlFind resource for given id and returns it with given attributes. If attrNames are null or empty, all resource attributes are returned.- Specified by:
getEnrichedResourceByIdin interfaceResourcesManagerBl- Parameters:
sess- sessionid- resource idattrNames- names of attributes to return- Returns:
- resource for given id with desired attributes
- Throws:
ResourceNotExistsException- if there is no resource with given id
-
getEnrichedRichResourcesForFacility
public List<EnrichedResource> getEnrichedRichResourcesForFacility(PerunSession sess, Facility facility, List<String> attrNames) Description copied from interface:ResourcesManagerBlFind resources for given facility and attributes for given names. If the attrNames are empty or null, return all attributes.- Specified by:
getEnrichedRichResourcesForFacilityin interfaceResourcesManagerBl- Parameters:
sess- sessionfacility- facilityattrNames- names of attributes to return- Returns:
- resources with desired attributes
-
getEnrichedRichResourcesForVo
public List<EnrichedResource> getEnrichedRichResourcesForVo(PerunSession sess, Vo vo, List<String> attrNames) Description copied from interface:ResourcesManagerBlFind resources for given vo and attributes for given names. If the attrNames are empty or null, return all attributes.- Specified by:
getEnrichedRichResourcesForVoin interfaceResourcesManagerBl- Parameters:
sess- sessionvo- voattrNames- names of attributes to return- Returns:
- resources with desired attributes
-
getFacility
Description copied from interface:ResourcesManagerBlGet facility which belongs to the concrete resource.- Specified by:
getFacilityin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- facility belonging to the resource
-
getGroupAssignments
public List<AssignedGroup> getGroupAssignments(PerunSession sess, Resource resource, List<String> attrNames) Description copied from interface:ResourcesManagerBlLists all of the assigned groups for the given resource. Also, returns specified attributes for the groups. If attrNames are null, all group attributes are returned.- Specified by:
getGroupAssignmentsin interfaceResourcesManagerBl- Parameters:
sess- sessionresource- resourceattrNames- names of attributes to return- Returns:
- list of assigned groups for given resource with specified attributes
-
getGroupResourceAssignments
public List<GroupResourceAssignment> getGroupResourceAssignments(PerunSession sess, List<GroupResourceStatus> statuses) Description copied from interface:ResourcesManagerBlLists all group-resource assignments with given statuses. If statuses are empty or null, lists assignments with all statuses.- Specified by:
getGroupResourceAssignmentsin interfaceResourcesManagerBl- Parameters:
sess- sessionstatuses- list of allowed statuses- Returns:
- list of group-resource assignments with given statuses
-
getMailingServiceRichResourcesWithMember
public List<RichResource> getMailingServiceRichResourcesWithMember(PerunSession sess, Member member) Description copied from interface:ResourcesManagerBlReturn all rich resources with mailing service(s) where given member is assigned.- Specified by:
getMailingServiceRichResourcesWithMemberin interfaceResourcesManagerBl- Parameters:
sess- sessionmember- member- Returns:
- list of corresponding rich resources
-
getPerunBl
Gets the perunBl.- Returns:
- The perunBl.
-
getResourceAssignments
public List<AssignedResource> getResourceAssignments(PerunSession sess, Group group, List<String> attrNames) Description copied from interface:ResourcesManagerBlLists all of the resource assignments for the given group. Also, returns specified attributes and resource tags for the resources. If attrNames are null or empty, all resource attributes are returned.- Specified by:
getResourceAssignmentsin interfaceResourcesManagerBl- Parameters:
sess- sessiongroup- groupattrNames- names of attributes to return- Returns:
- list of assigned resources for given group with specified attributes and resource tags
-
getResourceById
Description copied from interface:ResourcesManagerBlSearches for the Resource with specified id.- Specified by:
getResourceByIdin interfaceResourcesManagerBl- Parameters:
sess-id-- Returns:
- Resource with specified id
- Throws:
ResourceNotExistsException
-
getResourceByName
public Resource getResourceByName(PerunSession sess, Vo vo, Facility facility, String name) throws ResourceNotExistsException Description copied from interface:ResourcesManagerBlReturn resource by its name.- Specified by:
getResourceByNamein interfaceResourcesManagerBl- Parameters:
sess-vo-facility-name-- Returns:
- resource
- Throws:
ResourceNotExistsException
-
getResources
Description copied from interface:ResourcesManagerBlGet all VO resources.- Specified by:
getResourcesin interfaceResourcesManagerBl- Parameters:
sess-vo-- Returns:
- list of resources
-
getResources
public List<Resource> getResources(PerunSession sess, User user, List<Status> memberStatuses, List<MemberGroupStatus> memberGroupStatuses, List<GroupResourceStatus> groupResourceStatuses) Description copied from interface:ResourcesManagerBlReturn all resources where user is assigned. Checks member's status in VO and group and status of group-resource assignment. If statuses are null or empty all statuses are used.- Specified by:
getResourcesin interfaceResourcesManagerBl- Parameters:
sess-user-memberStatuses- allowed member's statuses in VOmemberGroupStatuses- allowed member's statuses in groupgroupResourceStatuses- allowed statuses of group-resource assignment- Returns:
- List of allowed resources for the user
-
getResources
Description copied from interface:ResourcesManagerBlFinds all resources.- Specified by:
getResourcesin interfaceResourcesManagerBl- Parameters:
sess- session- Returns:
- list of all resources
-
getResourcesByAttribute
public List<Resource> getResourcesByAttribute(PerunSession sess, Attribute attribute) throws WrongAttributeAssignmentException Description copied from interface:ResourcesManagerBlReturns all resource which have set the attribute with the value. Searching only def and opt attributes.- Specified by:
getResourcesByAttributein interfaceResourcesManagerBl- Parameters:
sess-attribute-- Returns:
- Throws:
WrongAttributeAssignmentException
-
getResourcesByIds
Description copied from interface:ResourcesManagerBlSearches for the Resources with specified ids.- Specified by:
getResourcesByIdsin interfaceResourcesManagerBl- Parameters:
sess-ids-- Returns:
- Resources with specified ids
-
getResourcesCount
Description copied from interface:ResourcesManagerBlGet all VO resources count.- Specified by:
getResourcesCountin interfaceResourcesManagerBl- Parameters:
sess-vo-- Returns:
- count fo vo resources
-
getResourcesCount
Description copied from interface:ResourcesManagerBlGet count of all resources.- Specified by:
getResourcesCountin interfaceResourcesManagerBl- Parameters:
sess-- Returns:
- count of all resources
-
getResourcesManagerImpl
Gets the resourcesManagerImpl.- Returns:
- The resourcesManagerImpl.
-
getResourcesWhereGroupIsAdmin
public List<Resource> getResourcesWhereGroupIsAdmin(PerunSession sess, Facility facility, Vo vo, Group authorizedGroup) Description copied from interface:ResourcesManagerBlReturn all resources for the facility and the vo where the group is authorized as resource manager.- Specified by:
getResourcesWhereGroupIsAdminin interfaceResourcesManagerBl- Parameters:
sess-facility- the facility to which resources should be assigned tovo- the vo to which resources should be assigned toauthorizedGroup- group with resource manager role for all those resources- Returns:
- list of defined resources where groups has role resource manager
-
getResourcesWhereUserIsAdmin
Description copied from interface:ResourcesManagerBlReturns list of resources, where the user is an admin. Including resources, where the user is a VALID member of authorized group.- Specified by:
getResourcesWhereUserIsAdminin interfaceResourcesManagerBl- Parameters:
sess-user-- Returns:
- list of resources, where the user is an admin.
-
getResourcesWhereUserIsAdmin
public List<Resource> getResourcesWhereUserIsAdmin(PerunSession sess, Facility facility, Vo vo, User authorizedUser) Description copied from interface:ResourcesManagerBlReturn all resources for the facility and the vo where user is authorized as resource manager. Including resources, where the user is a VALID member of authorized group.- Specified by:
getResourcesWhereUserIsAdminin interfaceResourcesManagerBl- Parameters:
sess-facility- the facility to which resources should be assigned tovo- the vo to which resources should be assigned toauthorizedUser- user with resource manager role for all those resources- Returns:
- list of defined resources where user has role resource manager
-
getResourcesWhereUserIsAdmin
Description copied from interface:ResourcesManagerBlReturn all resources for the vo where user is authorized as resource manager. Including resources, where the user is a VALID member of authorized group.- Specified by:
getResourcesWhereUserIsAdminin interfaceResourcesManagerBl- Parameters:
sess-vo- the vo to which resources should be assigned toauthorizedUser- user with resource manager role for all those resources- Returns:
- list of defined resources where user has role resource manager
-
getRichAdmins
public List<RichUser> getRichAdmins(PerunSession perunSession, Resource resource, List<String> specificAttributes, boolean allUserAttributes, boolean onlyDirectAdmins) throws UserNotExistsException Description copied from interface:ResourcesManagerBlGets list of all richUser administrators of the Resource. If some group is administrator of the given resource, all VALID members are included in the list.Supported roles: ResourceAdmin, VOAdmin
If "onlyDirectAdmins" is "true", return only direct users of the group for supported role with specific attributes. If "allUserAttributes" is "true", do not specify attributes through list and return them all in objects richUser . Ignoring list of specific attributes.
- Specified by:
getRichAdminsin interfaceResourcesManagerBl- Parameters:
perunSession-resource-specificAttributes- list of specified attributes which are needed in object richUserallUserAttributes- if true, get all possible user attributes and ignore list of specificAttributes (if false, get only specific attributes)onlyDirectAdmins- if true, get only direct user administrators (if false, get both direct and indirect)- Returns:
- list of RichUser administrators for the resource and supported role with attributes
- Throws:
UserNotExistsException
-
getRichResourceById
public RichResource getRichResourceById(PerunSession sess, int id) throws ResourceNotExistsException Description copied from interface:ResourcesManagerBlSearches for the RichResource with specified id.- Specified by:
getRichResourceByIdin interfaceResourcesManagerBl- Parameters:
sess-id-- Returns:
- RichResource with specified id
- Throws:
ResourceNotExistsException
-
getRichResources
Description copied from interface:ResourcesManagerBlGet all VO rich resources with facility property filled.- Specified by:
getRichResourcesin interfaceResourcesManagerBl- Parameters:
sess-vo-- Returns:
- list of rich resources
-
getRichResourcesByIds
Description copied from interface:ResourcesManagerBlSearches for the RichResources with specified ids.- Specified by:
getRichResourcesByIdsin interfaceResourcesManagerBl- Parameters:
sess-ids-- Returns:
- RichResources with specified ids
-
getVo
Description copied from interface:ResourcesManagerBlGet Vo which is tied to specified resource.- Specified by:
getVoin interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- vo tied to specified resource
-
groupResourceAssignmentExists
Description copied from interface:ResourcesManagerBlReturns true if the group is assigned to the current resource with any status, false otherwise.- Specified by:
groupResourceAssignmentExistsin interfaceResourcesManagerBl- Parameters:
sess-resource-group-- Returns:
- true if the group is assigned to the current resource.
-
isGroupAssigned
Description copied from interface:ResourcesManagerBlReturns true if the group is assigned to the current resource with ACTIVE status, false otherwise.- Specified by:
isGroupAssignedin interfaceResourcesManagerBl- Parameters:
sess-resource-group-- Returns:
- true if the group is assigned to the current resource with active status.
-
isGroupManuallyAssigned
Description copied from interface:ResourcesManagerBlReturns true if the group is assigned to the given resource manually, false otherwise.- Specified by:
isGroupManuallyAssignedin interfaceResourcesManagerBl- Parameters:
sess-group-resource-- Returns:
- true if the group is assigned to the given resource manually.
-
isResourceLastAssignedServices
public List<Service> isResourceLastAssignedServices(PerunSession sess, Resource resource, List<Service> services) throws FacilityNotExistsException Description copied from interface:ResourcesManagerBlChecks whether the resource is the last one on the facility to have the provided services assigned. Returns the services where this is the case.- Specified by:
isResourceLastAssignedServicesin interfaceResourcesManagerBl- Parameters:
sess-resource-services-- Returns:
- list of services where the provided resource is last to have them assigned on its facility.
- Throws:
FacilityNotExistsException
-
isUserAllowed
Description copied from interface:ResourcesManagerBlReturns true if the user is allowed to the current resource, false otherwise.- Specified by:
isUserAllowedin interfaceResourcesManagerBl- Parameters:
sess-user-resource-- Returns:
- true if the user is allowed to the current resource.
-
isUserAssigned
Description copied from interface:ResourcesManagerBlReturns true if the user is assigned to the current resource, false otherwise.- Specified by:
isUserAssignedin interfaceResourcesManagerBl- Parameters:
sess-user-resource-- Returns:
- true if the user is assigned to the current resource.
-
processGroupResourceActivationAsync
@Async public void processGroupResourceActivationAsync(PerunSession sess, Group group, Resource resource) Description copied from interface:ResourcesManagerBlAsynchronously processes group-resource activation. Sets assignment status of given group and resource to ACTIVE. Check if attributes for each member from group are valid. Fill members' attributes with missing values. In case of error during activation, the group-resource assignment status is set to FAILED.- Specified by:
processGroupResourceActivationAsyncin interfaceResourcesManagerBl- Parameters:
sess- sessiongroup- groupresource- resource
-
removeAllExpiredBansOnResources
Description copied from interface:ResourcesManagerBlRemove all expired bans on resources to now date.Get all expired bans and remove them one by one with auditing process. This method is for purpose of removing expired bans using some cron tool.
- Specified by:
removeAllExpiredBansOnResourcesin interfaceResourcesManagerBl- Parameters:
sess-
-
removeAllResourcesTagFromResource
Description copied from interface:ResourcesManagerBlRemove all existing Resource tags for specific resource.- Specified by:
removeAllResourcesTagFromResourcein interfaceResourcesManagerBl- Parameters:
perunSession-resource-
-
removeAutomaticGroupFromResource
public void removeAutomaticGroupFromResource(PerunSession sess, Group group, Resource resource, int sourceGroupId) throws GroupNotDefinedOnResourceException, GroupAlreadyRemovedFromResourceException Description copied from interface:ResourcesManagerBlRemove automatically assigned group from resource. After removing, check attributes and fix them if it is needed.- Specified by:
removeAutomaticGroupFromResourcein interfaceResourcesManagerBl- Parameters:
sess-group- the groupresource- the resourcesourceGroupId- id of a source group through which was the group automatically assigned- Throws:
GroupNotDefinedOnResourceException- when there is no such automatic group-resource assignmentGroupAlreadyRemovedFromResourceException- when the group was already removed
-
removeBan
Description copied from interface:ResourcesManagerBlRemove ban by id from resources bans.- Specified by:
removeBanin interfaceResourcesManagerBl- Parameters:
sess-banId- id of specific ban- Throws:
BanNotExistsException
-
removeBan
Description copied from interface:ResourcesManagerBlRemove ban by member_id and facility_id- Specified by:
removeBanin interfaceResourcesManagerBl- Parameters:
sess-memberId- the id of memberresourceId- the id of resource- Throws:
BanNotExistsException
-
removeGroupFromResource
public void removeGroupFromResource(PerunSession sess, Group group, Resource resource) throws GroupNotDefinedOnResourceException, GroupAlreadyRemovedFromResourceException Description copied from interface:ResourcesManagerBlRemove group from a resource. After removing, check attributes and fix them if it is needed.- Specified by:
removeGroupFromResourcein interfaceResourcesManagerBl- Parameters:
sess-group-resource-- Throws:
GroupNotDefinedOnResourceException- Group was never assigned to this resourceGroupAlreadyRemovedFromResourceException- there are 0 rows affected by deleting from DB
-
removeGroupFromResources
public void removeGroupFromResources(PerunSession perunSession, Group group, List<Resource> resources) throws GroupNotDefinedOnResourceException, GroupAlreadyRemovedFromResourceException Description copied from interface:ResourcesManagerBlRemove group from resources. After removing, check attributes and fix them if it is needed.- Specified by:
removeGroupFromResourcesin interfaceResourcesManagerBl- Parameters:
perunSession-group- the groupresources- list of resources- Throws:
GroupNotDefinedOnResourceExceptionGroupAlreadyRemovedFromResourceException
-
removeGroupsFromResource
public void removeGroupsFromResource(PerunSession perunSession, List<Group> groups, Resource resource) throws GroupNotDefinedOnResourceException, GroupAlreadyRemovedFromResourceException Description copied from interface:ResourcesManagerBlRemove groups from a resource. After removing, check attributes and fix them if it is needed.- Specified by:
removeGroupsFromResourcein interfaceResourcesManagerBl- Parameters:
perunSession-groups- list of groupsresource-- Throws:
GroupNotDefinedOnResourceExceptionGroupAlreadyRemovedFromResourceException
-
removeResourceSelfServiceGroup
public void removeResourceSelfServiceGroup(PerunSession sess, Resource resource, Group group) throws GroupNotAdminException Description copied from interface:ResourcesManagerBlUnset ResourceSelfService role to given group for given resource.- Specified by:
removeResourceSelfServiceGroupin interfaceResourcesManagerBl- Parameters:
sess- sessionresource- resourcegroup- group- Throws:
GroupNotAdminException- group did not have the role
-
removeResourceSelfServiceUser
public void removeResourceSelfServiceUser(PerunSession sess, Resource resource, User user) throws UserNotAdminException Description copied from interface:ResourcesManagerBlUnset ResourceSelfService role to given user for given resource.- Specified by:
removeResourceSelfServiceUserin interfaceResourcesManagerBl- Parameters:
sess- sessionresource- resourceuser- user- Throws:
UserNotAdminException- user did not have the role
-
removeResourceTagFromResource
public void removeResourceTagFromResource(PerunSession perunSession, ResourceTag resourceTag, Resource resource) throws ResourceTagNotAssignedException Description copied from interface:ResourcesManagerBlRemove specific ResourceTag from existing Resource.- Specified by:
removeResourceTagFromResourcein interfaceResourcesManagerBl- Parameters:
perunSession-resourceTag-resource-- Throws:
ResourceTagNotAssignedException
-
removeResourceTagsFromResource
public void removeResourceTagsFromResource(PerunSession perunSession, List<ResourceTag> resourceTags, Resource resource) throws ResourceTagNotAssignedException Description copied from interface:ResourcesManagerBlRemove specific ResourceTags from existing Resource.- Specified by:
removeResourceTagsFromResourcein interfaceResourcesManagerBl- Parameters:
perunSession-resourceTags-resource-- Throws:
ResourceTagNotAssignedException
-
removeService
public void removeService(PerunSession sess, Resource resource, Service service) throws ServiceNotAssignedException Description copied from interface:ResourcesManagerBlRemove service from resource.- Specified by:
removeServicein interfaceResourcesManagerBl- Parameters:
sess-resource-service-- Throws:
ServiceNotAssignedException
-
removeServices
public void removeServices(PerunSession sess, Resource resource, List<Service> services, boolean removeTasks, boolean removeTaskResults, boolean removeDestinations) throws ServiceNotAssignedException, FacilityNotExistsException Description copied from interface:ResourcesManagerBlRemove services from resource. Optionally also removes tasks, their results or destinations associated with the services on the resource's facility. This only happens for services which are not assigned to other resources on the facility.- Specified by:
removeServicesin interfaceResourcesManagerBl- Parameters:
sess-resource-services-removeTasks-removeTaskResults-removeDestinations-- Throws:
ServiceNotAssignedExceptionFacilityNotExistsException
-
setBan
public BanOnResource setBan(PerunSession sess, BanOnResource banOnResource) throws BanAlreadyExistsException Description copied from interface:ResourcesManagerBlSet ban for member on resource- Specified by:
setBanin interfaceResourcesManagerBl- Parameters:
sess-banOnResource- the ban- Returns:
- ban on resource
- Throws:
BanAlreadyExistsException
-
setPerunBl
-
updateAllRequiredAttributesForAllowedMembers
public void updateAllRequiredAttributesForAllowedMembers(PerunSession sess, Resource resource, List<Service> services) throws MemberResourceMismatchException, WrongAttributeAssignmentException, AttributeNotExistsException, WrongReferenceAttributeValueException, WrongAttributeValueException For given resource, finds all allowed members and sets them attributes, (member-resource, member, user-facility and user) that are required by given services.- Parameters:
sess- sessionresource- resource from where allowed members are takenservices- services, for which the required attributes are set- Throws:
MemberResourceMismatchException- MemberResourceMismatchExceptionWrongAttributeAssignmentException- WrongAttributeAssignmentExceptionAttributeNotExistsException- AttributeNotExistsExceptionWrongReferenceAttributeValueException- WrongReferenceAttributeValueExceptionWrongAttributeValueException- WrongAttributeValueException
-
updateBan
Description copied from interface:ResourcesManagerBlUpdate description and validity timestamp of specific ban.- Specified by:
updateBanin interfaceResourcesManagerBl- Parameters:
sess-banOnResource- ban to be updated- Returns:
- updated ban
-
updateResource
Description copied from interface:ResourcesManagerBlUpdates Resource.- Specified by:
updateResourcein interfaceResourcesManagerBl- Parameters:
sess-resource-- Returns:
- returns updated Resource
- Throws:
ResourceExistsException
-
updateResourceTag
Description copied from interface:ResourcesManagerBlUpdate existing Resource tag.- Specified by:
updateResourceTagin interfaceResourcesManagerBl- Parameters:
perunSession-resourceTag-- Returns:
- updated ResourceTag
-