Class DataEngineTopicHandler
- java.lang.Object
-
- org.odpi.openmetadata.accessservices.dataengine.server.handlers.DataEngineTopicHandler
-
public class DataEngineTopicHandler extends Object
DataEngineTopicHandler manages topic objects. It runs server-side in the DataEngine OMAS and creates and retrieves collections entities through the OMRSRepositoryConnector.
-
-
Field Summary
Fields Modifier and Type Field Description static StringTOPIC_GUID_PARAMETER_NAME
-
Constructor Summary
Constructors Constructor Description DataEngineTopicHandler(InvalidParameterHandler invalidParameterHandler, AssetHandler<Topic> topicHandler, DataEngineRegistrationHandler dataEngineRegistrationHandler, DataEngineCommonHandler dataEngineCommonHandler)Construct the handler information needed to interact with the repository services
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Optional<EntityDetail>findTopicEntity(String userId, String qualifiedName)Find out if the Topic object is already stored in the repository.voidremoveTopic(String userId, String topicGUID, String externalSourceName, DeleteSemantic deleteSemantic)Remove the topicStringupsertTopic(String userId, Topic topic, String externalSourceName)Create or update the topic with event types
-
-
-
Field Detail
-
TOPIC_GUID_PARAMETER_NAME
public static final String TOPIC_GUID_PARAMETER_NAME
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
DataEngineTopicHandler
public DataEngineTopicHandler(InvalidParameterHandler invalidParameterHandler, AssetHandler<Topic> topicHandler, DataEngineRegistrationHandler dataEngineRegistrationHandler, DataEngineCommonHandler dataEngineCommonHandler)
Construct the handler information needed to interact with the repository services- Parameters:
invalidParameterHandler- handler for managing parameter errorstopicHandler- provides utilities specific for manipulating topic entitiesdataEngineCommonHandler- provides utilities for manipulating entitiesdataEngineRegistrationHandler- provides utilities for software server capability entities
-
-
Method Detail
-
upsertTopic
public String upsertTopic(String userId, Topic topic, String externalSourceName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Create or update the topic with event types- Parameters:
userId- the name of the calling usertopic- the values of the topicexternalSourceName- the unique name of the external source- Returns:
- unique identifier of the topic in the repository
- Throws:
InvalidParameterException- the bean properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the property server
-
findTopicEntity
public Optional<EntityDetail> findTopicEntity(String userId, String qualifiedName) throws UserNotAuthorizedException, PropertyServerException, InvalidParameterException
Find out if the Topic object is already stored in the repository. It uses the fully qualified name to retrieve the entity- Parameters:
userId- the name of the calling userqualifiedName- the qualifiedName name of the process to be searched- Returns:
- optional with entity details if found, empty optional if not found
- Throws:
InvalidParameterException- the bean properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the property server
-
removeTopic
public void removeTopic(String userId, String topicGUID, String externalSourceName, DeleteSemantic deleteSemantic) throws FunctionNotSupportedException, InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Remove the topic- Parameters:
userId- the name of the calling usertopicGUID- unique identifier of the topic to be removedexternalSourceName- the external data engine namedeleteSemantic- the delete semantic- Throws:
InvalidParameterException- the bean properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the property serverFunctionNotSupportedException- the repository does not support this call.
-
-