Class RepositoryEntitiesIterator
java.lang.Object
org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryIterator
org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryIteratorForEntities
org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryEntitiesIterator
RepositoryEntitiesIterator is an iterator class for iteratively retrieving entities (possibly restricting
the type of entities returned). It is used where the caller needs to filter the results coming from the repository and may need to
make more than one call to the repository in order to accumulate the number of requested results.
Note this class is intended for a single request's use - it is not thread-safe.
-
Field Summary
Fields inherited from class org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryIteratorForEntities
entitiesCache, entityTypeGUID, entityTypeName, limitResultsByClassification, limitResultsByStatus, sequencingPropertyName
Fields inherited from class org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryIterator
effectiveTime, forDuplicateProcessing, forLineage, invalidParameterHandler, MAX_PAGE_SIZE, methodName, pageSize, repositoryHandler, startingFrom, userId
-
Constructor Summary
ConstructorDescriptionRepositoryEntitiesIterator
(RepositoryHandler repositoryHandler, InvalidParameterHandler invalidParameterHandler, String userId, String entityTypeGUID, String entityTypeName, String sequencingPropertyName, List<InstanceStatus> limitResultsByStatus, List<String> limitResultsByClassification, boolean forLineage, boolean forDuplicateProcessing, int startingFrom, int pageSize, Date effectiveTime, String methodName) Constructor takes the parameters used to call the repository handler. -
Method Summary
Methods inherited from class org.odpi.openmetadata.commonservices.repositoryhandler.RepositoryIteratorForEntities
getNext
-
Constructor Details
-
RepositoryEntitiesIterator
public RepositoryEntitiesIterator(RepositoryHandler repositoryHandler, InvalidParameterHandler invalidParameterHandler, String userId, String entityTypeGUID, String entityTypeName, String sequencingPropertyName, List<InstanceStatus> limitResultsByStatus, List<String> limitResultsByClassification, boolean forLineage, boolean forDuplicateProcessing, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException Constructor takes the parameters used to call the repository handler.- Parameters:
repositoryHandler
- interface to the open metadata repositories.invalidParameterHandler
- invalid parameter handleruserId
- user making the requestentityTypeGUID
- identifier for the relationship to followentityTypeName
- type name for the relationship to followsequencingPropertyName
- name of property used to sequence the results - null means no sequencinglimitResultsByStatus
- only return elements that have the requested status (null means all statuseslimitResultsByClassification
- only return elements that have the requested classification(s)forLineage
- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing
- the request is for duplicate processing and so must not deduplicatestartingFrom
- initial position in the stored list.pageSize
- maximum number of definitions to return on this call.effectiveTime
- the time that the retrieved elements must be effective formethodName
- name of calling method- Throws:
InvalidParameterException
- when page size or start from parameters do not meet criteria
-
-
Method Details
-
moreToReceive
public boolean moreToReceive() throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionDetermine if there is more to receive. It will populate the iterator's cache with more content.- Specified by:
moreToReceive
in classRepositoryIteratorForEntities
- Returns:
- boolean flag
- Throws:
InvalidParameterException
- the bean properties are invalidUserNotAuthorizedException
- the repository is not allowing the user to access the metadataPropertyServerException
- there is a problem in the repository
-