Class ExpressionExperimentSubSet

All Implemented Interfaces:
gemma.gsec.model.Securable, gemma.gsec.model.SecuredChild, Auditable, Securable, SecuredChild<ExpressionExperiment>, Describable, Identifiable

public class ExpressionExperimentSubSet extends BioAssaySet implements SecuredChild<ExpressionExperiment>
A subset of assays (or derived assays) from an ExpressionExperiment.

In the case of a "derived" assay, it is possible to walk up to the samples of the assays of the source experiment via BioMaterial.getSourceBioMaterial().

This is used for single-cell datasets to represent aggregated pseudo-bulks.

Author:
Paul
  • Field Details

    • MAX_NAME_LENGTH

      public static final int MAX_NAME_LENGTH
      Maximum length of the name of a subset.
      See Also:
    • NAME_DELIMITER

      public static final String NAME_DELIMITER
      Delimiter used to separate the source experiment name from the subset name.
      See Also:
  • Constructor Details

    • ExpressionExperimentSubSet

      public ExpressionExperimentSubSet()
      No-arg constructor added to satisfy javabean contract
  • Method Details

    • getSourceExperiment

      public ExpressionExperiment getSourceExperiment()
    • setSourceExperiment

      public void setSourceExperiment(ExpressionExperiment sourceExperiment)
    • getSecurityOwner

      public ExpressionExperiment getSecurityOwner()
      Description copied from interface: SecuredChild
      Obtain the security owner of this secured child.

      Secured children should always have an owner in the ACL table, but that relation is not always direct or mapped. A more robust way of checking is to look up the parent via AclObjectIdentity.getParentObject(). If the security owner cannot be determined, the implementation should define a setter so it can be temporarily assigned for creating the ACL identity.

      Specified by:
      getSecurityOwner in interface gemma.gsec.model.SecuredChild
      Specified by:
      getSecurityOwner in interface SecuredChild<ExpressionExperiment>
      Returns:
      the security owner, or null if not known.
    • equals

      public boolean equals(Object object)
      Description copied from class: AbstractDescribable
      Important note: The name should be compared in a case-insensitive manner. You can use DescribableUtils.equalsByName(Describable, Describable) to get the correct behavior.

      Important note: Two objects with the same class and non-null ID must be considered equal. If one or both IDs are nulls, the rest of the state can be used to determine equality.

      Specified by:
      equals in class AbstractDescribable