Package com.onwbp.adaptation

# Class AdaptationHome

java.lang.Object
com.onwbp.adaptation.AdaptationHome

public abstract class AdaptationHome extends Object
Represents a dataspace or a snapshot in a repository.

Note: In previous versions, a dataspace was known as a branch, and a snapshot was known as a version.

See Also:
  - `Repository`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `final Adaptation`
  `findAdaptationOrNull(AdaptationName aName)`
  Returns the specified dataset or record based on its `AdaptationName`.
  `abstract List<Adaptation>`
  `findAllChildren(Adaptation aDataSetOrRecord)`
  Returns a list of all datasets or records that are direct children of the one specified.
  `abstract List<Adaptation>`
  `findAllDescendants(Adaptation aDataSetOrRecord)`
  Returns a list of all the datasets and records that inherit from the one specified, either as direct children or as descendants (recursive).
  `abstract List<Adaptation>`
  `findAllRoots()`
  Returns all the dataset roots of this `AdaptationHome`.
  `final Adaptation`
  `findParent(Adaptation aDataSetOrRecord)`
  Deprecated.
  Replaced by `Adaptation.getParent()`.
  `abstract List<AdaptationHome>`
  `getBranchChildren()`
  Returns the dataspaces which have been created from this `AdaptationHome`.
  `abstract Date`
  `getCreationDate()`
  Returns the creation date of this dataspace or snapshot.
  `abstract Profile`
  `getCreator()`
  Returns the creator profile of this dataspace or snapshot in the current repository.
  `abstract UserMessage`
  `getDescription()`
  Returns the internationalized description of this dataspace or snapshot.
  `abstract String`
  `getDescription(Locale aLocale)`
  Returns the description of this dataspace or snapshot for a given locale.
  `final HomeKey`
  `getKey()`
  Returns the key that identifies this dataspace or snapshot in the current repository.
  `abstract UserMessage`
  `getLabel()`
  Returns the internationalized label of this dataspace or snapshot.
  `abstract String`
  `getLabel(Locale aLocale)`
  Returns the label of this dataspace or snapshot for a given locale.
  `abstract String`
  `getLabelOrName(Locale aLocale)`
  Returns the label of this dataspace or snapshot for a given locale.
  `abstract UserMessage`
  `getLabelOrNameAsUserMessage()`
  Returns the internationalized label of this dataspace or snapshot.
  `abstract Profile`
  `getOwner()`
  Returns the owner profile of this dataspace or snapshot in the current repository.
  `abstract AdaptationHome`
  `getParent()`
  Returns the parent dataspace of this `AdaptationHome`.
  `abstract AdaptationHome`
  `getParentBranch()`
  Returns the parent dataspace or snapshot of this `AdaptationHome`.
  `abstract Repository`
  `getRepository()`
  Returns the repository that contains this `AdaptationHome`.
  `abstract Date`
  `getTerminationDate()`
  Returns the date this dataspace or snapshot was closed, if it is closed.
  `abstract DataspaceValidationReport`
  `getValidationReport(Severity minimalSeverity)`
  Returns all validation reports for datasets in this `AdaptationHome` that have at least one validation item of the specified severity or higher.
  `abstract DataspaceValidationReport`
  `getValidationReport(ValidationSpec aValidationSpec)`
  Returns the validation report for this dataspace according to the specified properties.
  `abstract Map<AdaptationName,ValidationReport>`
  `getValidationReportsMap(Severity minimalSeverity)`
  Deprecated.
  since 6.1.1.
  `abstract List<AdaptationHome>`
  `getVersionChildren()`
  Returns the snapshots which have been created from this `AdaptationHome`.
  `final boolean`
  `isAncestorOf(AdaptationHome anotherHome)`
  Returns `true` if this `AdaptationHome` is an ancestor of the specified `AdaptationHome` (the `AdaptationHome` itself is excluded).
  `final boolean`
  `isBranch()`
  Returns `true` if this `AdaptationHome` is a dataspace.
  `final boolean`
  `isBranchReference()`
  Returns `true` if this `AdaptationHome` is the `reference dataspace`.
  `final boolean`
  `isInitialVersion()`
  Returns `true` if this `AdaptationHome` is an initial snapshot of a dataspace.
  `abstract boolean`
  `isLockedBranch()`
  Returns `true` if this `AdaptationHome` is a locked dataspace.
  `abstract boolean`
  `isMarkedForHistoryPurge()`
  Returns `true` if this `AdaptationHome` is marked for history purge.
  `final boolean`
  `isMarkedForPurge()`
  Deprecated.
  `abstract boolean`
  `isOpen()`
  Returns `true` if this `AdaptationHome` is either an open snapshot or an open dataspace.
  `final boolean`
  `isOpenBranch()`
  Returns `true` if this `AdaptationHome` is an open dataspace.
  `final boolean`
  `isOpenVersion()`
  Returns `true` if this `AdaptationHome` is an open snapshot.
  `final boolean`
  `isTechnicalBranch()`
  Returns `true` if this `AdaptationHome` is a technical dataspace.
  `final boolean`
  `isTechnicalVersion()`
  Returns `true` if this `AdaptationHome` is a technical snapshot.
  `abstract boolean`
  `isUsedByValidation()`
  Checks whether the current instance of `AdaptationHome` is a dedicated validation dataspace.
  `final boolean`
  `isVersion()`
  Returns `true` if this `AdaptationHome` is a snapshot.
  `final void`
  `resetValidationReports()`
  Resets the validation reports of the datasets contained in this dataspace.
  `final String`
  `toDisplayString(Locale aLocale)`
  Returns a user-friendly string that specifies the type of this object, for example, "Dataspace <key>" or "Snapshot <key>".

  ### Methods inherited from class java.lang.Object

  `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Method Details

  - ### findAdaptationOrNull

    public final Adaptation findAdaptationOrNull(AdaptationName aName)
    Returns the specified dataset or record based on its `AdaptationName`. Returns `null` if it cannot be found.
    See Also:
      - `AdaptationName`

  - ### findParent

    @Deprecated public final Adaptation findParent(Adaptation aDataSetOrRecord)
    Deprecated.
    Replaced by `Adaptation.getParent()`.

  - ### findAllChildren

    public abstract List<Adaptation> findAllChildren(Adaptation aDataSetOrRecord)
    Returns a list of all datasets or records that are direct children of the one specified.

  - ### findAllDescendants

    public abstract List<Adaptation> findAllDescendants(Adaptation aDataSetOrRecord)
    Returns a list of all the datasets and records that inherit from the one specified, either as direct children or as descendants (recursive).

  - ### findAllRoots

    public abstract List<Adaptation> findAllRoots()
    Returns all the dataset roots of this `AdaptationHome`.
    See Also:
      - `Adaptation.isRootAdaptation()`

  - ### getKey

    public final HomeKey getKey()
    Returns the key that identifies this dataspace or snapshot in the current repository.

  - ### getOwner

    public abstract Profile getOwner()
    Returns the owner profile of this dataspace or snapshot in the current repository.

  - ### getCreator

    public abstract Profile getCreator()
    Returns the creator profile of this dataspace or snapshot in the current repository.

    Returns `null` if no creator is defined. For example, technical reserved branches are created by the 'System User'.

  - ### getLabel

    public abstract UserMessage getLabel()
    Returns the internationalized label of this dataspace or snapshot.

    Returns `null` if no labels are defined in any language.

  - ### getLabel

    public abstract String getLabel(Locale aLocale)
    Returns the label of this dataspace or snapshot for a given locale. Returns `null` if no label is defined for the locale provided.

  - ### getLabelOrName

    public abstract String getLabelOrName(Locale aLocale)
    Returns the label of this dataspace or snapshot for a given locale. Returns the key name if no label is defined for the locale provided.

  - ### getLabelOrNameAsUserMessage

    public abstract UserMessage getLabelOrNameAsUserMessage()
    Returns the internationalized label of this dataspace or snapshot. Returns the key name if no labels are defined in any locale.

  - ### getDescription

    public abstract UserMessage getDescription()
    Returns the internationalized description of this dataspace or snapshot.

    Returns `null` if no descriptions are defined in any language.

  - ### getDescription

    public abstract String getDescription(Locale aLocale)
    Returns the description of this dataspace or snapshot for a given locale. Returns `null` if no description is defined for the locale provided.

  - ### getCreationDate

    public abstract Date getCreationDate()
    Returns the creation date of this dataspace or snapshot.

  - ### getTerminationDate

    public abstract Date getTerminationDate()
    Returns the date this dataspace or snapshot was closed, if it is closed.

    Returns `null` if the dataspace or snapshot is open.

  - ### getParent

    public abstract AdaptationHome getParent()
    Returns the parent dataspace of this `AdaptationHome`. Returns `null` if this is the `reference dataspace`.

    For a dataspace, its parent is always its initial snapshot. For a snapshot, its parent is always its parent dataspace.

  - ### getParentBranch

    public abstract AdaptationHome getParentBranch()
    Returns the parent dataspace or snapshot of this `AdaptationHome`. Returns `null` if this `AdaptationHome` is the `reference dataspace`.

    Note: For a dataspace, its direct parent is its initial snapshot, hence its parent dataspace is the parent of this initial snapshot. For a snapshot, its parent dataspace is its direct parent.

    See Also:
      - `getBranchChildren()`
      - `getVersionChildren()`

  - ### getBranchChildren

    public abstract List<AdaptationHome> getBranchChildren()
    Returns the dataspaces which have been created from this `AdaptationHome`.

    Note: A dataspace has no direct dataspace children; when a dataspace is created from another dataspace, first an initial snapshot is created, then the new dataspace is created from this initial snapshot.

    See Also:
      - `getVersionChildren()`

  - ### getVersionChildren

    public abstract List<AdaptationHome> getVersionChildren()
    Returns the snapshots which have been created from this `AdaptationHome`.

    A snapshot is always created from a dataspace.

    See Also:
      - `getBranchChildren()`

  - ### getRepository

    public abstract Repository getRepository()
    Returns the repository that contains this `AdaptationHome`.

  - ### isBranch

    public final boolean isBranch()
    Returns `true` if this `AdaptationHome` is a dataspace.

  - ### isBranchReference

    public final boolean isBranchReference()
    Returns `true` if this `AdaptationHome` is the `reference dataspace`.

  - ### isOpenBranch

    public final boolean isOpenBranch()
    Returns `true` if this `AdaptationHome` is an open dataspace.

  - ### isOpenVersion

    public final boolean isOpenVersion()
    Returns `true` if this `AdaptationHome` is an open snapshot.

  - ### isOpen

    public abstract boolean isOpen()
    Returns `true` if this `AdaptationHome` is either an open snapshot or an open dataspace.

  - ### isLockedBranch

    public abstract boolean isLockedBranch()
    Returns `true` if this `AdaptationHome` is a locked dataspace.
    See Also:
      - `LockSpec`

  - ### isMarkedForPurge

    @Deprecated public final boolean isMarkedForPurge()
    Deprecated.
    Always returns `false`.
    See Also:
      - `Repository.deleteHome(AdaptationHome, Session)`

  - ### isMarkedForHistoryPurge

    public abstract boolean isMarkedForHistoryPurge()
    Returns `true` if this `AdaptationHome` is marked for history purge.
    See Also:
      - `RepositoryPurge.markHomeForHistoryPurge(AdaptationHome, Session)`

  - ### isAncestorOf

    public final boolean isAncestorOf(AdaptationHome anotherHome)
    Returns `true` if this `AdaptationHome` is an ancestor of the specified `AdaptationHome` (the `AdaptationHome` itself is excluded).

  - ### isVersion

    public final boolean isVersion()
    Returns `true` if this `AdaptationHome` is a snapshot.

  - ### isInitialVersion

    public final boolean isInitialVersion()
    Returns `true` if this `AdaptationHome` is an initial snapshot of a dataspace.

    When a dataspace is created from another dataspace, first an initial snapshot is created, then the new dataspace is created from this initial snapshot.

    See Also:
      - `Repository`

  - ### toDisplayString

    public final String toDisplayString(Locale aLocale)
    Returns a user-friendly string that specifies the type of this object, for example, "Dataspace <key>" or "Snapshot <key>".
    See Also:
      - `getKey()`

  - ### getValidationReportsMap

    @Deprecated public abstract Map<AdaptationName,ValidationReport> getValidationReportsMap(Severity minimalSeverity)
    Deprecated.
    since 6.1.1. Replaced by `getValidationReport(Severity)`.

  - ### getValidationReport

    public abstract DataspaceValidationReport getValidationReport(ValidationSpec aValidationSpec)
    Returns the validation report for this dataspace according to the specified properties. Warning: all datasets in the dataspace are validated according to the specified policy. This process can be time consuming.
    Since:
      6.1.1
    See Also:
      - `getValidationReport(Severity)`
      - `getValidationReportsMap(Severity)`
      - `ValidationSpec`

  - ### getValidationReport

    public abstract DataspaceValidationReport getValidationReport(Severity minimalSeverity)
    Returns all validation reports for datasets in this `AdaptationHome` that have at least one validation item of the specified severity or higher.

    Since this method calls `Adaptation.getValidationReport(false)` on each dataset, it does not require the datasets to be activated.

    The rules for ensuring that data in EBX® remains valid, with respect to potential concurrent updates, are explained in the Consistency and validation section.

    Returns:
      `DataspaceValidationReportImpl`
    Since:
      6.1.1
    See Also:
      - `ValidationReport.hasItemsOfSeverityOrMore(Severity)`

  - ### resetValidationReports

    public final void resetValidationReports()
    Resets the validation reports of the datasets contained in this dataspace.
    Since:
      5.9.0
    See Also:
      - `Adaptation.resetValidationReport(boolean)`
      - `getValidationReportsMap(Severity)`

  - ### isTechnicalBranch

    public final boolean isTechnicalBranch()
    Returns `true` if this `AdaptationHome` is a technical dataspace. A technical dataspace is used internally used by EBX®, and cannot be closed or merged.

  - ### isUsedByValidation

    public abstract boolean isUsedByValidation()
    Checks whether the current instance of `AdaptationHome` is a dedicated validation dataspace. It returns `true` if this dataspace:
    - Contains persisted validation reports.
    - Is used to validate data.
    Since:
      6.1.1

  - ### isTechnicalVersion

    public final boolean isTechnicalVersion()
    Returns `true` if this `AdaptationHome` is a technical snapshot. A snapshot is technical if it is a snapshot of a technical dataspace.
    See Also:
      - `isTechnicalBranch()`