Class CommunityResource


  • @RestController
    @RequestMapping("/servers/{serverName}/open-metadata/access-services/community-profile/users/{userId}")
    public class CommunityResource
    extends Object
    The CommunityResource provides a Spring based server-side REST API that supports the CommunityManagementInterface. It delegates each request to the CommunityRESTServices. This provides the server-side implementation of the Community Profile Open Metadata Assess Service (OMAS) which is used to manage information about people, roles and organizations.
    • Constructor Detail

      • CommunityResource

        public CommunityResource()
        Default constructor
    • Method Detail

      • createCommunity

        @PostMapping(path="/communities")
        public GUIDResponse createCommunity​(@PathVariable
                                            String serverName,
                                            @PathVariable
                                            String userId,
                                            @RequestBody
                                            ReferenceableRequestBody requestBody)
        Create a new metadata element to represent a community.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        requestBody - properties to store
        Returns:
        unique identifier of the new metadata element or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
      • createCommunityFromTemplate

        @PostMapping(path="/communities/from-template/{templateGUID}")
        public GUIDResponse createCommunityFromTemplate​(@PathVariable
                                                        String serverName,
                                                        @PathVariable
                                                        String userId,
                                                        @PathVariable
                                                        String templateGUID,
                                                        @RequestBody
                                                        TemplateRequestBody requestBody)
        Create a new metadata element to represent a community using an existing metadata element as a template.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        templateGUID - unique identifier of the metadata element to copy
        requestBody - properties that override the template
        Returns:
        unique identifier of the new metadata element or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
      • updateCommunity

        @PostMapping(path="/communities/{communityGUID}")
        public VoidResponse updateCommunity​(@PathVariable
                                            String serverName,
                                            @PathVariable
                                            String userId,
                                            @PathVariable
                                            String communityGUID,
                                            @RequestParam
                                            boolean isMergeUpdate,
                                            @RequestBody
                                            ReferenceableRequestBody requestBody)
        Update the metadata element representing a community.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        communityGUID - unique identifier of the metadata element to update
        isMergeUpdate - should the new properties be merged with the existing properties of overlay them?
        requestBody - new properties for this element
        Returns:
        void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
      • setupCommunityRole

        @PostMapping(path="/communities/{communityGUID}/community-roles/{communityRoleGUID}")
        public VoidResponse setupCommunityRole​(@PathVariable
                                               String serverName,
                                               @PathVariable
                                               String userId,
                                               @PathVariable
                                               String communityGUID,
                                               @PathVariable
                                               String communityRoleGUID,
                                               @RequestBody
                                               RelationshipRequestBody requestBody)
        Create a relationship between a community and a person role.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        communityGUID - unique identifier of the community in the external data manager
        communityRoleGUID - unique identifier of the person role in the external data manager
        requestBody - data manager identifiers
        Returns:
        void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
      • clearCommunityRole

        @PostMapping(path="/communities/{communityGUID}/community-roles/{communityRoleGUID}/delete")
        public VoidResponse clearCommunityRole​(@PathVariable
                                               String serverName,
                                               @PathVariable
                                               String userId,
                                               @PathVariable
                                               String communityGUID,
                                               @PathVariable
                                               String communityRoleGUID,
                                               @RequestBody
                                               ExternalSourceRequestBody requestBody)
        Remove a relationship between a community and a person role.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        communityGUID - unique identifier of the community in the external data manager
        communityRoleGUID - unique identifier of the person role in the external data manager
        requestBody - data manager identifiers
        Returns:
        void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
      • removeCommunity

        @PostMapping(path="/communities/{communityGUID}/delete")
        public VoidResponse removeCommunity​(@PathVariable
                                            String serverName,
                                            @PathVariable
                                            String userId,
                                            @PathVariable
                                            String communityGUID,
                                            @RequestBody
                                            ExternalSourceRequestBody requestBody)
        Remove the metadata element representing a community.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        communityGUID - unique identifier of the metadata element to remove
        requestBody - external source identifiers
        Returns:
        void or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
      • findCommunities

        @PostMapping(path="/communities/by-search-string")
        public CommunityListResponse findCommunities​(@PathVariable
                                                     String serverName,
                                                     @PathVariable
                                                     String userId,
                                                     @RequestBody
                                                     SearchStringRequestBody requestBody,
                                                     @RequestParam
                                                     int startFrom,
                                                     @RequestParam
                                                     int pageSize)
        Retrieve the list of community metadata elements that contain the search string. The search string is treated as a regular expression.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        requestBody - string to find in the properties
        startFrom - paging start point
        pageSize - maximum results that can be returned
        Returns:
        list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
      • getCommunitiesByName

        @PostMapping(path="/communities/by-name")
        public CommunityListResponse getCommunitiesByName​(@PathVariable
                                                          String serverName,
                                                          @PathVariable
                                                          String userId,
                                                          @RequestBody
                                                          NameRequestBody requestBody,
                                                          @RequestParam
                                                          int startFrom,
                                                          @RequestParam
                                                          int pageSize)
        Retrieve the list of community metadata elements with a matching qualified or display name. There are no wildcards supported on this request.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        requestBody - name to search for
        startFrom - paging start point
        pageSize - maximum results that can be returned
        Returns:
        list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
      • getRolesForCommunity

        @GetMapping(path="/person-roles/by-community/{communityGUID}")
        public PersonRoleListResponse getRolesForCommunity​(@PathVariable
                                                           String serverName,
                                                           @PathVariable
                                                           String userId,
                                                           @PathVariable
                                                           String communityGUID,
                                                           @RequestParam
                                                           int startFrom,
                                                           @RequestParam
                                                           int pageSize)
        Return information about a person role connected to the named community.
        Parameters:
        serverName - called server
        userId - calling user
        communityGUID - unique identifier for the community
        startFrom - index of the list to start from (0 for start)
        pageSize - maximum number of elements to return.
        Returns:
        list of matching person roles InvalidParameterException name or userId is null PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
      • getCommunitiesByName

        @GetMapping(path="/communities")
        public CommunityListResponse getCommunitiesByName​(@PathVariable
                                                          String serverName,
                                                          @PathVariable
                                                          String userId,
                                                          @RequestParam
                                                          int startFrom,
                                                          @RequestParam
                                                          int pageSize)
        Retrieve the list of community metadata elements.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        startFrom - paging start point
        pageSize - maximum results that can be returned
        Returns:
        list of matching metadata elements or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
      • getCommunityByGUID

        @GetMapping(path="/communities/{guid}")
        public CommunityResponse getCommunityByGUID​(@PathVariable
                                                    String serverName,
                                                    @PathVariable
                                                    String userId,
                                                    @PathVariable
                                                    String guid)
        Retrieve the community metadata element with the supplied unique identifier.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        guid - unique identifier of the requested metadata element
        Returns:
        matching metadata element or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)