Class RestoreRelationshipExecutor
java.lang.Object
org.odpi.openmetadata.repositoryservices.enterprise.repositoryconnector.executors.RepositoryExecutorBase
org.odpi.openmetadata.repositoryservices.enterprise.repositoryconnector.executors.RestoreRelationshipExecutor
- All Implemented Interfaces:
RepositoryExecutor
RestoreRelationshipExecutor provides the executor for the restoreRelationship method.
This is a tricky request because the relationship has been deleted so it is
not retrievable until restored. Also, this is an optional function
so the repository where the relationship has its home may not support restore.
The only possible approach is to step through the repositories hoping that one
will respond positively.
-
Field Summary
Fields inherited from class org.odpi.openmetadata.repositoryservices.enterprise.repositoryconnector.executors.RepositoryExecutorBase
methodName, userId
-
Constructor Summary
ConstructorDescriptionRestoreRelationshipExecutor
(String userId, String relationshipGUID, AuditLog auditLog, String methodName) Constructor takes the parameters for the request. -
Method Summary
Modifier and TypeMethodDescriptionReturn the result of the execution.boolean
issueRequestToRepository
(String metadataCollectionId, OMRSMetadataCollection metadataCollection) Perform the required action for the supplied repository.Methods inherited from class org.odpi.openmetadata.repositoryservices.enterprise.repositoryconnector.executors.RepositoryExecutorBase
getMethodName
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.odpi.openmetadata.repositoryservices.enterprise.repositoryconnector.executors.RepositoryExecutor
augmentResultFromRepository, getResultsForAugmentation
-
Constructor Details
-
RestoreRelationshipExecutor
public RestoreRelationshipExecutor(String userId, String relationshipGUID, AuditLog auditLog, String methodName) Constructor takes the parameters for the request.- Parameters:
userId
- unique identifier for requesting userrelationshipGUID
- unique identifier (guid) for the relationshipauditLog
- logging destinationmethodName
- calling method
-
-
Method Details
-
issueRequestToRepository
public boolean issueRequestToRepository(String metadataCollectionId, OMRSMetadataCollection metadataCollection) Perform the required action for the supplied repository. Create requests occur in the first repository that accepts the call. Some repositories may produce exceptions. These exceptions are saved and will be returned if there are no positive results from any repository.- Specified by:
issueRequestToRepository
in interfaceRepositoryExecutor
- Specified by:
issueRequestToRepository
in classRepositoryExecutorBase
- Parameters:
metadataCollectionId
- unique identifier for the metadata collection for the repositorymetadataCollection
- metadata collection object for the repository- Returns:
- boolean true means that the required results have been achieved
-
getRestoredRelationship
public Relationship getRestoredRelationship() throws InvalidParameterException, RepositoryErrorException, RelationshipNotKnownException, RelationshipNotDeletedException, FunctionNotSupportedException, UserNotAuthorizedExceptionReturn the result of the execution. Hopefully this is a result - but may be an exception- Returns:
- Relationship structure with the restored header, requested entities and properties.
- Throws:
InvalidParameterException
- the guid is null.RepositoryErrorException
- there is a problem communicating with the metadata repository where the metadata collection is stored.RelationshipNotKnownException
- the requested relationship is not known in the metadata collection.RelationshipNotDeletedException
- the requested relationship is not in DELETED status.FunctionNotSupportedException
- the repository does not support soft-deletes.UserNotAuthorizedException
- the userId is not permitted to perform this operation.
-