Class SubjectAreaResource
- java.lang.Object
-
- org.odpi.openmetadata.accessservices.governanceprogram.server.spring.SubjectAreaResource
-
@RestController @RequestMapping("/servers/{serverName}/open-metadata/access-services/governance-program/users/{userId}") public class SubjectAreaResource extends ObjectThe SubjectAreasResource provides a Spring based server-side REST API that supports the SubjectAreasInterface. It delegates each request to the SubjectAreaRESTServices.
-
-
Constructor Summary
Constructors Constructor Description SubjectAreaResource()Default constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description GUIDResponsecreateSubjectArea(String serverName, String userId, SubjectAreaProperties requestBody)Create a definition of a subject area.VoidResponsedeleteSubjectArea(String serverName, String userId, String subjectAreaGUID, NullRequestBody requestBody)Remove the definition of a subject area.SubjectAreaResponsegetSubjectAreaByGUID(String serverName, String userId, String subjectAreaGUID)Return information about a specific subject area.SubjectAreaResponsegetSubjectAreaByName(String serverName, String userId, String qualifiedName)Return information about a specific subject area.SubjectAreaDefinitionResponsegetSubjectAreaDefinitionByGUID(String serverName, String userId, String subjectAreaGUID)Return information about a specific subject area and its linked governance definitions.SubjectAreaListResponsegetSubjectAreasForDomain(String serverName, String userId, int domainIdentifier, int startFrom, int pageSize)Return information about the defined subject areas.VoidResponselinkSubjectAreasInHierarchy(String serverName, String userId, String parentSubjectAreaGUID, String childSubjectAreaGUID, NullRequestBody requestBody)Link two related subject areas together as part of a hierarchy.VoidResponselinkSubjectAreaToGovernanceDefinition(String serverName, String userId, String subjectAreaGUID, String definitionGUID, NullRequestBody requestBody)Link a subject area to a governance definition that controls how the assets in the subject area should be governed.VoidResponseunlinkSubjectAreaFromGovernanceDefinition(String serverName, String userId, String subjectAreaGUID, String definitionGUID, NullRequestBody requestBody)Remove the link between a subject area and a governance definition.VoidResponseunlinkSubjectAreasInHierarchy(String serverName, String userId, String parentSubjectAreaGUID, String childSubjectAreaGUID, NullRequestBody requestBody)Remove the link between two subject areas in the subject area hierarchy.VoidResponseupdateSubjectArea(String serverName, String userId, String subjectAreaGUID, boolean isMergeUpdate, SubjectAreaProperties requestBody)Update the definition of a subject area.
-
-
-
Method Detail
-
createSubjectArea
@PostMapping(path="/subject-areas") public GUIDResponse createSubjectArea(@PathVariable String serverName, @PathVariable String userId, @RequestBody SubjectAreaProperties requestBody)
Create a definition of a subject area.- Parameters:
serverName- name of the server instance to connect touserId- calling userrequestBody- other properties for a subject area- Returns:
- unique identifier of the new subject area or InvalidParameterException full path or userId is null or PropertyServerException problem accessing property server or UserNotAuthorizedException security access problem
-
updateSubjectArea
@PostMapping(path="/subject-areas/{subjectAreaGUID}") public VoidResponse updateSubjectArea(@PathVariable String serverName, @PathVariable String userId, @PathVariable String subjectAreaGUID, @RequestParam boolean isMergeUpdate, @RequestBody SubjectAreaProperties requestBody)Update the definition of a subject area.- Parameters:
serverName- name of the server instance to connect touserId- calling usersubjectAreaGUID- unique identifier of subject areaisMergeUpdate- are unspecified properties unchanged (true) or replaced with null?requestBody- properties to change- Returns:
- void or InvalidParameterException guid, qualifiedName or userId is null; qualifiedName is not unique; guid is not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
deleteSubjectArea
@PostMapping(path="/subject-areas/{subjectAreaGUID}/delete") public VoidResponse deleteSubjectArea(@PathVariable String serverName, @PathVariable String userId, @PathVariable String subjectAreaGUID, @RequestBody(required=false) NullRequestBody requestBody)Remove the definition of a subject area.- Parameters:
serverName- name of the server instance to connect touserId- calling usersubjectAreaGUID- unique identifier of subject arearequestBody- null requestBody- Returns:
- void or InvalidParameterException guid or userId is null; guid is not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
linkSubjectAreasInHierarchy
@PostMapping(path="/subject-areas/{parentSubjectAreaGUID}/nested-subject area/{childSubjectAreaGUID}/link") public VoidResponse linkSubjectAreasInHierarchy(@PathVariable String serverName, @PathVariable String userId, @PathVariable String parentSubjectAreaGUID, @PathVariable String childSubjectAreaGUID, @RequestBody(required=false) NullRequestBody requestBody)Link two related subject areas together as part of a hierarchy. A subject area can only have one parent but many child subject areas.- Parameters:
serverName- name of the server instance to connect touserId- calling userparentSubjectAreaGUID- unique identifier of the parent subject areachildSubjectAreaGUID- unique identifier of the child subject arearequestBody- null requestBody- Returns:
- void or InvalidParameterException one of the guids is null or not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
unlinkSubjectAreasInHierarchy
@PostMapping(path="/subject-areas/{parentSubjectAreaGUID}/nested-subject area/{childSubjectAreaGUID}/unlink") public VoidResponse unlinkSubjectAreasInHierarchy(@PathVariable String serverName, @PathVariable String userId, @PathVariable String parentSubjectAreaGUID, @PathVariable String childSubjectAreaGUID, @RequestBody(required=false) NullRequestBody requestBody)Remove the link between two subject areas in the subject area hierarchy.- Parameters:
serverName- name of the server instance to connect touserId- calling userparentSubjectAreaGUID- unique identifier of the parent subject areachildSubjectAreaGUID- unique identifier of the child subject arearequestBody- null requestBody- Returns:
- void or InvalidParameterException one of the guids is null or not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
linkSubjectAreaToGovernanceDefinition
@PostMapping(path="/subject-areas/{subjectAreaGUID}/governed-by/{definitionGUID}/link") public VoidResponse linkSubjectAreaToGovernanceDefinition(@PathVariable String serverName, @PathVariable String userId, @PathVariable String subjectAreaGUID, @PathVariable String definitionGUID, @RequestBody(required=false) NullRequestBody requestBody)Link a subject area to a governance definition that controls how the assets in the subject area should be governed.- Parameters:
serverName- name of the server instance to connect touserId- calling usersubjectAreaGUID- unique identifier of the subject areadefinitionGUID- unique identifier of the governance definitionrequestBody- null requestBody- Returns:
- void or InvalidParameterException one of the guids is null or not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
unlinkSubjectAreaFromGovernanceDefinition
@PostMapping(path="/subject-areas/{subjectAreaGUID}/governed-by/{definitionGUID}/unlink") public VoidResponse unlinkSubjectAreaFromGovernanceDefinition(@PathVariable String serverName, @PathVariable String userId, @PathVariable String subjectAreaGUID, @PathVariable String definitionGUID, @RequestBody(required=false) NullRequestBody requestBody)Remove the link between a subject area and a governance definition.- Parameters:
serverName- name of the server instance to connect touserId- calling usersubjectAreaGUID- unique identifier of the subject areadefinitionGUID- unique identifier of the governance definitionrequestBody- null requestBody- Returns:
- void or InvalidParameterException one of the guids is null or not known PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
getSubjectAreaByGUID
@GetMapping(path="/subject-areas/{subjectAreaGUID}") public SubjectAreaResponse getSubjectAreaByGUID(@PathVariable String serverName, @PathVariable String userId, @PathVariable String subjectAreaGUID)Return information about a specific subject area.- Parameters:
serverName- name of the server instance to connect touserId- calling usersubjectAreaGUID- unique identifier for the subject area- Returns:
- properties of the subject area or InvalidParameterException subjectAreaGUID or userId is null PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
getSubjectAreaByName
@GetMapping(path="/subject-areas/name/{qualifiedName}") public SubjectAreaResponse getSubjectAreaByName(@PathVariable String serverName, @PathVariable String userId, @PathVariable String qualifiedName)Return information about a specific subject area.- Parameters:
serverName- name of the server instance to connect touserId- calling userqualifiedName- unique name for the subject area- Returns:
- properties of the subject area or InvalidParameterException qualifiedName or userId is null PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
getSubjectAreasForDomain
@GetMapping(path="/subject-areas/for-domain") public SubjectAreaListResponse getSubjectAreasForDomain(@PathVariable String serverName, @PathVariable String userId, @RequestParam int domainIdentifier, @RequestParam int startFrom, @RequestParam int pageSize)
Return information about the defined subject areas.- Parameters:
serverName- name of the server instance to connect touserId- calling userdomainIdentifier- identifier for the desired governance domainstartFrom- paging start pointpageSize- maximum results that can be returned- Returns:
- properties of the subject area or InvalidParameterException qualifiedName or userId is null PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
getSubjectAreaDefinitionByGUID
@GetMapping(path="/subject-areas/{subjectAreaGUID}/with-definitions") public SubjectAreaDefinitionResponse getSubjectAreaDefinitionByGUID(@PathVariable String serverName, @PathVariable String userId, @PathVariable String subjectAreaGUID)Return information about a specific subject area and its linked governance definitions.- Parameters:
serverName- name of the server instance to connect touserId- calling usersubjectAreaGUID- unique identifier for the subject area- Returns:
- properties of the subject area linked to the associated governance definitions or InvalidParameterException subjectAreaGUID or userId is null PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
-
-