Class EventBrokerResource


  • @RestController
    @RequestMapping("/servers/{serverName}/open-metadata/access-services/data-manager/users/{userId}")
    public class EventBrokerResource
    extends Object
    EventBrokerResource is the server-side implementation of the Data Manager OMAS's support for topics. It matches the EventBrokerClient.
    • Constructor Detail

      • EventBrokerResource

        public EventBrokerResource()
        Default constructor
    • Method Detail

      • createTopic

        @PostMapping(path="/topics")
        public GUIDResponse createTopic​(@PathVariable
                                        String serverName,
                                        @PathVariable
                                        String userId,
                                        @RequestParam
                                        boolean eventBrokerIsHome,
                                        @RequestBody
                                        TopicRequestBody requestBody)
        Create a new metadata element to represent a topic.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        eventBrokerIsHome - should the topic be marked as owned by the event broker so others can not update?
        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)
      • createTopicFromTemplate

        @PostMapping(path="/topics/from-template/{templateGUID}")
        public GUIDResponse createTopicFromTemplate​(@PathVariable
                                                    String serverName,
                                                    @PathVariable
                                                    String userId,
                                                    @PathVariable
                                                    String templateGUID,
                                                    @RequestParam
                                                    boolean eventBrokerIsHome,
                                                    @RequestBody
                                                    TemplateRequestBody requestBody)
        Create a new metadata element to represent a topic using an existing metadata element as a template.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        eventBrokerIsHome - should the topic be marked as owned by the event broker so others can not update?
        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)
      • updateTopic

        @PostMapping(path="/topics/{topicGUID}")
        public VoidResponse updateTopic​(@PathVariable
                                        String serverName,
                                        @PathVariable
                                        String userId,
                                        @PathVariable
                                        String topicGUID,
                                        @RequestParam
                                        boolean isMergeUpdate,
                                        @RequestBody
                                        TopicRequestBody requestBody)
        Update the metadata element representing a topic.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        topicGUID - unique identifier of the metadata element to update
        isMergeUpdate - are unspecified properties unchanged (true) or removed?
        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)
      • publishTopic

        @PostMapping(path="/topics/{topicGUID}/publish")
        public VoidResponse publishTopic​(@PathVariable
                                         String serverName,
                                         @PathVariable
                                         String userId,
                                         @PathVariable
                                         String topicGUID,
                                         @RequestBody(required=false)
                                         NullRequestBody nullRequestBody)
        Update the zones for the topic asset so that it becomes visible to consumers. (The zones are set to the list of zones in the publishedZones option configured for each instance of the Data Manager OMAS).
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        topicGUID - unique identifier of the metadata element to publish
        nullRequestBody - empty request body
        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)
      • withdrawTopic

        @PostMapping(path="/topics/{topicGUID}/withdraw")
        public VoidResponse withdrawTopic​(@PathVariable
                                          String serverName,
                                          @PathVariable
                                          String userId,
                                          @PathVariable
                                          String topicGUID,
                                          @RequestBody(required=false)
                                          NullRequestBody nullRequestBody)
        Update the zones for the topic asset so that it is no longer visible to consumers. (The zones are set to the list of zones in the defaultZones option configured for each instance of the Data Manager OMAS. This is the setting when the topic is first created).
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        topicGUID - unique identifier of the metadata element to withdraw
        nullRequestBody - empty request body
        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)
      • removeTopic

        @PostMapping(path="/topics/{topicGUID}/{qualifiedName}/delete")
        public VoidResponse removeTopic​(@PathVariable
                                        String serverName,
                                        @PathVariable
                                        String userId,
                                        @PathVariable
                                        String topicGUID,
                                        @PathVariable
                                        String qualifiedName,
                                        @RequestBody
                                        MetadataSourceRequestBody requestBody)
        Remove the metadata element representing a topic.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        topicGUID - unique identifier of the metadata element to remove
        qualifiedName - unique name 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)
      • findTopics

        @PostMapping(path="/topics/by-search-string")
        public TopicsResponse findTopics​(@PathVariable
                                         String serverName,
                                         @PathVariable
                                         String userId,
                                         @RequestBody
                                         SearchStringRequestBody requestBody,
                                         @RequestParam
                                         int startFrom,
                                         @RequestParam
                                         int pageSize)
        Retrieve the list of topic 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)
      • getTopicsByName

        @PostMapping(path="/topics/by-name")
        public TopicsResponse getTopicsByName​(@PathVariable
                                              String serverName,
                                              @PathVariable
                                              String userId,
                                              @RequestBody
                                              NameRequestBody requestBody,
                                              @RequestParam
                                              int startFrom,
                                              @RequestParam
                                              int pageSize)
        Retrieve the list of topic 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)
      • getTopicsForEventBroker

        @GetMapping(path="/event-brokers/{eventBrokerGUID}/{eventBrokerName}/topics")
        public TopicsResponse getTopicsForEventBroker​(@PathVariable
                                                      String serverName,
                                                      @PathVariable
                                                      String userId,
                                                      @PathVariable
                                                      String eventBrokerGUID,
                                                      @PathVariable
                                                      String eventBrokerName,
                                                      @RequestParam
                                                      int startFrom,
                                                      @RequestParam
                                                      int pageSize)
        Retrieve the list of topics created by this topic manager.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        eventBrokerGUID - unique identifier of software server capability representing the owning event broker
        eventBrokerName - unique name of software server capability representing the owning event broker
        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)
      • getTopicByGUID

        @GetMapping(path="/topics/{guid}")
        public TopicResponse getTopicByGUID​(@PathVariable
                                            String serverName,
                                            @PathVariable
                                            String userId,
                                            @PathVariable
                                            String guid)
        Retrieve the topic 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)
      • createEventType

        @PostMapping(path="/topics/{topicGUID}/event-types")
        public GUIDResponse createEventType​(@PathVariable
                                            String serverName,
                                            @PathVariable
                                            String userId,
                                            @PathVariable
                                            String topicGUID,
                                            @RequestBody
                                            EventTypeRequestBody requestBody)
        Create a new metadata element to represent a event type.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        topicGUID - unique identifier of the topic where the event type is located
        requestBody - properties about the event type
        Returns:
        unique identifier of the new event type 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)
      • createEventTypeFromTemplate

        @PostMapping(path="/topics/{topicGUID}/event-types/from-template/{templateGUID}")
        public GUIDResponse createEventTypeFromTemplate​(@PathVariable
                                                        String serverName,
                                                        @PathVariable
                                                        String userId,
                                                        @PathVariable
                                                        String templateGUID,
                                                        @PathVariable
                                                        String topicGUID,
                                                        @RequestBody
                                                        TemplateRequestBody requestBody)
        Create a new metadata element to represent a event type 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
        topicGUID - unique identifier of the topic where the event type is located
        requestBody - properties that override the template
        Returns:
        unique identifier of the new event type 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)
      • updateEventType

        @PostMapping(path="/topics/event-types/{eventTypeGUID}")
        public VoidResponse updateEventType​(@PathVariable
                                            String serverName,
                                            @PathVariable
                                            String userId,
                                            @PathVariable
                                            String eventTypeGUID,
                                            @RequestParam
                                            boolean isMergeUpdate,
                                            @RequestBody
                                            EventTypeRequestBody requestBody)
        Update the metadata element representing a event type.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        eventTypeGUID - unique identifier of the metadata element to update
        isMergeUpdate - are unspecified properties unchanged (true) or removed?
        requestBody - new properties for the metadata 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)
      • removeEventType

        @PostMapping(path="/topics/event-types/{eventTypeGUID}/{qualifiedName}/delete")
        public VoidResponse removeEventType​(@PathVariable
                                            String serverName,
                                            @PathVariable
                                            String userId,
                                            @PathVariable
                                            String eventTypeGUID,
                                            @PathVariable
                                            String qualifiedName,
                                            @RequestBody
                                            MetadataSourceRequestBody requestBody)
        Remove the metadata element representing a event type.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        eventTypeGUID - unique identifier of the metadata element to remove
        qualifiedName - unique name of the metadata element to remove
        requestBody - empty request body
        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)
      • findEventTypes

        @PostMapping(path="/topics/event-types/by-search-string")
        public EventTypesResponse findEventTypes​(@PathVariable
                                                 String serverName,
                                                 @PathVariable
                                                 String userId,
                                                 @RequestBody
                                                 SearchStringRequestBody requestBody,
                                                 @RequestParam
                                                 int startFrom,
                                                 @RequestParam
                                                 int pageSize)
        Retrieve the list of event type 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)
      • getEventTypesForEventSet

        @GetMapping(path="/event-sets/{eventSetGUID}/event-types")
        public EventTypesResponse getEventTypesForEventSet​(@PathVariable
                                                           String serverName,
                                                           @PathVariable
                                                           String userId,
                                                           @PathVariable
                                                           String eventSetGUID,
                                                           @RequestParam
                                                           int startFrom,
                                                           @RequestParam
                                                           int pageSize)
        Return the list of event types associated with a EventSet.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        eventSetGUID - unique identifier of the event set to query
        startFrom - paging start point
        pageSize - maximum results that can be returned
        Returns:
        list of metadata elements describing the schemas associated with the requested topic 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)
      • getEventTypesForTopic

        @GetMapping(path="/topics/{topicGUID}/event-types")
        public EventTypesResponse getEventTypesForTopic​(@PathVariable
                                                        String serverName,
                                                        @PathVariable
                                                        String userId,
                                                        @PathVariable
                                                        String topicGUID,
                                                        @RequestParam
                                                        int startFrom,
                                                        @RequestParam
                                                        int pageSize)
        Return the list of schemas associated with a topic.
        Parameters:
        serverName - name of the service to route the request to.
        userId - calling user
        topicGUID - unique identifier of the topic to query
        startFrom - paging start point
        pageSize - maximum results that can be returned
        Returns:
        list of metadata elements describing the schemas associated with the requested topic 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)
      • getEventTypesByName

        @PostMapping(path="/topics/event-types/by-name")
        public EventTypesResponse getEventTypesByName​(@PathVariable
                                                      String serverName,
                                                      @PathVariable
                                                      String userId,
                                                      @RequestBody
                                                      NameRequestBody requestBody,
                                                      @RequestParam
                                                      int startFrom,
                                                      @RequestParam
                                                      int pageSize)
        Retrieve the list of event type 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)
      • getEventTypeByGUID

        @GetMapping(path="/topics/event-types/{guid}")
        public EventTypeResponse getEventTypeByGUID​(@PathVariable
                                                    String serverName,
                                                    @PathVariable
                                                    String userId,
                                                    @PathVariable
                                                    String guid)
        Retrieve the event type 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:
        requested 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)