Package cz.metacentrum.perun.core.impl
Class FacilitiesManagerImpl
java.lang.Object
cz.metacentrum.perun.core.impl.FacilitiesManagerImpl
- All Implemented Interfaces:
FacilitiesManagerImplApi
- Author:
- Slavek Licehammer glory@ics.muni.cz
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final RowMapper<BanOnFacility> protected static final Stringstatic final Stringprotected static final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddHost(PerunSession sess, Host host, Facility facility) Adds host to the Facility.voidaddOwner(PerunSession sess, Facility facility, Owner owner) Deprecated.booleanbanExists(PerunSession sess, int banId) Get true if any band defined by id exists for any user and facility.booleanbanExists(PerunSession sess, int userId, int facilityId) Get true if any ban for user and facility exists.voidcheckFacilityExists(PerunSession sess, Facility facility) Check if facility exists in underlaying data source.voidcheckHostExists(PerunSession sess, Host host) createFacility(PerunSession sess, Facility facility) Inserts facility into DB.voiddeleteFacility(PerunSession sess, Facility facility) Deletes facility by id.voiddeleteFacilityOwners(PerunSession sess, Facility facility) Deletes all facility owners.booleanfacilityExists(PerunSession sess, Facility facility) Check if facility exists in underlaying data source.getAdminGroups(PerunSession sess, Facility facility) Gets list of all group administrators of the Facility.getAdmins(PerunSession sess, Facility facility) Gets list of all user administrators of the Facility.Get all expired bans on any facility to now dategetAllowedFacilities(PerunSession sess, Member member) Return all allowed facilities of the member.getAllowedFacilities(PerunSession sess, User user) Return all allowed facilities of the user.getAllowedMembers(PerunSession sess, Facility facility) Return all members, which are "allowed" on facility through any resource disregarding their possible expired status in a group.getAllowedMembers(PerunSession sess, Facility facility, Service service) Return all members, which are "allowed" on facility through any resource assigned to the given service.getAllowedUsers(PerunSession sess, Facility facility) Return all users, which are "allowed" on facility through any member/resource.getAllowedVos(PerunSession sess, Facility facility) Return all VO which can use this facility.getAssignedResources(PerunSession sess, Facility facility) Returns all resources assigned to the facility.getAssignedResources(PerunSession sess, Facility facility, Vo specificVo, Service specificService) Returns all resources assigned to the facility with optionally VO and Service specified.getAssignedRichResources(PerunSession sess, Facility facility) Returns all rich resources assigned to the facility.getAssignedRichResources(PerunSession sess, Facility facility, Service service) Returns all rich resources assigned to the facility and service.getAssignedUsers(PerunSession sess, Facility facility) Return all users assigned to Facility.getAssignedUsers(PerunSession sess, Facility facility, Service service) Returns list of Users assigned with chosen Facility containing resources where service is assigned.getAssociatedMembers(PerunSession sess, Facility facility, User user) Return all members, which are associated with the facility and belong to given user.getAssociatedUsers(PerunSession sess, Facility facility) Return all users, which are associated with facility through any member/resource.getBan(PerunSession sess, int userId, int faclityId) Get specific facility ban.getBanById(PerunSession sess, int banId) Get Ban for user on facility by it's idgetBansForFacility(PerunSession sess, int facilityId) Get all users bans for facilitygetBansForUser(PerunSession sess, int userId) Get all facilities bans for user.getDirectAdmins(PerunSession sess, Facility facility) Gets list of direct user administrators of the Facility.getFacilities(PerunSession sess) List all facilities.getFacilitiesByAttribute(PerunSession sess, Attribute attribute) Returns all facilities which have set the attribute with the value.getFacilitiesByAttributePartialMatch(PerunSession sess, AttributeDefinition attrDef, String value) Partial search for facilities with the attribute 'attrDef' set to a similar value to 'value'getFacilitiesByDestination(PerunSession sess, String destination) Searches for the Facilities by theirs destination.getFacilitiesByHostName(PerunSession sess, String hostname) Return all facilities where exists host with the specific hostnamegetFacilitiesByIds(PerunSession perunSession, List<Integer> ids) Gets facilities by their ids.intGet count of all facilities.getFacilitiesWhereUserIsAdmin(PerunSession sess, User user) Get all facilities where the user is admin.getFacilityById(PerunSession sess, int id) Searches for the Facility with specified id.getFacilityByName(PerunSession sess, String name) Searches for the Facility by its name.getFacilityForHost(PerunSession sess, Host host) Return facility which has the host.getHostById(PerunSession sess, int id) Get the host by its ID.getHosts(PerunSession sess, Facility facility) List hosts from facility.getHostsByHostname(PerunSession sess, String hostname) Get all hosts with this hostname (from all facilities).intgetHostsCount(PerunSession sess, Facility facility) Count hosts in the facility.getOwnerFacilities(PerunSession sess, Owner owner) Returns list of all facilities owned by the owner.getOwners(PerunSession sess, Facility facility) Deprecated.booleanhostExists(PerunSession sess, Host host) voidremoveAllServiceDenials(int facilityId) Remove all service denials on given facility.voidremoveBan(PerunSession sess, int banId) Remove ban by id from facilities bans.voidremoveBan(PerunSession sess, int userId, int facilityId) Remove ban by user_id and facility_id.voidremoveHost(PerunSession sess, Host host) Remove hosts from the Facility.voidremoveOwner(PerunSession sess, Facility facility, Owner owner) Deprecated.searchForFacilities(PerunSession sess, String searchString, boolean includeIDs) Similarity substring search in all facilities based on name, description and optionally in IDssearchForFacilities(PerunSession sess, String searchString, Set<Integer> facilityIds, boolean includeIDs) Similarity substring search in provided facilities based on name, description and optionally IDsetBan(PerunSession sess, BanOnFacility banOnFacility) Set ban for user on facilityvoidsetOwners(PerunSession sess, Facility facility, List<Owner> owners) Deprecated.updateBan(PerunSession sess, BanOnFacility banOnFacility) Update description and validity timestamp of specific ban.updateFacility(PerunSession sess, Facility facility) Updates facility in DB.
-
Field Details
-
FACILITY_MAPPING_SELECT_QUERY
- See Also:
-
FACILITY_MAPPER
-
HOST_MAPPING_SELECT_QUERY
- See Also:
-
BAN_ON_FACILITY_MAPPING_SELECT_QUERY
- See Also:
-
BAN_ON_FACILITY_MAPPER
-
-
Constructor Details
-
FacilitiesManagerImpl
-
-
Method Details
-
addHost
Description copied from interface:FacilitiesManagerImplApiAdds host to the Facility.- Specified by:
addHostin interfaceFacilitiesManagerImplApi- Parameters:
sess-host-facility- return host
-
addOwner
@Deprecated public void addOwner(PerunSession sess, Facility facility, Owner owner) throws OwnerAlreadyAssignedException Deprecated.Description copied from interface:FacilitiesManagerImplApiAdd owner of the facility- Specified by:
addOwnerin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-owner-- Throws:
OwnerAlreadyAssignedException
-
banExists
Description copied from interface:FacilitiesManagerImplApiGet true if any ban for user and facility exists.- Specified by:
banExistsin interfaceFacilitiesManagerImplApi- Parameters:
sess-userId- id of userfacilityId- id of facility- Returns:
- true if ban exists
-
banExists
Description copied from interface:FacilitiesManagerImplApiGet true if any band defined by id exists for any user and facility.- Specified by:
banExistsin interfaceFacilitiesManagerImplApi- Parameters:
sess-banId- id of ban- Returns:
- true if ban exists
-
checkFacilityExists
public void checkFacilityExists(PerunSession sess, Facility facility) throws FacilityNotExistsException Check if facility exists in underlaying data source.- Specified by:
checkFacilityExistsin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Throws:
FacilityNotExistsException- See Also:
-
checkHostExists
- Specified by:
checkHostExistsin interfaceFacilitiesManagerImplApi- Throws:
HostNotExistsException
-
createFacility
Description copied from interface:FacilitiesManagerImplApiInserts facility into DB.- Specified by:
createFacilityin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-
-
deleteFacility
public void deleteFacility(PerunSession sess, Facility facility) throws FacilityAlreadyRemovedException Description copied from interface:FacilitiesManagerImplApiDeletes facility by id.- Specified by:
deleteFacilityin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Throws:
FacilityAlreadyRemovedException- if there are 0 rows affected by delete from DB
-
deleteFacilityOwners
Description copied from interface:FacilitiesManagerImplApiDeletes all facility owners.- Specified by:
deleteFacilityOwnersin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-
-
facilityExists
Description copied from interface:FacilitiesManagerImplApiCheck if facility exists in underlaying data source.- Specified by:
facilityExistsin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- true if facility exists in underlaying data source, false otherwise
-
getAdminGroups
Description copied from interface:FacilitiesManagerImplApiGets list of all group administrators of the Facility.- Specified by:
getAdminGroupsin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- list of groups who are admins in the facility
-
getAdmins
Description copied from interface:FacilitiesManagerImplApiGets list of all user administrators of the Facility. If some group is administrator of the given group, all VALID members are included in the list.- Specified by:
getAdminsin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- list of users who are admins in the facility
-
getAllExpiredBansOnFacilities
Description copied from interface:FacilitiesManagerImplApiGet all expired bans on any facility to now date- Specified by:
getAllExpiredBansOnFacilitiesin interfaceFacilitiesManagerImplApi- Parameters:
sess-- Returns:
- list of expired bans for any facility
-
getAllowedFacilities
Description copied from interface:FacilitiesManagerImplApiReturn all allowed facilities of the user. It means all facilities, where is assigned through some resource and member is allowed on such resource.- Specified by:
getAllowedFacilitiesin interfaceFacilitiesManagerImplApi- Parameters:
sess-user-- Returns:
- List of allowed facilities of the user.
-
getAllowedFacilities
Description copied from interface:FacilitiesManagerImplApiReturn all allowed facilities of the member. It means all facilities, where is assigned through some resource and member is allowed.- Specified by:
getAllowedFacilitiesin interfaceFacilitiesManagerImplApi- Parameters:
sess-member-- Returns:
- List of allowed facilities of the member.
-
getAllowedMembers
Description copied from interface:FacilitiesManagerImplApiReturn all members, which are "allowed" on facility through any resource disregarding their possible expired status in a group. All members include all group statuses, through which they can be filtered if necessary.- Specified by:
getAllowedMembersin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- list of allowed members
-
getAllowedMembers
Description copied from interface:FacilitiesManagerImplApiReturn all members, which are "allowed" on facility through any resource assigned to the given service. Service settings decide whether expired group and expired VO members are returned as well. Disabled and invalid VO members are always ignored.- Specified by:
getAllowedMembersin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-service-- Returns:
- list of allowed members
-
getAllowedUsers
Description copied from interface:FacilitiesManagerImplApiReturn all users, which are "allowed" on facility through any member/resource.- Specified by:
getAllowedUsersin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- list of allowed users
-
getAllowedVos
Description copied from interface:FacilitiesManagerImplApiReturn all VO which can use this facility. (VO must have the resource which belongs to this facility).- Specified by:
getAllowedVosin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- list of Vos
-
getAssignedResources
Description copied from interface:FacilitiesManagerImplApiReturns all resources assigned to the facility.- Specified by:
getAssignedResourcesin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- list of resources assigned to the facility
-
getAssignedResources
public List<Resource> getAssignedResources(PerunSession sess, Facility facility, Vo specificVo, Service specificService) Description copied from interface:FacilitiesManagerImplApiReturns all resources assigned to the facility with optionally VO and Service specified.- Specified by:
getAssignedResourcesin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-specificVo-specificService-- Returns:
- list of resources assigned to the facility with optionally filter for VO and Service.
-
getAssignedRichResources
Description copied from interface:FacilitiesManagerImplApiReturns all rich resources assigned to the facility.- Specified by:
getAssignedRichResourcesin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- list of rich resources assigned to the facility
-
getAssignedRichResources
public List<RichResource> getAssignedRichResources(PerunSession sess, Facility facility, Service service) Description copied from interface:FacilitiesManagerImplApiReturns all rich resources assigned to the facility and service.- Specified by:
getAssignedRichResourcesin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-service-- Returns:
- list of rich resources assigned to the facility and service
-
getAssignedUsers
Description copied from interface:FacilitiesManagerImplApiReturn all users assigned to Facility.- Specified by:
getAssignedUsersin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- list of user
-
getAssignedUsers
Description copied from interface:FacilitiesManagerImplApiReturns list of Users assigned with chosen Facility containing resources where service is assigned.- Specified by:
getAssignedUsersin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-service-- Returns:
- list of Users
-
getAssociatedMembers
Description copied from interface:FacilitiesManagerImplApiReturn all members, which are associated with the facility and belong to given user. Does not require ACTIVE group-resource status or any specific member status.- Specified by:
getAssociatedMembersin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-user-- Returns:
- list of associated members
-
getAssociatedUsers
Description copied from interface:FacilitiesManagerImplApiReturn all users, which are associated with facility through any member/resource. Does not require ACTIVE group-resource status.- Specified by:
getAssociatedUsersin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- list of allowed users
-
getBan
public BanOnFacility getBan(PerunSession sess, int userId, int faclityId) throws BanNotExistsException Description copied from interface:FacilitiesManagerImplApiGet specific facility ban.- Specified by:
getBanin interfaceFacilitiesManagerImplApi- Parameters:
sess-userId- the user idfaclityId- the facility id- Returns:
- specific facility ban
- Throws:
BanNotExistsException
-
getBanById
Description copied from interface:FacilitiesManagerImplApiGet Ban for user on facility by it's id- Specified by:
getBanByIdin interfaceFacilitiesManagerImplApi- Parameters:
sess-banId- the ban id- Returns:
- facility ban by it's id
- Throws:
BanNotExistsException
-
getBansForFacility
Description copied from interface:FacilitiesManagerImplApiGet all users bans for facility- Specified by:
getBansForFacilityin interfaceFacilitiesManagerImplApi- Parameters:
sess-facilityId- the facility id- Returns:
- list of all users bans on facility
-
getBansForUser
Description copied from interface:FacilitiesManagerImplApiGet all facilities bans for user.- Specified by:
getBansForUserin interfaceFacilitiesManagerImplApi- Parameters:
sess-userId- the user id- Returns:
- list of bans for user on any facility
-
getDirectAdmins
Description copied from interface:FacilitiesManagerImplApiGets list of direct user administrators of the Facility. 'Direct' means, there aren't included users, who are members of group administrators, in the returned list.- Specified by:
getDirectAdminsin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-
-
getFacilities
Description copied from interface:FacilitiesManagerImplApiList all facilities.- Specified by:
getFacilitiesin interfaceFacilitiesManagerImplApi- Parameters:
sess-- Returns:
- List of all Facilities within the Perun
-
getFacilitiesByAttribute
Description copied from interface:FacilitiesManagerImplApiReturns all facilities which have set the attribute with the value. Searching only def and opt attributes.- Specified by:
getFacilitiesByAttributein interfaceFacilitiesManagerImplApi- Parameters:
sess-attribute-- Returns:
-
getFacilitiesByAttributePartialMatch
public List<Facility> getFacilitiesByAttributePartialMatch(PerunSession sess, AttributeDefinition attrDef, String value) Description copied from interface:FacilitiesManagerImplApiPartial search for facilities with the attribute 'attrDef' set to a similar value to 'value'- Specified by:
getFacilitiesByAttributePartialMatchin interfaceFacilitiesManagerImplApi- Parameters:
sess-attrDef-- Returns:
-
getFacilitiesByDestination
public List<Facility> getFacilitiesByDestination(PerunSession sess, String destination) throws FacilityNotExistsException Description copied from interface:FacilitiesManagerImplApiSearches for the Facilities by theirs destination.- Specified by:
getFacilitiesByDestinationin interfaceFacilitiesManagerImplApi- Parameters:
sess-destination-- Returns:
- Facility with specified name
- Throws:
FacilityNotExistsException
-
getFacilitiesByHostName
Description copied from interface:FacilitiesManagerImplApiReturn all facilities where exists host with the specific hostname- Specified by:
getFacilitiesByHostNamein interfaceFacilitiesManagerImplApi- Parameters:
sess-hostname- specific hostname- Returns:
-
getFacilitiesByIds
Description copied from interface:FacilitiesManagerImplApiGets facilities by their ids. Silently skips non-existing facilities.- Specified by:
getFacilitiesByIdsin interfaceFacilitiesManagerImplApi- Parameters:
perunSession-ids-- Returns:
- list of facilities with specified ids
-
getFacilitiesCount
Description copied from interface:FacilitiesManagerImplApiGet count of all facilities.- Specified by:
getFacilitiesCountin interfaceFacilitiesManagerImplApi- Parameters:
sess-- Returns:
- count of all facilities
-
getFacilitiesWhereUserIsAdmin
Description copied from interface:FacilitiesManagerImplApiGet all facilities where the user is admin. Including facilities, where the user is a VALID member of authorized group.- Specified by:
getFacilitiesWhereUserIsAdminin interfaceFacilitiesManagerImplApi- Parameters:
sess-user-- Returns:
- list of facilities
-
getFacilityById
Description copied from interface:FacilitiesManagerImplApiSearches for the Facility with specified id.- Specified by:
getFacilityByIdin interfaceFacilitiesManagerImplApi- Parameters:
sess-id-- Returns:
- Facility with specified id
- Throws:
FacilityNotExistsException
-
getFacilityByName
Description copied from interface:FacilitiesManagerImplApiSearches for the Facility by its name.- Specified by:
getFacilityByNamein interfaceFacilitiesManagerImplApi- Parameters:
sess-name-- Returns:
- Facility with specified name
- Throws:
FacilityNotExistsException
-
getFacilityForHost
Description copied from interface:FacilitiesManagerImplApiReturn facility which has the host.- Specified by:
getFacilityForHostin interfaceFacilitiesManagerImplApi- Parameters:
sess-host-- Returns:
- facility
-
getHostById
Description copied from interface:FacilitiesManagerImplApiGet the host by its ID.- Specified by:
getHostByIdin interfaceFacilitiesManagerImplApi- Parameters:
sess-id-- Returns:
- host
- Throws:
HostNotExistsException
-
getHosts
Description copied from interface:FacilitiesManagerImplApiList hosts from facility.- Specified by:
getHostsin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- hosts Hosts' id from the Cluster
-
getHostsByHostname
Description copied from interface:FacilitiesManagerImplApiGet all hosts with this hostname (from all facilities).- Specified by:
getHostsByHostnamein interfaceFacilitiesManagerImplApi- Parameters:
sess-hostname-- Returns:
- list of hosts by hostname
-
getHostsCount
Description copied from interface:FacilitiesManagerImplApiCount hosts in the facility.- Specified by:
getHostsCountin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- int The number of hosts present in the Cluster.
-
getOwnerFacilities
Description copied from interface:FacilitiesManagerImplApiReturns list of all facilities owned by the owner.- Specified by:
getOwnerFacilitiesin interfaceFacilitiesManagerImplApi- Parameters:
sess-owner-- Returns:
- list of facilities owned by the owner
-
getOwners
Deprecated.Description copied from interface:FacilitiesManagerImplApiReturns owners of the facility.- Specified by:
getOwnersin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Returns:
- owners of specified facility
-
hostExists
- Specified by:
hostExistsin interfaceFacilitiesManagerImplApi
-
removeAllServiceDenials
public void removeAllServiceDenials(int facilityId) Description copied from interface:FacilitiesManagerImplApiRemove all service denials on given facility.WARNING: this method should be removed in the future if the tasks module is merged into core module.
- Specified by:
removeAllServiceDenialsin interfaceFacilitiesManagerImplApi- Parameters:
facilityId- facility id
-
removeBan
Description copied from interface:FacilitiesManagerImplApiRemove ban by id from facilities bans.- Specified by:
removeBanin interfaceFacilitiesManagerImplApi- Parameters:
sess-banId- id of specific ban- Throws:
BanNotExistsException
-
removeBan
Description copied from interface:FacilitiesManagerImplApiRemove ban by user_id and facility_id.- Specified by:
removeBanin interfaceFacilitiesManagerImplApi- Parameters:
sess-userId- the id of userfacilityId- the id of facility- Throws:
BanNotExistsException
-
removeHost
Description copied from interface:FacilitiesManagerImplApiRemove hosts from the Facility.- Specified by:
removeHostin interfaceFacilitiesManagerImplApi- Parameters:
sess-host-- Throws:
HostAlreadyRemovedException- if 0 rows affected by deleting from DB
-
removeOwner
@Deprecated public void removeOwner(PerunSession sess, Facility facility, Owner owner) throws OwnerAlreadyRemovedException Deprecated.Description copied from interface:FacilitiesManagerImplApiRemove owner of the facility- Specified by:
removeOwnerin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-owner-- Throws:
OwnerAlreadyRemovedException
-
searchForFacilities
public List<Facility> searchForFacilities(PerunSession sess, String searchString, boolean includeIDs) Description copied from interface:FacilitiesManagerImplApiSimilarity substring search in all facilities based on name, description and optionally in IDs- Specified by:
searchForFacilitiesin interfaceFacilitiesManagerImplApi- Parameters:
sess- sessionsearchString- string to search forincludeIDs- whether to search in IDs as well, used for PERUNADMINs- Returns:
- list of matched facilities
-
searchForFacilities
public List<Facility> searchForFacilities(PerunSession sess, String searchString, Set<Integer> facilityIds, boolean includeIDs) Description copied from interface:FacilitiesManagerImplApiSimilarity substring search in provided facilities based on name, description and optionally ID- Specified by:
searchForFacilitiesin interfaceFacilitiesManagerImplApi- Parameters:
sess- sessionsearchString- string to search forfacilityIds- IDs of facilities to perform the search inincludeIDs- whether to search in IDs as well, used for PERUNADMINs- Returns:
- list of matched facilities
-
setBan
Description copied from interface:FacilitiesManagerImplApiSet ban for user on facility- Specified by:
setBanin interfaceFacilitiesManagerImplApi- Parameters:
sess-banOnFacility- the ban- Returns:
- ban on facility
-
setOwners
Deprecated.Description copied from interface:FacilitiesManagerImplApiUpdates owners of facility- Specified by:
setOwnersin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-owners-
-
updateBan
Description copied from interface:FacilitiesManagerImplApiUpdate description and validity timestamp of specific ban.- Specified by:
updateBanin interfaceFacilitiesManagerImplApi- Parameters:
sess-banOnFacility- ban to be updated- Returns:
- updated ban
-
updateFacility
Description copied from interface:FacilitiesManagerImplApiUpdates facility in DB.- Specified by:
updateFacilityin interfaceFacilitiesManagerImplApi- Parameters:
sess-facility-- Throws:
FacilityExistsException- if the name of facility has been already used for different Facility
-