Class FlowField

All Implemented Interfaces:
IAsset, ICatalog, IFlow, IFlowField, IReferenceable, AuditDetail, Serializable, Comparable<Reference>

@Generated("com.atlan.generators.ModelGeneratorV2") public class FlowField extends Asset implements IFlowField, ICatalog, IFlow, IAsset, IReferenceable
A single field of data within a broader ephemeral dataset.
See Also:
  • Field Details

  • Constructor Details

  • Method Details

    • trimToReference

      public FlowField trimToReference() throws InvalidRequestException
      Builds the minimal object necessary to create a relationship to a FlowField, from a potentially more-complete FlowField object.
      Overrides:
      trimToReference in class Asset
      Returns:
      the minimal object necessary to relate to the FlowField
      Throws:
      InvalidRequestException - if any of the minimal set of required properties for a FlowField relationship are not found in the initial object
    • select

      public static FluentSearch.FluentSearchBuilder<?,?> select(AtlanClient client)
      Start a fluent search that will return all FlowField assets. Additional conditions can be chained onto the returned search before any asset retrieval is attempted, ensuring all conditions are pushed-down for optimal retrieval. Only active (non-archived) FlowField assets will be included.
      Parameters:
      client - connectivity to the Atlan tenant from which to retrieve the assets
      Returns:
      a fluent search that includes all FlowField assets
    • select

      public static FluentSearch.FluentSearchBuilder<?,?> select(AtlanClient client, boolean includeArchived)
      Start a fluent search that will return all FlowField assets. Additional conditions can be chained onto the returned search before any asset retrieval is attempted, ensuring all conditions are pushed-down for optimal retrieval.
      Parameters:
      client - connectivity to the Atlan tenant from which to retrieve the assets
      includeArchived - when true, archived (soft-deleted) FlowFields will be included
      Returns:
      a fluent search that includes all FlowField assets
    • refByGuid

      public static FlowField refByGuid(String guid)
      Reference to a FlowField by GUID. Use this to create a relationship to this FlowField, where the relationship should be replaced.
      Parameters:
      guid - the GUID of the FlowField to reference
      Returns:
      reference to a FlowField that can be used for defining a relationship to a FlowField
    • refByGuid

      public static FlowField refByGuid(String guid, Reference.SaveSemantic semantic)
      Reference to a FlowField by GUID. Use this to create a relationship to this FlowField, where you want to further control how that relationship should be updated (i.e. replaced, appended, or removed).
      Parameters:
      guid - the GUID of the FlowField to reference
      semantic - how to save this relationship (replace all with this, append it, or remove it)
      Returns:
      reference to a FlowField that can be used for defining a relationship to a FlowField
    • refByQualifiedName

      public static FlowField refByQualifiedName(String qualifiedName)
      Reference to a FlowField by qualifiedName. Use this to create a relationship to this FlowField, where the relationship should be replaced.
      Parameters:
      qualifiedName - the qualifiedName of the FlowField to reference
      Returns:
      reference to a FlowField that can be used for defining a relationship to a FlowField
    • refByQualifiedName

      public static FlowField refByQualifiedName(String qualifiedName, Reference.SaveSemantic semantic)
      Reference to a FlowField by qualifiedName. Use this to create a relationship to this FlowField, where you want to further control how that relationship should be updated (i.e. replaced, appended, or removed).
      Parameters:
      qualifiedName - the qualifiedName of the FlowField to reference
      semantic - how to save this relationship (replace all with this, append it, or remove it)
      Returns:
      reference to a FlowField that can be used for defining a relationship to a FlowField
    • get

      public static FlowField get(AtlanClient client, String id) throws AtlanException
      Retrieves a FlowField by one of its identifiers, complete with all of its relationships.
      Parameters:
      client - connectivity to the Atlan tenant from which to retrieve the asset
      id - of the FlowField to retrieve, either its GUID or its full qualifiedName
      Returns:
      the requested full FlowField, complete with all of its relationships
      Throws:
      AtlanException - on any error during the API invocation, such as the NotFoundException if the FlowField does not exist or the provided GUID is not a FlowField
    • get

      public static FlowField get(AtlanClient client, String id, boolean includeAllRelationships) throws AtlanException
      Retrieves a FlowField by one of its identifiers, optionally complete with all of its relationships.
      Parameters:
      client - connectivity to the Atlan tenant from which to retrieve the asset
      id - of the FlowField to retrieve, either its GUID or its full qualifiedName
      includeAllRelationships - if true, all the asset's relationships will also be retrieved; if false, no relationships will be retrieved
      Returns:
      the requested full FlowField, optionally complete with all of its relationships
      Throws:
      AtlanException - on any error during the API invocation, such as the NotFoundException if the FlowField does not exist or the provided GUID is not a FlowField
    • get

      public static FlowField get(AtlanClient client, String id, Collection<AtlanField> attributes) throws AtlanException
      Retrieves a FlowField by one of its identifiers, with only the requested attributes (and relationships).
      Parameters:
      client - connectivity to the Atlan tenant from which to retrieve the asset
      id - of the FlowField to retrieve, either its GUID or its full qualifiedName
      attributes - to retrieve for the FlowField, including any relationships
      Returns:
      the requested FlowField, with only its minimal information and the requested attributes (and relationships)
      Throws:
      AtlanException - on any error during the API invocation, such as the NotFoundException if the FlowField does not exist or the provided GUID is not a FlowField
    • get

      public static FlowField get(AtlanClient client, String id, Collection<AtlanField> attributes, Collection<AtlanField> attributesOnRelated) throws AtlanException
      Retrieves a FlowField by one of its identifiers, with only the requested attributes (and relationships).
      Parameters:
      client - connectivity to the Atlan tenant from which to retrieve the asset
      id - of the FlowField to retrieve, either its GUID or its full qualifiedName
      attributes - to retrieve for the FlowField, including any relationships
      attributesOnRelated - to retrieve on each relationship retrieved for the FlowField
      Returns:
      the requested FlowField, with only its minimal information and the requested attributes (and relationships)
      Throws:
      AtlanException - on any error during the API invocation, such as the NotFoundException if the FlowField does not exist or the provided GUID is not a FlowField
    • restore

      public static boolean restore(AtlanClient client, String qualifiedName) throws AtlanException
      Restore the archived (soft-deleted) FlowField to active.
      Parameters:
      client - connectivity to the Atlan tenant on which to restore the asset
      qualifiedName - for the FlowField
      Returns:
      true if the FlowField is now active, and false otherwise
      Throws:
      AtlanException - on any API problems
    • updater

      public static FlowField.FlowFieldBuilder<?,?> updater(String qualifiedName, String name)
      Builds the minimal object necessary to update a FlowField.
      Parameters:
      qualifiedName - of the FlowField
      name - of the FlowField
      Returns:
      the minimal request necessary to update the FlowField, as a builder
    • trimToRequired

      public FlowField.FlowFieldBuilder<?,?> trimToRequired() throws InvalidRequestException
      Builds the minimal object necessary to apply an update to a FlowField, from a potentially more-complete FlowField object.
      Overrides:
      trimToRequired in class Asset
      Returns:
      the minimal object necessary to update the FlowField, as a builder
      Throws:
      InvalidRequestException - if any of the minimal set of required properties for FlowField are not found in the initial object
    • removeDescription

      public static FlowField removeDescription(AtlanClient client, String qualifiedName, String name) throws AtlanException
      Remove the system description from a FlowField.
      Parameters:
      client - connectivity to the Atlan tenant on which to remove the asset's description
      qualifiedName - of the FlowField
      name - of the FlowField
      Returns:
      the updated FlowField, or null if the removal failed
      Throws:
      AtlanException - on any API problems
    • removeUserDescription

      public static FlowField removeUserDescription(AtlanClient client, String qualifiedName, String name) throws AtlanException
      Remove the user's description from a FlowField.
      Parameters:
      client - connectivity to the Atlan tenant on which to remove the asset's description
      qualifiedName - of the FlowField
      name - of the FlowField
      Returns:
      the updated FlowField, or null if the removal failed
      Throws:
      AtlanException - on any API problems
    • removeOwners

      public static FlowField removeOwners(AtlanClient client, String qualifiedName, String name) throws AtlanException
      Remove the owners from a FlowField.
      Parameters:
      client - connectivity to the Atlan tenant from which to remove the FlowField's owners
      qualifiedName - of the FlowField
      name - of the FlowField
      Returns:
      the updated FlowField, or null if the removal failed
      Throws:
      AtlanException - on any API problems
    • updateCertificate

      public static FlowField updateCertificate(AtlanClient client, String qualifiedName, CertificateStatus certificate, String message) throws AtlanException
      Update the certificate on a FlowField.
      Parameters:
      client - connectivity to the Atlan tenant on which to update the FlowField's certificate
      qualifiedName - of the FlowField
      certificate - to use
      message - (optional) message, or null if no message
      Returns:
      the updated FlowField, or null if the update failed
      Throws:
      AtlanException - on any API problems
    • removeCertificate

      public static FlowField removeCertificate(AtlanClient client, String qualifiedName, String name) throws AtlanException
      Remove the certificate from a FlowField.
      Parameters:
      client - connectivity to the Atlan tenant from which to remove the FlowField's certificate
      qualifiedName - of the FlowField
      name - of the FlowField
      Returns:
      the updated FlowField, or null if the removal failed
      Throws:
      AtlanException - on any API problems
    • updateAnnouncement

      public static FlowField updateAnnouncement(AtlanClient client, String qualifiedName, AtlanAnnouncementType type, String title, String message) throws AtlanException
      Update the announcement on a FlowField.
      Parameters:
      client - connectivity to the Atlan tenant on which to update the FlowField's announcement
      qualifiedName - of the FlowField
      type - type of announcement to set
      title - (optional) title of the announcement to set (or null for no title)
      message - (optional) message of the announcement to set (or null for no message)
      Returns:
      the result of the update, or null if the update failed
      Throws:
      AtlanException - on any API problems
    • removeAnnouncement

      public static FlowField removeAnnouncement(AtlanClient client, String qualifiedName, String name) throws AtlanException
      Remove the announcement from a FlowField.
      Parameters:
      client - connectivity to the Atlan client from which to remove the FlowField's announcement
      qualifiedName - of the FlowField
      name - of the FlowField
      Returns:
      the updated FlowField, or null if the removal failed
      Throws:
      AtlanException - on any API problems
    • replaceTerms

      public static FlowField replaceTerms(AtlanClient client, String qualifiedName, String name, List<IGlossaryTerm> terms) throws AtlanException
      Replace the terms linked to the FlowField.
      Parameters:
      client - connectivity to the Atlan tenant on which to replace the FlowField's assigned terms
      qualifiedName - for the FlowField
      name - human-readable name of the FlowField
      terms - the list of terms to replace on the FlowField, or null to remove all terms from the FlowField
      Returns:
      the FlowField that was updated (note that it will NOT contain details of the replaced terms)
      Throws:
      AtlanException - on any API problems
    • appendTerms

      @Deprecated public static FlowField appendTerms(AtlanClient client, String qualifiedName, List<IGlossaryTerm> terms) throws AtlanException
      Link additional terms to the FlowField, without replacing existing terms linked to the FlowField. Note: this operation must make two API calls — one to retrieve the FlowField's existing terms, and a second to append the new terms.
      Parameters:
      client - connectivity to the Atlan tenant on which to append terms to the FlowField
      qualifiedName - for the FlowField
      terms - the list of terms to append to the FlowField
      Returns:
      the FlowField that was updated (note that it will NOT contain details of the appended terms)
      Throws:
      AtlanException - on any API problems
    • removeTerms

      @Deprecated public static FlowField removeTerms(AtlanClient client, String qualifiedName, List<IGlossaryTerm> terms) throws AtlanException
      Remove terms from a FlowField, without replacing all existing terms linked to the FlowField. Note: this operation must make two API calls — one to retrieve the FlowField's existing terms, and a second to remove the provided terms.
      Parameters:
      client - connectivity to the Atlan tenant from which to remove terms from the FlowField
      qualifiedName - for the FlowField
      terms - the list of terms to remove from the FlowField, which must be referenced by GUID
      Returns:
      the FlowField that was updated (note that it will NOT contain details of the resulting terms)
      Throws:
      AtlanException - on any API problems
    • appendAtlanTags

      @Deprecated public static FlowField appendAtlanTags(AtlanClient client, String qualifiedName, List<String> atlanTagNames) throws AtlanException
      Add Atlan tags to a FlowField, without replacing existing Atlan tags linked to the FlowField. Note: this operation must make two API calls — one to retrieve the FlowField's existing Atlan tags, and a second to append the new Atlan tags.
      Parameters:
      client - connectivity to the Atlan tenant on which to append Atlan tags to the FlowField
      qualifiedName - of the FlowField
      atlanTagNames - human-readable names of the Atlan tags to add
      Returns:
      the updated FlowField
      Throws:
      AtlanException - on any API problems
    • appendAtlanTags

      @Deprecated public static FlowField appendAtlanTags(AtlanClient client, String qualifiedName, List<String> atlanTagNames, boolean propagate, boolean removePropagationsOnDelete, boolean restrictLineagePropagation) throws AtlanException
      Add Atlan tags to a FlowField, without replacing existing Atlan tags linked to the FlowField. Note: this operation must make two API calls — one to retrieve the FlowField's existing Atlan tags, and a second to append the new Atlan tags.
      Parameters:
      client - connectivity to the Atlan tenant on which to append Atlan tags to the FlowField
      qualifiedName - of the FlowField
      atlanTagNames - human-readable names of the Atlan tags to add
      propagate - whether to propagate the Atlan tag (true) or not (false)
      removePropagationsOnDelete - whether to remove the propagated Atlan tags when the Atlan tag is removed from this asset (true) or not (false)
      restrictLineagePropagation - whether to avoid propagating through lineage (true) or do propagate through lineage (false)
      Returns:
      the updated FlowField
      Throws:
      AtlanException - on any API problems
    • removeAtlanTag

      @Deprecated public static void removeAtlanTag(AtlanClient client, String qualifiedName, String atlanTagName) throws AtlanException
      Remove an Atlan tag from a FlowField.
      Parameters:
      client - connectivity to the Atlan tenant from which to remove an Atlan tag from a FlowField
      qualifiedName - of the FlowField
      atlanTagName - human-readable name of the Atlan tag to remove
      Throws:
      AtlanException - on any API problems, or if the Atlan tag does not exist on the FlowField
    • _internal

      public static FlowField.FlowFieldBuilder<?,?> _internal()
    • toBuilder

      public FlowField.FlowFieldBuilder<?,?> toBuilder()
      Overrides:
      toBuilder in class Reference
    • getFlowDataType

      public String getFlowDataType()
      Type of the data captured in this field.
      Specified by:
      getFlowDataType in interface IFlowField
    • getFlowDataset

      public IFlowDataset getFlowDataset()
      Ephemeral dataset that contains these fields.
      Specified by:
      getFlowDataset in interface IFlowField
    • getFlowDatasetName

      public String getFlowDatasetName()
      Simple name of the ephemeral dataset in which this field is contained.
      Specified by:
      getFlowDatasetName in interface IFlowField
    • getFlowDatasetQualifiedName

      public String getFlowDatasetQualifiedName()
      Unique name of the ephemeral dataset in which this field is contained.
      Specified by:
      getFlowDatasetQualifiedName in interface IFlowField
    • getFlowErrorMessage

      public String getFlowErrorMessage()
      Optional error message of the flow run.
      Specified by:
      getFlowErrorMessage in interface IFlow
      Specified by:
      getFlowErrorMessage in interface IFlowField
    • getFlowFinishedAt

      public Long getFlowFinishedAt()
      Date and time at which this point in the data processing or orchestration finished.
      Specified by:
      getFlowFinishedAt in interface IFlow
      Specified by:
      getFlowFinishedAt in interface IFlowField
    • getFlowFolderName

      public String getFlowFolderName()
      Simple name of the folder in which this asset is contained.
      Specified by:
      getFlowFolderName in interface IFlow
      Specified by:
      getFlowFolderName in interface IFlowField
    • getFlowFolderQualifiedName

      public String getFlowFolderQualifiedName()
      Unique name of the folder in which this asset is contained.
      Specified by:
      getFlowFolderQualifiedName in interface IFlow
      Specified by:
      getFlowFolderQualifiedName in interface IFlowField
    • getFlowId

      public String getFlowId()
      Unique ID for this flow asset, which will remain constant throughout the lifecycle of the asset.
      Specified by:
      getFlowId in interface IFlow
      Specified by:
      getFlowId in interface IFlowField
    • getFlowProjectName

      public String getFlowProjectName()
      Simple name of the project in which this asset is contained.
      Specified by:
      getFlowProjectName in interface IFlow
      Specified by:
      getFlowProjectName in interface IFlowField
    • getFlowProjectQualifiedName

      public String getFlowProjectQualifiedName()
      Unique name of the project in which this asset is contained.
      Specified by:
      getFlowProjectQualifiedName in interface IFlow
      Specified by:
      getFlowProjectQualifiedName in interface IFlowField
    • getFlowReusableUnitName

      public String getFlowReusableUnitName()
      Simple name of the reusable grouping of operations in which this ephemeral data is contained.
      Specified by:
      getFlowReusableUnitName in interface IFlow
      Specified by:
      getFlowReusableUnitName in interface IFlowField
    • getFlowReusableUnitQualifiedName

      public String getFlowReusableUnitQualifiedName()
      Unique name of the reusable grouping of operations in which this ephemeral data is contained.
      Specified by:
      getFlowReusableUnitQualifiedName in interface IFlow
      Specified by:
      getFlowReusableUnitQualifiedName in interface IFlowField
    • getFlowRunId

      public String getFlowRunId()
      Unique ID of the flow run, which could change on subsequent runs of the same flow.
      Specified by:
      getFlowRunId in interface IFlow
      Specified by:
      getFlowRunId in interface IFlowField
    • getFlowSchedule

      public String getFlowSchedule()
      Schedule for this point in the data processing or orchestration.
      Specified by:
      getFlowSchedule in interface IFlow
      Specified by:
      getFlowSchedule in interface IFlowField
    • getFlowStartedAt

      public Long getFlowStartedAt()
      Date and time at which this point in the data processing or orchestration started.
      Specified by:
      getFlowStartedAt in interface IFlow
      Specified by:
      getFlowStartedAt in interface IFlowField
    • getFlowStatus

      public String getFlowStatus()
      Overall status of this point in the data processing or orchestration.
      Specified by:
      getFlowStatus in interface IFlow
      Specified by:
      getFlowStatus in interface IFlowField
    • getInputToAirflowTasks

      public SortedSet<IAirflowTask> getInputToAirflowTasks()
      Tasks to which this asset provides input.
      Specified by:
      getInputToAirflowTasks in interface ICatalog
      Specified by:
      getInputToAirflowTasks in interface IFlowField
    • getInputToProcesses

      public SortedSet<ILineageProcess> getInputToProcesses()
      Processes to which this asset provides input.
      Specified by:
      getInputToProcesses in interface ICatalog
      Specified by:
      getInputToProcesses in interface IFlowField
    • getInputToSparkJobs

      public SortedSet<ISparkJob> getInputToSparkJobs()
      TBC
      Specified by:
      getInputToSparkJobs in interface ICatalog
      Specified by:
      getInputToSparkJobs in interface IFlowField
    • getModelImplementedAttributes

      public SortedSet<IModelAttribute> getModelImplementedAttributes()
      Attributes implemented by this asset.
      Specified by:
      getModelImplementedAttributes in interface ICatalog
      Specified by:
      getModelImplementedAttributes in interface IFlowField
    • getModelImplementedEntities

      public SortedSet<IModelEntity> getModelImplementedEntities()
      Entities implemented by this asset.
      Specified by:
      getModelImplementedEntities in interface ICatalog
      Specified by:
      getModelImplementedEntities in interface IFlowField
    • getOutputFromAirflowTasks

      public SortedSet<IAirflowTask> getOutputFromAirflowTasks()
      Tasks from which this asset is output.
      Specified by:
      getOutputFromAirflowTasks in interface ICatalog
      Specified by:
      getOutputFromAirflowTasks in interface IFlowField
    • getOutputFromProcesses

      public SortedSet<ILineageProcess> getOutputFromProcesses()
      Processes from which this asset is produced as output.
      Specified by:
      getOutputFromProcesses in interface ICatalog
      Specified by:
      getOutputFromProcesses in interface IFlowField
    • getOutputFromSparkJobs

      public SortedSet<ISparkJob> getOutputFromSparkJobs()
      TBC
      Specified by:
      getOutputFromSparkJobs in interface ICatalog
      Specified by:
      getOutputFromSparkJobs in interface IFlowField
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Asset
    • canEqual

      protected boolean canEqual(Object other)
      Overrides:
      canEqual in class Asset
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Asset
    • toString

      public String toString()
      Description copied from class: AtlanObject
      Overrides:
      toString in class Asset
    • getTypeName

      public String getTypeName()
      Fixed typeName for FlowFields.
      Specified by:
      getTypeName in interface AuditDetail
      Specified by:
      getTypeName in interface IAsset
      Specified by:
      getTypeName in interface ICatalog
      Specified by:
      getTypeName in interface IFlow
      Specified by:
      getTypeName in interface IFlowField
      Specified by:
      getTypeName in interface IReferenceable
      Overrides:
      getTypeName in class Reference