Package org.openmetadata.service.jdbi3
Class PipelineRepository
- java.lang.Object
-
- org.openmetadata.service.jdbi3.EntityRepository<Pipeline>
-
- org.openmetadata.service.jdbi3.PipelineRepository
-
public class PipelineRepository extends EntityRepository<Pipeline>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classPipelineRepository.PipelineUpdaterHandles entity updated from PUT and POST operation.-
Nested classes/interfaces inherited from class org.openmetadata.service.jdbi3.EntityRepository
EntityRepository.EntityUpdater, EntityRepository.Operation
-
-
Field Summary
Fields Modifier and Type Field Description static StringPIPELINE_STATUS_EXTENSION-
Fields inherited from class org.openmetadata.service.jdbi3.EntityRepository
allowedFields, CACHE_WITH_ID, CACHE_WITH_NAME, dao, daoCollection, entityType, putFields, quoteFqn, supportsExtension, supportsFollower, supportsOwner, supportsSoftDelete, supportsTags, supportsVotes
-
-
Constructor Summary
Constructors Constructor Description PipelineRepository(CollectionDAO dao)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PipelineaddPipelineStatus(String fqn, PipelineStatus pipelineStatus)voidapplyTags(Pipeline pipeline)PipelineclearFields(Pipeline pipeline, EntityUtil.Fields fields)Set the requested fields in an entity.PipelinedeletePipelineStatus(String fqn, Long timestamp)List<TagLabel>getAllTags(EntityInterface entity)ResultList<PipelineStatus>getPipelineStatuses(String fqn, Long starTs, Long endTs)EntityRepository.EntityUpdatergetUpdater(Pipeline original, Pipeline updated, EntityRepository.Operation operation)voidprepare(Pipeline pipeline)This method is used for validating an entity to be created during POST, PUT, and PATCH operations and prepare the entity with all the required attributes and relationships.voidrestorePatchAttributes(Pipeline original, Pipeline updated)PATCH operations can't overwrite certain fields, such as entity ID, fullyQualifiedNames etc.PipelinesetFields(Pipeline pipeline, EntityUtil.Fields fields)Set the requested fields in an entity.voidsetFullyQualifiedName(Pipeline pipeline)Set fullyQualifiedName of an entityvoidstoreEntity(Pipeline pipeline, boolean update)An entity is stored in the backend database as JSON document.voidstoreRelationships(Pipeline pipeline)This method is called to store all the relationships of an entity.voidupdate(TaskDetails task, MessageParser.EntityLink entityLink, String newValue, String user)Update an entity based suggested description and tags in the task-
Methods inherited from class org.openmetadata.service.jdbi3.EntityRepository
addDerivedTags, addFollower, addRelationship, addRelationship, addRelationship, applyTags, bulkAddToRelationship, checkSystemEntityDeletion, cleanup, clearFieldsInternal, create, createInternal, createOrUpdate, createOrUpdateInternal, delete, deleteByName, deleteExtensionAtTimestamp, deleteExtensionBeforeTimestamp, deleteFollower, deleteFrom, deleteInternal, deleteInternalByName, deleteRelationship, deleteTo, ensureSingleRelationship, exportToCsv, find, findBoth, findByName, findByNameOrNull, findFrom, findFromRecords, findTo, findToRecords, get, get, getAllowedFieldsCopy, getByName, getByName, getChildren, getCommonFields, getContainer, getCustomPropertyFQN, getCustomPropertyFQNPrefix, getEntitiesFromSeedData, getEntitiesFromSeedData, getEntitiesFromSeedData, getExtension, getExtensionAtTimestamp, getExtensionAtTimestampWithOperation, getFields, getFields, getFollowers, getFromEntityRef, getHref, getIngestionPipelines, getLatestExtensionFromTimeseries, getOwner, getOwner, getParent, getReference, getReferenceByName, getResultList, getResultList, getResultsFromAndToTimestamps, getResultsFromAndToTimestamps, getReviewers, getTags, getTags, getToEntityRef, getVersion, getVotes, importFromCsv, initializeEntity, initSeedDataFromResources, listAfter, listAfterWithSkipFailure, listAll, listBefore, listVersions, patch, populateOwner, postCreate, postDelete, postUpdate, preDelete, prepareInternal, removeExtension, restoreEntity, setFieldsInternal, setInheritedFields, store, storeExtension, storeOwner, storeRelationshipsInternal, storeTimeSeries, storeTimeSeriesWithOperation, update, updateOwner, updateVote, validateOwner, validateRoles, validateUsers, withHref
-
-
-
-
Field Detail
-
PIPELINE_STATUS_EXTENSION
public static final String PIPELINE_STATUS_EXTENSION
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
PipelineRepository
public PipelineRepository(CollectionDAO dao)
-
-
Method Detail
-
setFullyQualifiedName
public void setFullyQualifiedName(Pipeline pipeline)
Description copied from class:EntityRepositorySet fullyQualifiedName of an entity- Overrides:
setFullyQualifiedNamein classEntityRepository<Pipeline>
-
update
public void update(TaskDetails task, MessageParser.EntityLink entityLink, String newValue, String user)
Description copied from class:EntityRepositoryUpdate an entity based suggested description and tags in the task- Overrides:
updatein classEntityRepository<Pipeline>
-
setFields
public Pipeline setFields(Pipeline pipeline, EntityUtil.Fields fields)
Description copied from class:EntityRepositorySet the requested fields in an entity. This is used for requesting specific fields in the object during GET operations. It is also used during PUT and PATCH operations to set up fields that can be updated.- Specified by:
setFieldsin classEntityRepository<Pipeline>
-
clearFields
public Pipeline clearFields(Pipeline pipeline, EntityUtil.Fields fields)
Description copied from class:EntityRepositorySet the requested fields in an entity. This is used for requesting specific fields in the object during GET operations. It is also used during PUT and PATCH operations to set up fields that can be updated.- Specified by:
clearFieldsin classEntityRepository<Pipeline>
-
addPipelineStatus
public Pipeline addPipelineStatus(String fqn, PipelineStatus pipelineStatus)
-
getPipelineStatuses
public ResultList<PipelineStatus> getPipelineStatuses(String fqn, Long starTs, Long endTs)
-
restorePatchAttributes
public void restorePatchAttributes(Pipeline original, Pipeline updated)
Description copied from class:EntityRepositoryPATCH operations can't overwrite certain fields, such as entity ID, fullyQualifiedNames etc. Instead of throwing an error, we take lenient approach of ignoring the user error and restore those attributes based on what is already stored in the original entity.- Overrides:
restorePatchAttributesin classEntityRepository<Pipeline>
-
prepare
public void prepare(Pipeline pipeline)
Description copied from class:EntityRepositoryThis method is used for validating an entity to be created during POST, PUT, and PATCH operations and prepare the entity with all the required attributes and relationships.The implementation of this method must perform the following:
- Prepare the values for attributes that are not required in the request but can be derived on the server side. Example - >FullyQualifiedNames of an entity can be derived from the hierarchy that an entity belongs to .
- Validate all the attributes of an entity.
- Validate all the relationships of an entity. As an example - during table creation, relationships such as Tags, Owner, Databasea table belongs to are validated. During validation additional information that is not required in the create/update request are set up in the corresponding relationship fields.
- Specified by:
preparein classEntityRepository<Pipeline>- See Also:
for an example implementation
-
storeEntity
public void storeEntity(Pipeline pipeline, boolean update)
Description copied from class:EntityRepositoryAn entity is stored in the backend database as JSON document. The JSON includes some attributes of the entity and does not include attributes such as href. The relationship fields of an entity is never stored in the JSON document. It is always reconstructed based on relationship edges from the backend database.
As an example, when table entity is stored, the attributes such as href and the relationships such as owner, database, and tags are set to null. These attributes are restored back after the JSON document is stored to be sent as response.- Specified by:
storeEntityin classEntityRepository<Pipeline>- See Also:
for an example implementation
-
storeRelationships
public void storeRelationships(Pipeline pipeline)
Description copied from class:EntityRepositoryThis method is called to store all the relationships of an entity. It is expected that all relationships are already validated and completely setup before this method is called and no validation of relationships is required.- Specified by:
storeRelationshipsin classEntityRepository<Pipeline>- See Also:
for an example implementation
-
applyTags
public void applyTags(Pipeline pipeline)
- Overrides:
applyTagsin classEntityRepository<Pipeline>
-
getUpdater
public EntityRepository.EntityUpdater getUpdater(Pipeline original, Pipeline updated, EntityRepository.Operation operation)
- Overrides:
getUpdaterin classEntityRepository<Pipeline>
-
getAllTags
public List<TagLabel> getAllTags(EntityInterface entity)
- Overrides:
getAllTagsin classEntityRepository<Pipeline>
-
-