Class EventBrokerResource
java.lang.Object
org.odpi.openmetadata.accessservices.datamanager.server.spring.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 Summary
-
Method Summary
Modifier and TypeMethodDescriptioncreateEventType
(String serverName, String userId, String topicGUID, EventTypeRequestBody requestBody) Create a new metadata element to represent a event type.createEventTypeFromTemplate
(String serverName, String userId, String templateGUID, String topicGUID, TemplateRequestBody requestBody) Create a new metadata element to represent a event type using an existing metadata element as a template.createTopic
(String serverName, String userId, boolean eventBrokerIsHome, TopicRequestBody requestBody) Create a new metadata element to represent a topic.createTopicFromTemplate
(String serverName, String userId, String templateGUID, boolean eventBrokerIsHome, TemplateRequestBody requestBody) Create a new metadata element to represent a topic using an existing metadata element as a template.findEventTypes
(String serverName, String userId, SearchStringRequestBody requestBody, int startFrom, int pageSize) Retrieve the list of event type metadata elements that contain the search string.findTopics
(String serverName, String userId, SearchStringRequestBody requestBody, int startFrom, int pageSize) Retrieve the list of topic metadata elements that contain the search string.getEventTypeByGUID
(String serverName, String userId, String guid) Retrieve the event type metadata element with the supplied unique identifier.getEventTypesByName
(String serverName, String userId, NameRequestBody requestBody, int startFrom, int pageSize) Retrieve the list of event type metadata elements with a matching qualified or display name.getEventTypesForEventSet
(String serverName, String userId, String eventSetGUID, int startFrom, int pageSize) Return the list of event types associated with a EventSet.getEventTypesForTopic
(String serverName, String userId, String topicGUID, int startFrom, int pageSize) Return the list of schemas associated with a topic.getTopicByGUID
(String serverName, String userId, String guid) Retrieve the topic metadata element with the supplied unique identifier.getTopicsByName
(String serverName, String userId, NameRequestBody requestBody, int startFrom, int pageSize) Retrieve the list of topic metadata elements with a matching qualified or display name.getTopicsForEventBroker
(String serverName, String userId, String eventBrokerGUID, String eventBrokerName, int startFrom, int pageSize) Retrieve the list of topics created by this topic manager.publishTopic
(String serverName, String userId, String topicGUID, NullRequestBody nullRequestBody) Update the zones for the topic asset so that it becomes visible to consumers.removeEventType
(String serverName, String userId, String eventTypeGUID, String qualifiedName, MetadataSourceRequestBody requestBody) Remove the metadata element representing a event type.removeTopic
(String serverName, String userId, String topicGUID, String qualifiedName, MetadataSourceRequestBody requestBody) Remove the metadata element representing a topic.updateEventType
(String serverName, String userId, String eventTypeGUID, boolean isMergeUpdate, EventTypeRequestBody requestBody) Update the metadata element representing a event type.updateTopic
(String serverName, String userId, String topicGUID, boolean isMergeUpdate, TopicRequestBody requestBody) Update the metadata element representing a topic.withdrawTopic
(String serverName, String userId, String topicGUID, NullRequestBody nullRequestBody) Update the zones for the topic asset so that it is no longer visible to consumers.
-
Constructor Details
-
EventBrokerResource
public EventBrokerResource()Default constructor
-
-
Method Details
-
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 usereventBrokerIsHome
- 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 usereventBrokerIsHome
- should the topic be marked as owned by the event broker so others can not update?templateGUID
- unique identifier of the metadata element to copyrequestBody
- 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 usertopicGUID
- unique identifier of the metadata element to updateisMergeUpdate
- 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 usertopicGUID
- unique identifier of the metadata element to publishnullRequestBody
- 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 usertopicGUID
- unique identifier of the metadata element to withdrawnullRequestBody
- 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 usertopicGUID
- unique identifier of the metadata element to removequalifiedName
- unique name of the metadata element to removerequestBody
- 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 userrequestBody
- string to find in the propertiesstartFrom
- paging start pointpageSize
- 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 userrequestBody
- name to search forstartFrom
- paging start pointpageSize
- 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 usereventBrokerGUID
- unique identifier of software server capability representing the owning event brokereventBrokerName
- unique name of software server capability representing the owning event brokerstartFrom
- paging start pointpageSize
- 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 userguid
- 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 usertopicGUID
- unique identifier of the topic where the event type is locatedrequestBody
- 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 usertemplateGUID
- unique identifier of the metadata element to copytopicGUID
- unique identifier of the topic where the event type is locatedrequestBody
- 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 usereventTypeGUID
- unique identifier of the metadata element to updateisMergeUpdate
- 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 usereventTypeGUID
- unique identifier of the metadata element to removequalifiedName
- unique name of the metadata element to removerequestBody
- 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 userrequestBody
- string to find in the propertiesstartFrom
- paging start pointpageSize
- 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 usereventSetGUID
- unique identifier of the event set to querystartFrom
- paging start pointpageSize
- 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 usertopicGUID
- unique identifier of the topic to querystartFrom
- paging start pointpageSize
- 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 userrequestBody
- name to search forstartFrom
- paging start pointpageSize
- 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 userguid
- 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)
-