Class SolutionHandler
java.lang.Object
org.odpi.openmetadata.frameworkservices.omf.client.handlers.SolutionHandler
ManageSolutions provides methods to define information supply chains, solution components and their supporting objects
The interface supports the following types of objects
- InformationSupplyChains
- InformationSupplyChainSegments
- SolutionBlueprints
- SolutionComponents
- SolutionPorts
- SolutionRoles
-
Constructor Summary
ConstructorsConstructorDescriptionSolutionHandler
(String localServerName, String serverName, String serverPlatformURLRoot, String userId, String password, AuditLog auditLog, String accessServiceURLMarker, String serviceName, int maxPageSize) Create a new client that passes userId and password in each HTTP request.SolutionHandler
(String localServerName, String serverName, String serverPlatformURLRoot, AuditLog auditLog, String accessServiceURLMarker, String serviceName, int maxPageSize) Create a new client with no authentication embedded in the HTTP request. -
Method Summary
Modifier and TypeMethodDescriptioncreateInformationSupplyChain
(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, InformationSupplyChainProperties properties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Create a new information supply chain.createInformationSupplyChainFromTemplate
(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, Date effectiveFrom, Date effectiveTo, String templateGUID, ElementProperties replacementProperties, Map<String, String> placeholderProperties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Create a new metadata element to represent an information supply chain using an existing element as a template.createInformationSupplyChainSegment
(String userId, String externalSourceGUID, String externalSourceName, InformationSupplyChainSegmentProperties properties, String informationSupplyChainGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Create a new information supply chain segment that is anchored from an information supply chain.createSolutionBlueprint
(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, SolutionBlueprintProperties properties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Create a new solution blueprint.createSolutionBlueprintFromTemplate
(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, Date effectiveFrom, Date effectiveTo, String templateGUID, ElementProperties replacementProperties, Map<String, String> placeholderProperties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Create a new metadata element to represent a solution blueprint using an existing element as a template.createSolutionComponent
(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, SolutionComponentProperties properties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Create a new solution component.createSolutionComponentFromTemplate
(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, Date effectiveFrom, Date effectiveTo, String templateGUID, ElementProperties replacementProperties, Map<String, String> placeholderProperties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Create a new metadata element to represent a solution component using an existing element as a template.createSolutionRole
(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, ActorRoleProperties properties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Create a new solution role.createSolutionRoleFromTemplate
(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, Date effectiveFrom, Date effectiveTo, String templateGUID, ElementProperties replacementProperties, Map<String, String> placeholderProperties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Create a new metadata element to represent a solution role using an existing element as a template.void
deleteInformationSupplyChain
(String userId, String externalSourceGUID, String externalSourceName, String informationSupplyChainGUID, boolean cascadedDelete, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Delete an information supply chain and all of its segments.void
deleteInformationSupplyChainSegment
(String userId, String externalSourceGUID, String externalSourceName, String segmentGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Delete an information supply chain segment.void
deleteSolutionBlueprint
(String userId, String externalSourceGUID, String externalSourceName, String solutionBlueprintGUID, boolean cascadedDelete, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Delete a solution blueprint.void
deleteSolutionComponent
(String userId, String externalSourceGUID, String externalSourceName, String solutionComponentGUID, boolean cascadedDelete, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Delete a solution component.void
deleteSolutionRole
(String userId, String externalSourceGUID, String externalSourceName, String solutionRoleGUID, boolean cascadedDelete, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Delete a solution role.void
detachSegments
(String userId, String externalSourceGUID, String externalSourceName, String segment1GUID, String segment2GUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Detach two information supply chain segments from one another.void
detachSolutionComponentActor
(String userId, String externalSourceGUID, String externalSourceName, String solutionRoleGUID, String solutionComponentGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Detach a solution component from a solution role.void
detachSolutionComponentFromBlueprint
(String userId, String externalSourceGUID, String externalSourceName, String solutionBlueprintGUID, String solutionComponentGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Detach a solution component from a solution blueprint.void
detachSubcomponent
(String userId, String externalSourceGUID, String externalSourceName, String parentSolutionComponentGUID, String subcomponentGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Detach a solution component from a solution component.findInformationSupplyChains
(String userId, String searchString, TemplateFilter templateFilter, boolean addImplementation, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Retrieve the list of information supply chains metadata elements that contain the search string.findSolutionBlueprints
(String userId, String searchString, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Retrieve the list of solution blueprint metadata elements that contain the search string.findSolutionComponents
(String userId, String searchString, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Retrieve the list of solution component metadata elements that contain the search string.findSolutionRoles
(String userId, String searchString, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Retrieve the list of actor roles metadata elements that contain the search string and show which solution components (if any) are attached to it.getInformationSupplyChainByGUID
(String userId, String informationSupplyChainGUID, boolean addImplementation, Date asOfTime, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Return the properties of a specific information supply chain.getInformationSupplyChainsByName
(String userId, String name, TemplateFilter templateFilter, boolean addImplementation, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Returns the list of information supply chains with a particular name.getSolutionBlueprintByGUID
(String userId, String solutionBlueprintGUID, Date asOfTime, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Return the properties of a specific solution blueprint.getSolutionBlueprintsByName
(String userId, String name, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Returns the list of solution blueprints with a particular name.getSolutionComponentByGUID
(String userId, String solutionComponentGUID, Date asOfTime, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Return the properties of a specific solution component.getSolutionComponentImplementations
(String userId, String solutionComponentGUID, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Retrieve the list of metadata elements that are associated with the solution component via the ImplementedBy relationship.getSolutionComponentsByName
(String userId, String name, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Returns the list of solution components with a particular name.getSolutionRoleByGUID
(String userId, String solutionRoleGUID, Date asOfTime, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Return the properties of a specific solution role.getSolutionRolesByName
(String userId, String name, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Returns the list of solution roles with a particular name.void
linkSegments
(String userId, String externalSourceGUID, String externalSourceName, String segment1GUID, String segment2GUID, InformationSupplyChainLinkProperties linkProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Connect two information supply chain segments.void
linkSolutionComponentActor
(String userId, String externalSourceGUID, String externalSourceName, String solutionRoleGUID, String solutionComponentGUID, SolutionComponentActorProperties relationshipProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Attach a solution component to a solution role.void
linkSolutionComponentToBlueprint
(String userId, String externalSourceGUID, String externalSourceName, String parentSolutionBlueprintGUID, String solutionComponentGUID, SolutionBlueprintCompositionProperties relationshipProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Attach a solution component to a solution blueprint.void
linkSubcomponent
(String userId, String externalSourceGUID, String externalSourceName, String parentSolutionComponentGUID, String solutionComponentActorGUID, RelationshipProperties relationshipProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Attach a solution component to a solution component.void
updateInformationSupplyChain
(String userId, String externalSourceGUID, String externalSourceName, String informationSupplyChainGUID, boolean replaceAllProperties, InformationSupplyChainProperties properties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Update the properties of an information supply chain.void
updateInformationSupplyChainSegment
(String userId, String externalSourceGUID, String externalSourceName, String segmentGUID, boolean replaceAllProperties, InformationSupplyChainSegmentProperties properties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Update the properties of an information supply chain.void
updateSolutionBlueprint
(String userId, String externalSourceGUID, String externalSourceName, String solutionBlueprintGUID, boolean replaceAllProperties, SolutionBlueprintProperties properties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Update the properties of a solution blueprint.void
updateSolutionComponent
(String userId, String externalSourceGUID, String externalSourceName, String solutionComponentGUID, boolean replaceAllProperties, SolutionComponentProperties properties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Update the properties of a solution component.void
updateSolutionRole
(String userId, String externalSourceGUID, String externalSourceName, String solutionRoleGUID, boolean replaceAllProperties, ActorRoleProperties properties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Update the properties of a solution role.
-
Constructor Details
-
SolutionHandler
public SolutionHandler(String localServerName, String serverName, String serverPlatformURLRoot, AuditLog auditLog, String accessServiceURLMarker, String serviceName, int maxPageSize) throws InvalidParameterException Create a new client with no authentication embedded in the HTTP request.- Parameters:
localServerName
- name of this server (view server)serverName
- name of the server to connect toserverPlatformURLRoot
- the network address of the server running the OMAS REST servicesauditLog
- logging destinationaccessServiceURLMarker
- which access service to callserviceName
- local service namemaxPageSize
- maximum number of results supported by this server- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
SolutionHandler
public SolutionHandler(String localServerName, String serverName, String serverPlatformURLRoot, String userId, String password, AuditLog auditLog, String accessServiceURLMarker, String serviceName, int maxPageSize) throws InvalidParameterException Create a new client that passes userId and password in each HTTP request. This is the userId/password of the calling server. The end user's userId is sent on each request.- Parameters:
serverName
- name of the server to connect toserverPlatformURLRoot
- the network address of the server running the OMAS REST servicesuserId
- caller's userId embedded in all HTTP requestspassword
- caller's userId embedded in all HTTP requestsmaxPageSize
- maximum number of results supported by this serverauditLog
- logging destination- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
-
Method Details
-
createInformationSupplyChain
public String createInformationSupplyChain(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, InformationSupplyChainProperties properties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Create a new information supply chain.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementanchorGUID
- unique identifier of the element that should be the anchor for the new element. Set to null if no anchor, or the Anchors classification is included in the initial classifications.isOwnAnchor
- boolean flag to day that the element should be classified as its own anchor once its element is created in the repository.anchorScopeGUID
- unique identifier of any anchor scope to use for searchingproperties
- properties for the new element.parentGUID
- unique identifier of optional parent entityparentRelationshipTypeName
- type of relationship to connect the new element to the parentparentRelationshipProperties
- properties to include in parent relationshipparentAtEnd1
- which end should the parent GUID go in the relationshipforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- unique identifier of the newly created element
- Throws:
InvalidParameterException
- one of the parameters is invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
createInformationSupplyChainFromTemplate
public String createInformationSupplyChainFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, Date effectiveFrom, Date effectiveTo, String templateGUID, ElementProperties replacementProperties, Map<String, String> placeholderProperties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionCreate a new metadata element to represent an information supply chain using an existing element as a template. The template defines additional classifications and relationships that should be added to the new information supply chain.- Parameters:
userId
- calling userexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementanchorGUID
- unique identifier of the element that should be the anchor for the new element. Set to null if no anchor, or the Anchors classification is included in the initial classifications.isOwnAnchor
- boolean flag to day that the element should be classified as its own anchor once its element is created in the repository.anchorScopeGUID
- unique identifier of any anchor scope to use for searchingeffectiveFrom
- the date when this element is active - null for active on creationeffectiveTo
- the date when this element becomes inactive - null for active until deletedtemplateGUID
- the unique identifier of the existing asset to copy (this will copy all the attachments such as nested content, schema connection etc)replacementProperties
- properties of the new metadata element. These override the template valuesplaceholderProperties
- property name-to-property value map to replace any placeholder values in the template element - and their anchored elements, which are also copied as part of this operation.parentGUID
- unique identifier of optional parent entityparentRelationshipTypeName
- type of relationship to connect the new element to the parentparentRelationshipProperties
- properties to include in parent relationshipparentAtEnd1
- which end should the parent GUID go in the relationshipforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- unique identifier of the new metadata element
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
updateInformationSupplyChain
public void updateInformationSupplyChain(String userId, String externalSourceGUID, String externalSourceName, String informationSupplyChainGUID, boolean replaceAllProperties, InformationSupplyChainProperties properties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Update the properties of an information supply chain.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementinformationSupplyChainGUID
- unique identifier of the information supply chain (returned from create)replaceAllProperties
- flag to indicate whether to completely replace the existing properties with the new properties, or just update the individual properties specified on the request.properties
- properties for the element.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
createInformationSupplyChainSegment
public String createInformationSupplyChainSegment(String userId, String externalSourceGUID, String externalSourceName, InformationSupplyChainSegmentProperties properties, String informationSupplyChainGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Create a new information supply chain segment that is anchored from an information supply chain.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementproperties
- properties for the new element.informationSupplyChainGUID
- unique identifier of optional parent information supply chainforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- unique identifier of the newly created element
- Throws:
InvalidParameterException
- one of the parameters is invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
updateInformationSupplyChainSegment
public void updateInformationSupplyChainSegment(String userId, String externalSourceGUID, String externalSourceName, String segmentGUID, boolean replaceAllProperties, InformationSupplyChainSegmentProperties properties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Update the properties of an information supply chain.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsegmentGUID
- unique identifier of the information supply chain segment (returned from create)replaceAllProperties
- flag to indicate whether to completely replace the existing properties with the new properties, or just update the individual properties specified on the request.properties
- properties for the element.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
linkSegments
public void linkSegments(String userId, String externalSourceGUID, String externalSourceName, String segment1GUID, String segment2GUID, InformationSupplyChainLinkProperties linkProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Connect two information supply chain segments.- Parameters:
userId
- userId of user making requestexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsegment1GUID
- unique identifier of the first segmentsegment2GUID
- unique identifier of the second segmentlinkProperties
- description of the relationship.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
detachSegments
public void detachSegments(String userId, String externalSourceGUID, String externalSourceName, String segment1GUID, String segment2GUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Detach two information supply chain segments from one another.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsegment1GUID
- unique identifier of the first segment.segment2GUID
- unique identifier of the second segment.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
deleteInformationSupplyChainSegment
public void deleteInformationSupplyChainSegment(String userId, String externalSourceGUID, String externalSourceName, String segmentGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Delete an information supply chain segment.- Parameters:
userId
- userId of user making requestexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsegmentGUID
- unique identifier of the obsolete elementforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
deleteInformationSupplyChain
public void deleteInformationSupplyChain(String userId, String externalSourceGUID, String externalSourceName, String informationSupplyChainGUID, boolean cascadedDelete, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Delete an information supply chain and all of its segments.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementinformationSupplyChainGUID
- unique identifier of the required element.cascadedDelete
- can information supply chains be deleted if segments are attached?forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getInformationSupplyChainsByName
public List<InformationSupplyChainElement> getInformationSupplyChainsByName(String userId, String name, TemplateFilter templateFilter, boolean addImplementation, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Returns the list of information supply chains with a particular name.- Parameters:
userId
- userId of user making requestname
- name of the element to return - match is full text match in qualifiedName or nametemplateFilter
- should templates be returned?addImplementation
- should details of the implementation of the information supply chain be extracted too?limitResultsByStatus
- control the status of the elements to retrieve - default is everything but DeletedasOfTime
- repository time to usesequencingOrder
- order to retrieve resultssequencingProperty
- property to use for sequencing orderstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- a list of elements
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getInformationSupplyChainByGUID
public InformationSupplyChainElement getInformationSupplyChainByGUID(String userId, String informationSupplyChainGUID, boolean addImplementation, Date asOfTime, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the properties of a specific information supply chain.- Parameters:
userId
- userId of user making requestinformationSupplyChainGUID
- unique identifier of the required elementaddImplementation
- should details of the implementation of the information supply chain be extracted too?asOfTime
- repository time to useforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- retrieved properties
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
findInformationSupplyChains
public List<InformationSupplyChainElement> findInformationSupplyChains(String userId, String searchString, TemplateFilter templateFilter, boolean addImplementation, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of information supply chains metadata elements that contain the search string. The search string is treated as a regular expression.- Parameters:
userId
- calling usersearchString
- string to find in the propertiestemplateFilter
- should templates be returned?addImplementation
- should details of the implementation of the information supply chain be extracted too?limitResultsByStatus
- control the status of the elements to retrieve - default is everything but DeletedasOfTime
- repository time to usesequencingOrder
- order to retrieve resultssequencingProperty
- property to use for sequencing orderstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- list of matching metadata elements
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
createSolutionBlueprint
public String createSolutionBlueprint(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, SolutionBlueprintProperties properties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Create a new solution blueprint.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementanchorGUID
- unique identifier of the element that should be the anchor for the new element. Set to null if no anchor, or the Anchors classification is included in the initial classifications.isOwnAnchor
- boolean flag to day that the element should be classified as its own anchor once its element is created in the repository.anchorScopeGUID
- unique identifier of any anchor scope to use for searchingproperties
- properties for the new element.parentGUID
- unique identifier of optional parent entityparentRelationshipTypeName
- type of relationship to connect the new element to the parentparentRelationshipProperties
- properties to include in parent relationshipparentAtEnd1
- which end should the parent GUID go in the relationshipforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- unique identifier of the newly created element
- Throws:
InvalidParameterException
- one of the parameters is invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
createSolutionBlueprintFromTemplate
public String createSolutionBlueprintFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, Date effectiveFrom, Date effectiveTo, String templateGUID, ElementProperties replacementProperties, Map<String, String> placeholderProperties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionCreate a new metadata element to represent a solution blueprint using an existing element as a template. The template defines additional classifications and relationships that should be added to the new solution blueprint.- Parameters:
userId
- calling userexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementanchorGUID
- unique identifier of the element that should be the anchor for the new element. Set to null if no anchor, or the Anchors classification is included in the initial classifications.isOwnAnchor
- boolean flag to day that the element should be classified as its own anchor once its element is created in the repository.anchorScopeGUID
- unique identifier of any anchor scope to use for searchingeffectiveFrom
- the date when this element is active - null for active on creationeffectiveTo
- the date when this element becomes inactive - null for active until deletedtemplateGUID
- the unique identifier of the existing asset to copy (this will copy all the attachments such as nested content, schema connection etc)replacementProperties
- properties of the new metadata element. These override the template valuesplaceholderProperties
- property name-to-property value map to replace any placeholder values in the template element - and their anchored elements, which are also copied as part of this operation.parentGUID
- unique identifier of optional parent entityparentRelationshipTypeName
- type of relationship to connect the new element to the parentparentRelationshipProperties
- properties to include in parent relationshipparentAtEnd1
- which end should the parent GUID go in the relationshipforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- unique identifier of the new metadata element
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
updateSolutionBlueprint
public void updateSolutionBlueprint(String userId, String externalSourceGUID, String externalSourceName, String solutionBlueprintGUID, boolean replaceAllProperties, SolutionBlueprintProperties properties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Update the properties of a solution blueprint.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsolutionBlueprintGUID
- unique identifier of the solution blueprint (returned from create)replaceAllProperties
- flag to indicate whether to completely replace the existing properties with the new properties, or just update the individual properties specified on the request.properties
- properties for the element.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
linkSolutionComponentToBlueprint
public void linkSolutionComponentToBlueprint(String userId, String externalSourceGUID, String externalSourceName, String parentSolutionBlueprintGUID, String solutionComponentGUID, SolutionBlueprintCompositionProperties relationshipProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Attach a solution component to a solution blueprint.- Parameters:
userId
- userId of user making requestexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementparentSolutionBlueprintGUID
- unique identifier of the parentsolutionComponentGUID
- unique identifier of the solution componentrelationshipProperties
- description of the relationship.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
detachSolutionComponentFromBlueprint
public void detachSolutionComponentFromBlueprint(String userId, String externalSourceGUID, String externalSourceName, String solutionBlueprintGUID, String solutionComponentGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Detach a solution component from a solution blueprint.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsolutionBlueprintGUID
- unique identifier of the solution blueprint.solutionComponentGUID
- unique identifier of the solution component.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
deleteSolutionBlueprint
public void deleteSolutionBlueprint(String userId, String externalSourceGUID, String externalSourceName, String solutionBlueprintGUID, boolean cascadedDelete, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Delete a solution blueprint.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsolutionBlueprintGUID
- unique identifier of the elementcascadedDelete
- can the solution blueprint be deleted if it has solution components linked to it?forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getSolutionBlueprintsByName
public List<SolutionBlueprintElement> getSolutionBlueprintsByName(String userId, String name, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Returns the list of solution blueprints with a particular name.- Parameters:
userId
- userId of user making requestname
- name of the element to return - match is full text match in qualifiedName or nametemplateFilter
- should templates be returned?limitResultsByStatus
- control the status of the elements to retrieve - default is everything but DeletedasOfTime
- repository time to usesequencingOrder
- order to retrieve resultssequencingProperty
- property to use for sequencing orderstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- a list of elements
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getSolutionBlueprintByGUID
public SolutionBlueprintElement getSolutionBlueprintByGUID(String userId, String solutionBlueprintGUID, Date asOfTime, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the properties of a specific solution blueprint.- Parameters:
userId
- userId of user making requestsolutionBlueprintGUID
- unique identifier of the required elementasOfTime
- repository time to useforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- retrieved properties
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
findSolutionBlueprints
public List<SolutionBlueprintElement> findSolutionBlueprints(String userId, String searchString, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of solution blueprint metadata elements that contain the search string. The returned blueprints include a list of the components that are associated with it. The search string is treated as a regular expression.- Parameters:
userId
- calling usersearchString
- string to find in the propertiestemplateFilter
- should templates be returned?limitResultsByStatus
- control the status of the elements to retrieve - default is everything but DeletedasOfTime
- repository time to usesequencingOrder
- order to retrieve resultssequencingProperty
- property to use for sequencing orderstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- list of matching metadata elements
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
createSolutionRole
public String createSolutionRole(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, ActorRoleProperties properties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Create a new solution role.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementanchorGUID
- unique identifier of the element that should be the anchor for the new element. Set to null if no anchor, or the Anchors classification is included in the initial classifications.isOwnAnchor
- boolean flag to day that the element should be classified as its own anchor once its element is created in the repository.anchorScopeGUID
- unique identifier of any anchor scope to use for searchingproperties
- properties for the new element.parentGUID
- unique identifier of optional parent entityparentRelationshipTypeName
- type of relationship to connect the new element to the parentparentRelationshipProperties
- properties to include in parent relationshipparentAtEnd1
- which end should the parent GUID go in the relationshipforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- unique identifier of the newly created element
- Throws:
InvalidParameterException
- one of the parameters is invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
createSolutionRoleFromTemplate
public String createSolutionRoleFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, Date effectiveFrom, Date effectiveTo, String templateGUID, ElementProperties replacementProperties, Map<String, String> placeholderProperties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionCreate a new metadata element to represent a solution role using an existing element as a template. The template defines additional classifications and relationships that should be added to the new solution role.- Parameters:
userId
- calling userexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementanchorGUID
- unique identifier of the element that should be the anchor for the new element. Set to null if no anchor, or the Anchors classification is included in the initial classifications.isOwnAnchor
- boolean flag to day that the element should be classified as its own anchor once its element is created in the repository.anchorScopeGUID
- unique identifier of any anchor scope to use for searchingeffectiveFrom
- the date when this element is active - null for active on creationeffectiveTo
- the date when this element becomes inactive - null for active until deletedtemplateGUID
- the unique identifier of the existing asset to copy (this will copy all the attachments such as nested content, schema connection etc)replacementProperties
- properties of the new metadata element. These override the template valuesplaceholderProperties
- property name-to-property value map to replace any placeholder values in the template element - and their anchored elements, which are also copied as part of this operation.parentGUID
- unique identifier of optional parent entityparentRelationshipTypeName
- type of relationship to connect the new element to the parentparentRelationshipProperties
- properties to include in parent relationshipparentAtEnd1
- which end should the parent GUID go in the relationshipforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- unique identifier of the new metadata element
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
updateSolutionRole
public void updateSolutionRole(String userId, String externalSourceGUID, String externalSourceName, String solutionRoleGUID, boolean replaceAllProperties, ActorRoleProperties properties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Update the properties of a solution role.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsolutionRoleGUID
- unique identifier of the solution role (returned from create)replaceAllProperties
- flag to indicate whether to completely replace the existing properties with the new properties, or just update the individual properties specified on the request.properties
- properties for the element.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
linkSolutionComponentActor
public void linkSolutionComponentActor(String userId, String externalSourceGUID, String externalSourceName, String solutionRoleGUID, String solutionComponentGUID, SolutionComponentActorProperties relationshipProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Attach a solution component to a solution role.- Parameters:
userId
- userId of user making requestexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsolutionRoleGUID
- unique identifier of the parentsolutionComponentGUID
- unique identifier of the solution componentrelationshipProperties
- description of the relationship.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
detachSolutionComponentActor
public void detachSolutionComponentActor(String userId, String externalSourceGUID, String externalSourceName, String solutionRoleGUID, String solutionComponentGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Detach a solution component from a solution role.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsolutionRoleGUID
- unique identifier of the parent solution component.solutionComponentGUID
- unique identifier of the nested solution component.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
deleteSolutionRole
public void deleteSolutionRole(String userId, String externalSourceGUID, String externalSourceName, String solutionRoleGUID, boolean cascadedDelete, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Delete a solution role.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsolutionRoleGUID
- unique identifier of the elementcascadedDelete
- can the solution role be deleted if it has solution components linked to it?forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getSolutionRolesByName
public List<SolutionRoleElement> getSolutionRolesByName(String userId, String name, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Returns the list of solution roles with a particular name.- Parameters:
userId
- userId of user making requestname
- name of the element to return - match is full text match in qualifiedName or nametemplateFilter
- should templates be returned?limitResultsByStatus
- control the status of the elements to retrieve - default is everything but DeletedasOfTime
- repository time to usesequencingOrder
- order to retrieve resultssequencingProperty
- property to use for sequencing orderstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- a list of elements
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getSolutionRoleByGUID
public SolutionRoleElement getSolutionRoleByGUID(String userId, String solutionRoleGUID, Date asOfTime, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the properties of a specific solution role.- Parameters:
userId
- userId of user making requestsolutionRoleGUID
- unique identifier of the required elementasOfTime
- repository time to useforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- retrieved properties
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
findSolutionRoles
public List<SolutionRoleElement> findSolutionRoles(String userId, String searchString, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of actor roles metadata elements that contain the search string and show which solution components (if any) are attached to it. The returned solution roles include a list of the components that are associated with it. The search string is treated as a regular expression.- Parameters:
userId
- calling usersearchString
- string to find in the propertiestemplateFilter
- should templates be returned?limitResultsByStatus
- control the status of the elements to retrieve - default is everything but DeletedasOfTime
- repository time to usesequencingOrder
- order to retrieve resultssequencingProperty
- property to use for sequencing orderstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- list of matching metadata elements
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
createSolutionComponent
public String createSolutionComponent(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, SolutionComponentProperties properties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Create a new solution component.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementanchorGUID
- unique identifier of the element that should be the anchor for the new element. Set to null if no anchor, or the Anchors classification is included in the initial classifications.isOwnAnchor
- boolean flag to day that the element should be classified as its own anchor once its element is created in the repository.anchorScopeGUID
- unique identifier of any anchor scope to use for searchingproperties
- properties for the new element.parentGUID
- unique identifier of optional parent entityparentRelationshipTypeName
- type of relationship to connect the new element to the parentparentRelationshipProperties
- properties to include in parent relationshipparentAtEnd1
- which end should the parent GUID go in the relationshipforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- unique identifier of the newly created element
- Throws:
InvalidParameterException
- one of the parameters is invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
createSolutionComponentFromTemplate
public String createSolutionComponentFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, boolean isOwnAnchor, String anchorScopeGUID, Date effectiveFrom, Date effectiveTo, String templateGUID, ElementProperties replacementProperties, Map<String, String> placeholderProperties, String parentGUID, String parentRelationshipTypeName, ElementProperties parentRelationshipProperties, boolean parentAtEnd1, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionCreate a new metadata element to represent a solution component using an existing element as a template. The template defines additional classifications and relationships that should be added to the new solution component.- Parameters:
userId
- calling userexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementanchorGUID
- unique identifier of the element that should be the anchor for the new element. Set to null if no anchor, or the Anchors classification is included in the initial classifications.isOwnAnchor
- boolean flag to day that the element should be classified as its own anchor once its element is created in the repository.anchorScopeGUID
- unique identifier of any anchor scope to use for searchingeffectiveFrom
- the date when this element is active - null for active on creationeffectiveTo
- the date when this element becomes inactive - null for active until deletedtemplateGUID
- the unique identifier of the existing asset to copy (this will copy all the attachments such as nested content, schema connection etc)replacementProperties
- properties of the new metadata element. These override the template valuesplaceholderProperties
- property name-to-property value map to replace any placeholder values in the template element - and their anchored elements, which are also copied as part of this operation.parentGUID
- unique identifier of optional parent entityparentRelationshipTypeName
- type of relationship to connect the new element to the parentparentRelationshipProperties
- properties to include in parent relationshipparentAtEnd1
- which end should the parent GUID go in the relationshipforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- unique identifier of the new metadata element
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
updateSolutionComponent
public void updateSolutionComponent(String userId, String externalSourceGUID, String externalSourceName, String solutionComponentGUID, boolean replaceAllProperties, SolutionComponentProperties properties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Update the properties of a solution component.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsolutionComponentGUID
- unique identifier of the solution component (returned from create)replaceAllProperties
- flag to indicate whether to completely replace the existing properties with the new properties, or just update the individual properties specified on the request.properties
- properties for the element.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
linkSubcomponent
public void linkSubcomponent(String userId, String externalSourceGUID, String externalSourceName, String parentSolutionComponentGUID, String solutionComponentActorGUID, RelationshipProperties relationshipProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Attach a solution component to a solution component.- Parameters:
userId
- userId of user making requestexternalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementparentSolutionComponentGUID
- unique identifier of the parentsolutionComponentActorGUID
- unique identifier of the solution componentrelationshipProperties
- description of the relationship.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
detachSubcomponent
public void detachSubcomponent(String userId, String externalSourceGUID, String externalSourceName, String parentSolutionComponentGUID, String subcomponentGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Detach a solution component from a solution component.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementparentSolutionComponentGUID
- unique identifier of the parent solution component.subcomponentGUID
- unique identifier of the nested solution component.forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
deleteSolutionComponent
public void deleteSolutionComponent(String userId, String externalSourceGUID, String externalSourceName, String solutionComponentGUID, boolean cascadedDelete, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Delete a solution component.- Parameters:
userId
- userId of user making request.externalSourceGUID
- unique identifier of the software capability that owns this elementexternalSourceName
- unique name of the software capability that owns this elementsolutionComponentGUID
- unique identifier of the elementcascadedDelete
- can the solution component be deleted if it has solution components linked to it?forLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getSolutionComponentsByName
public List<SolutionComponentElement> getSolutionComponentsByName(String userId, String name, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Returns the list of solution components with a particular name.- Parameters:
userId
- userId of user making requestname
- name of the element to return - match is full text match in qualifiedName or nametemplateFilter
- should templates be returned?limitResultsByStatus
- control the status of the elements to retrieve - default is everything but DeletedasOfTime
- repository time to usesequencingOrder
- order to retrieve resultssequencingProperty
- property to use for sequencing orderstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- a list of elements
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getSolutionComponentByGUID
public SolutionComponentElement getSolutionComponentByGUID(String userId, String solutionComponentGUID, Date asOfTime, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the properties of a specific solution component.- Parameters:
userId
- userId of user making requestsolutionComponentGUID
- unique identifier of the required elementasOfTime
- repository time to useforLineage
- the query is to support lineage retrievalforDuplicateProcessing
- the query is for duplicate processing and so must not deduplicateeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- retrieved properties
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
findSolutionComponents
public List<SolutionComponentElement> findSolutionComponents(String userId, String searchString, TemplateFilter templateFilter, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of solution component metadata elements that contain the search string. The solutions components returned include information about the consumers, actors and other solution components that are associated with them. The returned solution components include a list of the subcomponents, peer components and solution roles that are associated with it. The search string is treated as a regular expression.- Parameters:
userId
- calling usersearchString
- string to find in the propertiestemplateFilter
- should templates be returned?limitResultsByStatus
- control the status of the elements to retrieve - default is everything but DeletedasOfTime
- repository time to usesequencingOrder
- order to retrieve resultssequencingProperty
- property to use for sequencing orderstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- list of matching metadata elements
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
getSolutionComponentImplementations
public List<RelatedMetadataElementSummary> getSolutionComponentImplementations(String userId, String solutionComponentGUID, List<ElementStatus> limitResultsByStatus, Date asOfTime, SequencingOrder sequencingOrder, String sequencingProperty, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of metadata elements that are associated with the solution component via the ImplementedBy relationship.- Parameters:
userId
- calling usersolutionComponentGUID
- unique identifier of the solution component to querylimitResultsByStatus
- control the status of the elements to retrieve - default is everything but DeletedasOfTime
- repository time to usesequencingOrder
- order to retrieve resultssequencingProperty
- property to use for sequencing orderstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- the retrieved elements are for lineage processing so include archived elementsforDuplicateProcessing
- the retrieved element is for duplicate processing so do not combine results from known duplicates.effectiveTime
- only return an element if it is effective at this time. Null means anytime. Use "new Date()" for now.- Returns:
- list of matching metadata elements
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-