Class DataProduct

All Implemented Interfaces:
IAsset, ICatalog, IDataMesh, IDataProduct, IReferenceable, AuditDetail, Serializable, Comparable<Reference>

@Generated("com.atlan.generators.ModelGeneratorV2") public class DataProduct extends Asset implements IDataProduct, IDataMesh, ICatalog, IAsset, IReferenceable
Instance of a data product in Atlan.
See Also:
  • Field Details

  • Constructor Details

  • Method Details

    • trimToReference

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

      public static FluentSearch.FluentSearchBuilder<?,?> select()
      Start a fluent search that will return all DataProduct 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) DataProduct assets will be included.
      Returns:
      a fluent search that includes all DataProduct assets
    • select

      public static FluentSearch.FluentSearchBuilder<?,?> select(AtlanClient client)
      Start a fluent search that will return all DataProduct 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) DataProduct assets will be included.
      Parameters:
      client - connectivity to the Atlan tenant from which to retrieve the assets
      Returns:
      a fluent search that includes all DataProduct assets
    • select

      public static FluentSearch.FluentSearchBuilder<?,?> select(boolean includeArchived)
      Start a fluent search that will return all DataProduct 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:
      includeArchived - when true, archived (soft-deleted) DataProducts will be included
      Returns:
      a fluent search that includes all DataProduct assets
    • select

      public static FluentSearch.FluentSearchBuilder<?,?> select(AtlanClient client, boolean includeArchived)
      Start a fluent search that will return all DataProduct 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) DataProducts will be included
      Returns:
      a fluent search that includes all DataProduct assets
    • refByGuid

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

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

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

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

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

      public static DataProduct get(AtlanClient client, String id) throws AtlanException
      Retrieves a DataProduct 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 DataProduct to retrieve, either its GUID or its full qualifiedName
      Returns:
      the requested full DataProduct, complete with all of its relationships
      Throws:
      AtlanException - on any error during the API invocation, such as the NotFoundException if the DataProduct does not exist or the provided GUID is not a DataProduct
    • get

      public static DataProduct get(AtlanClient client, String id, boolean includeRelationships) throws AtlanException
      Retrieves a DataProduct 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 DataProduct to retrieve, either its GUID or its full qualifiedName
      includeRelationships - if true, all of the asset's relationships will also be retrieved; if false, no relationships will be retrieved
      Returns:
      the requested full DataProduct, optionally complete with all of its relationships
      Throws:
      AtlanException - on any error during the API invocation, such as the NotFoundException if the DataProduct does not exist or the provided GUID is not a DataProduct
    • restore

      public static boolean restore(String qualifiedName) throws AtlanException
      Restore the archived (soft-deleted) DataProduct to active.
      Parameters:
      qualifiedName - for the DataProduct
      Returns:
      true if the DataProduct is now active, and false otherwise
      Throws:
      AtlanException - on any API problems
    • restore

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

      public static DataProduct.DataProductBuilder<?,?> creator(String name, String domainQualifiedName, FluentSearch assetSelection) throws InvalidRequestException
      Builds the minimal object necessary for creating a DataProduct.
      Parameters:
      name - of the DataProduct
      domainQualifiedName - unique name of the DataDomain in which this product exists
      assetSelection - a query that defines which assets to include in the data product
      Returns:
      the minimal request necessary to create the DataProduct, as a builder
      Throws:
      InvalidRequestException - if the domain provided is without a qualifiedName
    • creator

      public static DataProduct.DataProductBuilder<?,?> creator(AtlanClient client, String name, String domainQualifiedName, FluentSearch assetSelection) throws InvalidRequestException
      Builds the minimal object necessary for creating a DataProduct.
      Parameters:
      client - connectivity to the Atlan tenant where the DataProduct is intended to be created
      name - of the DataProduct
      domainQualifiedName - unique name of the DataDomain in which this product exists
      assetSelection - a query that defines which assets to include in the data product
      Returns:
      the minimal request necessary to create the DataProduct, as a builder
      Throws:
      InvalidRequestException - if the domain provided is without a qualifiedName
    • creator

      public static DataProduct.DataProductBuilder<?,?> creator(String name, String domainQualifiedName, IndexSearchDSL assetSelection) throws InvalidRequestException
      Builds the minimal object necessary for creating a DataProduct.
      Parameters:
      name - of the DataProduct
      domainQualifiedName - unique name of the DataDomain in which this product exists
      assetSelection - a query that defines which assets to include in the data product
      Returns:
      the minimal request necessary to create the DataProduct, as a builder
      Throws:
      InvalidRequestException - if the domain provided is without a qualifiedName
    • creator

      public static DataProduct.DataProductBuilder<?,?> creator(AtlanClient client, String name, String domainQualifiedName, IndexSearchDSL assetSelection)
      Builds the minimal object necessary for creating a DataProduct.
      Parameters:
      client - connectivity to the Atlan tenant where the DataProduct is intended to be created
      name - of the DataProduct
      domainQualifiedName - unique name of the DataDomain in which this product exists
      assetSelection - a query that defines which assets to include in the data product
      Returns:
      the minimal request necessary to create the DataProduct, as a builder
    • creator

      public static DataProduct.DataProductBuilder<?,?> creator(String name, String domainQualifiedName, String assetSelection)
      Builds the minimal object necessary for creating a DataProduct.
      Parameters:
      name - of the DataProduct
      domainQualifiedName - unique name of the DataDomain in which this product exists
      assetSelection - a string containing a query that defines which assets to include in the data product
      Returns:
      the minimal request necessary to create the DataProduct, as a builder
    • updater

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

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

      public static List<DataProduct> findByName(String name) throws AtlanException
      Find a DataProduct by its human-readable name. Only the bare minimum set of attributes and no relationships will be retrieved for the domain, if found. Note that domains are not unique by name, so there may be multiple results.
      Parameters:
      name - of the DataProduct
      Returns:
      the DataProduct, if found
      Throws:
      AtlanException - on any API problems, or if the DataProduct does not exist
    • findByName

      public static List<DataProduct> findByName(String name, Collection<String> attributes) throws AtlanException
      Find a DataProduct by its human-readable name. Note that domains are not unique by name, so there may be multiple results.
      Parameters:
      name - of the DataProduct
      attributes - an optional collection of attributes (unchecked) to retrieve for the DataProduct
      Returns:
      the DataProduct, if found
      Throws:
      AtlanException - on any API problems, or if the DataProduct does not exist
    • findByName

      public static List<DataProduct> findByName(String name, List<AtlanField> attributes) throws AtlanException
      Find a DataProduct by its human-readable name. Note that domains are not unique by name, so there may be multiple results.
      Parameters:
      name - of the DataProduct
      attributes - an optional collection of attributes (checked) to retrieve for the DataProduct
      Returns:
      the DataProduct, if found
      Throws:
      AtlanException - on any API problems, or if the DataProduct does not exist
    • findByName

      public static List<DataProduct> findByName(AtlanClient client, String name) throws AtlanException
      Find a DataProduct by its human-readable name. Only the bare minimum set of attributes and no relationships will be retrieved for the domain, if found.
      Parameters:
      client - connectivity to the Atlan tenant on which to search for the DataProduct
      name - of the DataProduct
      Returns:
      the DataProduct, if found
      Throws:
      AtlanException - on any API problems, or if the DataProduct does not exist
    • findByName

      public static List<DataProduct> findByName(AtlanClient client, String name, Collection<String> attributes) throws AtlanException
      Find a DataProduct by its human-readable name. Note that domains are not unique by name, so there may be multiple results.
      Parameters:
      client - connectivity to the Atlan tenant on which to search for the DataProduct
      name - of the DataProduct
      attributes - an optional collection of attributes (unchecked) to retrieve for the DataProduct
      Returns:
      the DataProduct, if found
      Throws:
      AtlanException - on any API problems, or if the DataProduct does not exist
    • findByName

      public static List<DataProduct> findByName(AtlanClient client, String name, List<AtlanField> attributes) throws AtlanException
      Find a DataProduct by its human-readable name. Note that domains are not unique by name, so there may be multiple results.
      Parameters:
      client - connectivity to the Atlan tenant on which to search for the DataProduct
      name - of the DataProduct
      attributes - an optional collection of attributes (checked) to retrieve for the DataProduct
      Returns:
      the DataProduct, if found
      Throws:
      AtlanException - on any API problems, or if the DataProduct does not exist
    • removeDescription

      public static DataProduct removeDescription(String qualifiedName, String name) throws AtlanException
      Remove the system description from a DataProduct.
      Parameters:
      qualifiedName - of the DataProduct
      name - of the DataProduct
      Returns:
      the updated DataProduct, or null if the removal failed
      Throws:
      AtlanException - on any API problems
    • removeDescription

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

      public static DataProduct removeUserDescription(String qualifiedName, String name) throws AtlanException
      Remove the user's description from a DataProduct.
      Parameters:
      qualifiedName - of the DataProduct
      name - of the DataProduct
      Returns:
      the updated DataProduct, or null if the removal failed
      Throws:
      AtlanException - on any API problems
    • removeUserDescription

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

      public static DataProduct removeOwners(String qualifiedName, String name) throws AtlanException
      Remove the owners from a DataProduct.
      Parameters:
      qualifiedName - of the DataProduct
      name - of the DataProduct
      Returns:
      the updated DataProduct, or null if the removal failed
      Throws:
      AtlanException - on any API problems
    • removeOwners

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

      public static DataProduct updateCertificate(String qualifiedName, CertificateStatus certificate, String message) throws AtlanException
      Update the certificate on a DataProduct.
      Parameters:
      qualifiedName - of the DataProduct
      certificate - to use
      message - (optional) message, or null if no message
      Returns:
      the updated DataProduct, or null if the update failed
      Throws:
      AtlanException - on any API problems
    • updateCertificate

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

      public static DataProduct removeCertificate(String qualifiedName, String name) throws AtlanException
      Remove the certificate from a DataProduct.
      Parameters:
      qualifiedName - of the DataProduct
      name - of the DataProduct
      Returns:
      the updated DataProduct, or null if the removal failed
      Throws:
      AtlanException - on any API problems
    • removeCertificate

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

      public static DataProduct updateAnnouncement(String qualifiedName, AtlanAnnouncementType type, String title, String message) throws AtlanException
      Update the announcement on a DataProduct.
      Parameters:
      qualifiedName - of the DataProduct
      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
    • updateAnnouncement

      public static DataProduct updateAnnouncement(AtlanClient client, String qualifiedName, AtlanAnnouncementType type, String title, String message) throws AtlanException
      Update the announcement on a DataProduct.
      Parameters:
      client - connectivity to the Atlan tenant on which to update the DataProduct's announcement
      qualifiedName - of the DataProduct
      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 DataProduct removeAnnouncement(String qualifiedName, String name) throws AtlanException
      Remove the announcement from a DataProduct.
      Parameters:
      qualifiedName - of the DataProduct
      name - of the DataProduct
      Returns:
      the updated DataProduct, or null if the removal failed
      Throws:
      AtlanException - on any API problems
    • removeAnnouncement

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

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

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

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

      public static DataProduct appendTerms(AtlanClient client, String qualifiedName, List<IGlossaryTerm> terms) throws AtlanException
      Link additional terms to the DataProduct, without replacing existing terms linked to the DataProduct. Note: this operation must make two API calls — one to retrieve the DataProduct'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 DataProduct
      qualifiedName - for the DataProduct
      terms - the list of terms to append to the DataProduct
      Returns:
      the DataProduct that was updated (note that it will NOT contain details of the appended terms)
      Throws:
      AtlanException - on any API problems
    • removeTerms

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

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

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

      public static DataProduct appendAtlanTags(AtlanClient client, String qualifiedName, List<String> atlanTagNames) throws AtlanException
      Add Atlan tags to a DataProduct, without replacing existing Atlan tags linked to the DataProduct. Note: this operation must make two API calls — one to retrieve the DataProduct'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 DataProduct
      qualifiedName - of the DataProduct
      atlanTagNames - human-readable names of the Atlan tags to add
      Returns:
      the updated DataProduct
      Throws:
      AtlanException - on any API problems
    • appendAtlanTags

      public static DataProduct appendAtlanTags(String qualifiedName, List<String> atlanTagNames, boolean propagate, boolean removePropagationsOnDelete, boolean restrictLineagePropagation) throws AtlanException
      Add Atlan tags to a DataProduct, without replacing existing Atlan tags linked to the DataProduct. Note: this operation must make two API calls — one to retrieve the DataProduct's existing Atlan tags, and a second to append the new Atlan tags.
      Parameters:
      qualifiedName - of the DataProduct
      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 DataProduct
      Throws:
      AtlanException - on any API problems
    • appendAtlanTags

      public static DataProduct appendAtlanTags(AtlanClient client, String qualifiedName, List<String> atlanTagNames, boolean propagate, boolean removePropagationsOnDelete, boolean restrictLineagePropagation) throws AtlanException
      Add Atlan tags to a DataProduct, without replacing existing Atlan tags linked to the DataProduct. Note: this operation must make two API calls — one to retrieve the DataProduct'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 DataProduct
      qualifiedName - of the DataProduct
      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 DataProduct
      Throws:
      AtlanException - on any API problems
    • removeAtlanTag

      public static void removeAtlanTag(String qualifiedName, String atlanTagName) throws AtlanException
      Remove an Atlan tag from a DataProduct.
      Parameters:
      qualifiedName - of the DataProduct
      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 DataProduct
    • removeAtlanTag

      public static void removeAtlanTag(AtlanClient client, String qualifiedName, String atlanTagName) throws AtlanException
      Remove an Atlan tag from a DataProduct.
      Parameters:
      client - connectivity to the Atlan tenant from which to remove an Atlan tag from a DataProduct
      qualifiedName - of the DataProduct
      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 DataProduct
    • _internal

      public static DataProduct.DataProductBuilder<?,?> _internal()
    • toBuilder

      public DataProduct.DataProductBuilder<?,?> toBuilder()
      Overrides:
      toBuilder in class Reference
    • getApplicationContainer

      public IApplicationContainer getApplicationContainer()
      ApplicationContainer asset containing this Catalog asset.
      Specified by:
      getApplicationContainer in interface ICatalog
      Specified by:
      getApplicationContainer in interface IDataMesh
      Specified by:
      getApplicationContainer in interface IDataProduct
    • getAssetApplicationQualifiedName

      public String getAssetApplicationQualifiedName()
      Qualified name of the Application Container that contains this asset.
      Specified by:
      getAssetApplicationQualifiedName in interface ICatalog
      Specified by:
      getAssetApplicationQualifiedName in interface IDataMesh
      Specified by:
      getAssetApplicationQualifiedName in interface IDataProduct
    • getDaapCriticality

      public DataProductCriticality getDaapCriticality()
      Criticality of this data product.
      Specified by:
      getDaapCriticality in interface IDataProduct
    • getDaapInputPortGuids

      public SortedSet<String> getDaapInputPortGuids()
      Input ports guids for this data product.
      Specified by:
      getDaapInputPortGuids in interface IDataProduct
    • getDaapOutputPortGuids

      public SortedSet<String> getDaapOutputPortGuids()
      Output ports guids for this data product.
      Specified by:
      getDaapOutputPortGuids in interface IDataProduct
    • getDaapSensitivity

      public DataProductSensitivity getDaapSensitivity()
      Information sensitivity of this data product.
      Specified by:
      getDaapSensitivity in interface IDataProduct
    • getDaapStatus

      public DataProductStatus getDaapStatus()
      Status of this data product.
      Specified by:
      getDaapStatus in interface IDataProduct
    • getDaapVisibility

      public DataProductVisibility getDaapVisibility()
      Visibility of a data product.
      Specified by:
      getDaapVisibility in interface IDataProduct
    • getDaapVisibilityGroups

      public SortedSet<String> getDaapVisibilityGroups()
      list of groups for product visibility control
      Specified by:
      getDaapVisibilityGroups in interface IDataProduct
    • getDaapVisibilityUsers

      public SortedSet<String> getDaapVisibilityUsers()
      list of users for product visibility control
      Specified by:
      getDaapVisibilityUsers in interface IDataProduct
    • getDataDomain

      public IDataDomain getDataDomain()
      Data domain in which this data product exists.
      Specified by:
      getDataDomain in interface IDataProduct
    • getDataProductAssetsDSL

      public String getDataProductAssetsDSL()
      Search DSL used to define which assets are part of this data product.
      Specified by:
      getDataProductAssetsDSL in interface IDataProduct
    • getDataProductAssetsPlaybookFilter

      public String getDataProductAssetsPlaybookFilter()
      Playbook filter to define which assets are part of this data product.
      Specified by:
      getDataProductAssetsPlaybookFilter in interface IDataProduct
    • getDataProductCriticality

      public DataProductCriticality getDataProductCriticality()
      Criticality of this data product.
      Specified by:
      getDataProductCriticality in interface IDataProduct
    • getDataProductScoreUpdatedAt

      public Long getDataProductScoreUpdatedAt()
      Timestamp when the score of this data product was last updated.
      Specified by:
      getDataProductScoreUpdatedAt in interface IDataProduct
    • getDataProductScoreValue

      public Double getDataProductScoreValue()
      Score of this data product.
      Specified by:
      getDataProductScoreValue in interface IDataProduct
    • getDataProductSensitivity

      public DataProductSensitivity getDataProductSensitivity()
      Information sensitivity of this data product.
      Specified by:
      getDataProductSensitivity in interface IDataProduct
    • getDataProductStatus

      public DataProductStatus getDataProductStatus()
      Status of this data product.
      Specified by:
      getDataProductStatus in interface IDataProduct
    • getDataProductVisibility

      public DataProductVisibility getDataProductVisibility()
      Visibility of a data product.
      Specified by:
      getDataProductVisibility in interface IDataProduct
    • getInputPorts

      public SortedSet<IAsset> getInputPorts()
      Input ports for this data product.
      Specified by:
      getInputPorts in interface IDataProduct
    • getInputToAirflowTasks

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

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

      public SortedSet<ISparkJob> getInputToSparkJobs()
      TBC
      Specified by:
      getInputToSparkJobs in interface ICatalog
      Specified by:
      getInputToSparkJobs in interface IDataMesh
      Specified by:
      getInputToSparkJobs in interface IDataProduct
    • getModelImplementedEntities

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

      public SortedSet<IAirflowTask> getOutputFromAirflowTasks()
      Tasks from which this asset is output.
      Specified by:
      getOutputFromAirflowTasks in interface ICatalog
      Specified by:
      getOutputFromAirflowTasks in interface IDataMesh
      Specified by:
      getOutputFromAirflowTasks in interface IDataProduct
    • 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 IDataMesh
      Specified by:
      getOutputFromProcesses in interface IDataProduct
    • getOutputFromSparkJobs

      public SortedSet<ISparkJob> getOutputFromSparkJobs()
      TBC
      Specified by:
      getOutputFromSparkJobs in interface ICatalog
      Specified by:
      getOutputFromSparkJobs in interface IDataMesh
      Specified by:
      getOutputFromSparkJobs in interface IDataProduct
    • getOutputPorts

      public SortedSet<IAsset> getOutputPorts()
      Output ports for this data product.
      Specified by:
      getOutputPorts in interface IDataProduct
    • getParentDomainQualifiedName

      public String getParentDomainQualifiedName()
      Unique name of the parent domain in which this asset exists.
      Specified by:
      getParentDomainQualifiedName in interface IDataMesh
      Specified by:
      getParentDomainQualifiedName in interface IDataProduct
    • getSuperDomainQualifiedName

      public String getSuperDomainQualifiedName()
      Unique name of the top-level domain in which this asset exists.
      Specified by:
      getSuperDomainQualifiedName in interface IDataMesh
      Specified by:
      getSuperDomainQualifiedName in interface IDataProduct
    • 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 DataProducts.
      Specified by:
      getTypeName in interface AuditDetail
      Specified by:
      getTypeName in interface IAsset
      Specified by:
      getTypeName in interface ICatalog
      Specified by:
      getTypeName in interface IDataMesh
      Specified by:
      getTypeName in interface IDataProduct
      Specified by:
      getTypeName in interface IReferenceable
      Overrides:
      getTypeName in class Reference