Class MlModelRepository

java.lang.Object
org.openmetadata.service.jdbi3.EntityRepository<MlModel>
org.openmetadata.service.jdbi3.MlModelRepository

public class MlModelRepository extends EntityRepository<MlModel>
  • Constructor Details

    • MlModelRepository

      public MlModelRepository()
  • Method Details

    • findMlFeature

      public static MlFeature findMlFeature(List<MlFeature> features, String featureName)
    • setFullyQualifiedName

      public void setFullyQualifiedName(MlModel mlModel)
      Description copied from class: EntityRepository
      Set fullyQualifiedName of an entity
      Overrides:
      setFullyQualifiedName in class EntityRepository<MlModel>
    • setFields

      public void setFields(MlModel mlModel, EntityUtil.Fields fields)
      Description copied from class: EntityRepository
      Set 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:
      setFields in class EntityRepository<MlModel>
    • clearFields

      public void clearFields(MlModel mlModel, EntityUtil.Fields fields)
      Description copied from class: EntityRepository
      Set 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:
      clearFields in class EntityRepository<MlModel>
    • restorePatchAttributes

      public void restorePatchAttributes(MlModel original, MlModel updated)
      Description copied from class: EntityRepository
      PATCH 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:
      restorePatchAttributes in class EntityRepository<MlModel>
    • prepare

      public void prepare(MlModel mlModel, boolean update)
      Description copied from class: EntityRepository
      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.

      The implementation of this method must perform the following:

      1. 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 .
      2. Validate all the attributes of an entity.
      3. 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.
      At the end of this operation, entity is expected to be valid and fully constructed with all the fields that will be sent as payload in the POST, PUT, and PATCH operations response.
      Specified by:
      prepare in class EntityRepository<MlModel>
      See Also:
    • storeEntity

      public void storeEntity(MlModel mlModel, boolean update)
      Description copied from class: EntityRepository
      An 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:
      storeEntity in class EntityRepository<MlModel>
      See Also:
    • storeRelationships

      public void storeRelationships(MlModel mlModel)
      Description copied from class: EntityRepository
      This 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:
      storeRelationships in class EntityRepository<MlModel>
      See Also:
    • getUpdater

      public EntityRepository<MlModel>.EntityUpdater getUpdater(MlModel original, MlModel updated, EntityRepository.Operation operation)
      Overrides:
      getUpdater in class EntityRepository<MlModel>
    • getParentEntity

      public EntityInterface getParentEntity(MlModel entity, String fields)
      Overrides:
      getParentEntity in class EntityRepository<MlModel>
    • getAllTags

      public List<TagLabel> getAllTags(EntityInterface entity)
      Overrides:
      getAllTags in class EntityRepository<MlModel>
    • getTaskWorkflow

      public FeedRepository.TaskWorkflow getTaskWorkflow(FeedRepository.ThreadContext threadContext)
      Overrides:
      getTaskWorkflow in class EntityRepository<MlModel>