Class UserIdentityResource
java.lang.Object
org.odpi.openmetadata.accessservices.communityprofile.server.spring.UserIdentityResource
@RestController
@RequestMapping("/servers/{serverName}/open-metadata/access-services/community-profile/users/{userId}")
public class UserIdentityResource
extends Object
UserIdentityResource provides the APIs for maintaining user identities and their relationships with profiles.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionaddIdentityToProfile
(String serverName, String userId, String userIdentityGUID, String profileGUID, RelationshipRequestBody requestBody) Link a user identity to a profile.createUserIdentity
(String serverName, String userId, ReferenceableRequestBody requestBody) Create a UserIdentity.deleteUserIdentity
(String serverName, String userId, String userIdentityGUID, ExternalSourceRequestBody requestBody) Remove a user identity object.findUserIdentities
(String serverName, String userId, int startFrom, int pageSize, SearchStringRequestBody requestBody) Retrieve the list of user identity metadata elements that contain the search string.getUserIdentitiesByName
(String serverName, String userId, int startFrom, int pageSize, NameRequestBody requestBody) Retrieve the list of user identity metadata elements with a matching qualified name.getUserIdentityByGUID
(String serverName, String userId, String userIdentityGUID) Retrieve the userIdentity metadata element with the supplied unique identifier.removeIdentityFromProfile
(String serverName, String userId, String userIdentityGUID, String profileGUID, ExternalSourceRequestBody requestBody) Remove a user identity object.updateIdentityProfile
(String serverName, String userId, String userIdentityGUID, String profileGUID, boolean isMergeUpdate, RelationshipRequestBody requestBody) Link a user identity to a profile.updateUserIdentity
(String serverName, String userId, String userIdentityGUID, boolean isMergeUpdate, ReferenceableRequestBody requestBody) Update a UserIdentity.
-
Constructor Details
-
UserIdentityResource
public UserIdentityResource()
-
-
Method Details
-
createUserIdentity
@PostMapping(path="/user-identities") public GUIDResponse createUserIdentity(@PathVariable String serverName, @PathVariable String userId, @RequestBody ReferenceableRequestBody requestBody) Create a UserIdentity. This is not connected to a profile.- Parameters:
serverName
- name of target serveruserId
- the name of the calling user.requestBody
- userId for the new userIdentity.- Returns:
- guid or InvalidParameterException - one of the parameters is invalid or PropertyServerException - there is a problem retrieving information from the property server(s) or UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-
updateUserIdentity
@PostMapping(path="/user-identities/{userIdentityGUID}") public VoidResponse updateUserIdentity(@PathVariable String serverName, @PathVariable String userId, @PathVariable String userIdentityGUID, @RequestParam boolean isMergeUpdate, @RequestBody ReferenceableRequestBody requestBody) Update a UserIdentity.- Parameters:
serverName
- name of target serveruserId
- the name of the calling useruserIdentityGUID
- unique identifier of the UserIdentityisMergeUpdate
- should the supplied properties be overlaid on the existing properties (true) or replace them (false)requestBody
- updated properties for the new userIdentity- Returns:
- void or InvalidParameterException one of the parameters is invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
-
deleteUserIdentity
@PostMapping(path="/user-identities/{userIdentityGUID}/delete") public VoidResponse deleteUserIdentity(@PathVariable String serverName, @PathVariable String userId, @PathVariable String userIdentityGUID, @RequestBody(required=false) ExternalSourceRequestBody requestBody) Remove a user identity object. This will fail if a profile would be left without an associated user identity.- Parameters:
serverName
- name of target serveruserId
- the name of the calling user.userIdentityGUID
- unique identifier of the UserIdentityrequestBody
- external source identifiers- Returns:
- void or InvalidParameterException - one of the parameters is invalid or PropertyServerException - there is a problem retrieving information from the property server(s) or UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-
addIdentityToProfile
@PostMapping(path="/user-identities/{userIdentityGUID}/profiles/{profileGUID}/link") public VoidResponse addIdentityToProfile(@PathVariable String serverName, @PathVariable String userId, @PathVariable String userIdentityGUID, @PathVariable String profileGUID, @RequestBody(required=false) RelationshipRequestBody requestBody) Link a user identity to a profile. This will fail if the user identity is already connected to a profile.- Parameters:
serverName
- name of target serveruserId
- the name of the calling user.userIdentityGUID
- unique identifier of the UserIdentityprofileGUID
- the profile to add the identity to.requestBody
- external source identifiers- Returns:
- void or InvalidParameterException - one of the parameters is invalid or PropertyServerException - there is a problem retrieving information from the property server(s) or UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-
updateIdentityProfile
@PostMapping(path="/user-identities/{userIdentityGUID}/profiles/{profileGUID}/link/update") public VoidResponse updateIdentityProfile(@PathVariable String serverName, @PathVariable String userId, @PathVariable String userIdentityGUID, @PathVariable String profileGUID, @RequestParam boolean isMergeUpdate, @RequestBody(required=false) RelationshipRequestBody requestBody) Link a user identity to a profile. This will fail if the user identity is already connected to a profile.- Parameters:
serverName
- name of target serveruserId
- the name of the calling user.userIdentityGUID
- unique identifier of the UserIdentityprofileGUID
- the profile to add the identity to.isMergeUpdate
- should the supplied properties be overlaid on the existing properties (true) or replace them (false)requestBody
- external source identifiers- Returns:
- void or InvalidParameterException - one of the parameters is invalid or PropertyServerException - there is a problem retrieving information from the property server(s) or UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-
removeIdentityFromProfile
@PostMapping(path="/user-identities/{userIdentityGUID}/profiles/{profileGUID}/unlink") public VoidResponse removeIdentityFromProfile(@PathVariable String serverName, @PathVariable String userId, @PathVariable String userIdentityGUID, @PathVariable String profileGUID, @RequestBody(required=false) ExternalSourceRequestBody requestBody) Remove a user identity object. This will fail if the profile would be left without an associated user identity.- Parameters:
serverName
- name of target serveruserId
- the name of the calling user.userIdentityGUID
- unique identifier of the UserIdentityprofileGUID
- the profile to add the identity to.requestBody
- external source identifiers- Returns:
- void or InvalidParameterException - one of the parameters is invalid or PropertyServerException - there is a problem retrieving information from the property server(s) or UserNotAuthorizedException - the requesting user is not authorized to issue this request.
-
findUserIdentities
@PostMapping(path="/user-identities/by-search-string") public UserIdentitiesResponse findUserIdentities(@PathVariable String serverName, @PathVariable String userId, @RequestParam int startFrom, @RequestParam int pageSize, @RequestBody SearchStringRequestBody requestBody) Retrieve the list of user identity metadata elements that contain the search string. The search string is treated as a regular expression.- Parameters:
serverName
- name of target serveruserId
- calling userstartFrom
- paging start pointpageSize
- maximum results that can be returnedrequestBody
- string to find in the properties- Returns:
- list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
-
getUserIdentitiesByName
@PostMapping(path="/user-identities/by-name") public UserIdentitiesResponse getUserIdentitiesByName(@PathVariable String serverName, @PathVariable String userId, @RequestParam int startFrom, @RequestParam int pageSize, @RequestBody NameRequestBody requestBody) Retrieve the list of user identity metadata elements with a matching qualified name. There are no wildcards supported on this request.- Parameters:
serverName
- name of target serveruserId
- calling userstartFrom
- paging start pointpageSize
- maximum results that can be returnedrequestBody
- name to search for- Returns:
- list of matching metadata elements InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
-
getUserIdentityByGUID
@GetMapping(path="/user-identities/{userIdentityGUID}") public UserIdentityResponse getUserIdentityByGUID(@PathVariable String serverName, @PathVariable String userId, @PathVariable String userIdentityGUID) Retrieve the userIdentity metadata element with the supplied unique identifier.- Parameters:
serverName
- name of target serveruserId
- calling useruserIdentityGUID
- unique identifier of the requested metadata element- Returns:
- matching metadata element or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
-