Class HeatmapDataValueObject

java.lang.Object
ubic.gemma.rest.HeatmapDataValueObject

public class HeatmapDataValueObject extends Object
Wire payload for GET /datasets/{id}/heatmap-data.

Ships a raw probe×sample matrix plus per-row and per-column metadata, and a flat catalogue of experimental factors with full statement / measurement fidelity (mirrors the curation-ui Factor shape). NO server-side ordering decisions, NO colour assignment, NO legend — the client owns those.

See HEATMAP_REWRITE_RECCE.md §5 for the locked schema.

Author:
claude
  • Constructor Details

    • HeatmapDataValueObject

      public HeatmapDataValueObject()
  • Method Details

    • getDatasetId

      public Long getDatasetId()
    • getDatasetShortName

      public String getDatasetShortName()
    • getMatrix

      The numeric matrix; row-major (one row per probe). values is either a double[][] (json encoding) or a base64-encoded string holding little-endian float32 cells (base64f32 encoding). The matrix is the only required block — every other field below is optional and may be null or omitted; the client is designed to render a bare-matrix payload with no row, column or factor metadata, so a producer that has nothing to say for a given block should leave it out.
    • getRows

      @Nullable public List<HeatmapDataValueObject.RowMeta> getRows()
      Optional. Per-row metadata; when present, same length as matrix.rowsCount. Index i corresponds to matrix.values[i]. May be null or empty when the producer has nothing to attach to rows (the client renders an unlabelled axis in that case). Row entries themselves carry only the gene-shaped metadata the producer chose to attach — gene IDs/symbols, a numeric statistic (e.g. p-value), a category, a boolean flag — all individually optional.
    • getColumns

      @Nullable public List<HeatmapDataValueObject.ColumnMeta> getColumns()
      Optional. Per-column metadata in original BioAssayDimension order; when present, same length as matrix.colsCount. May be null or empty when the producer ships an axis-less matrix (the client falls back to numeric column indices).
    • getFactors

      @Nullable public List<HeatmapDataValueObject.FactorEntry> getFactors()
      Optional. Full experimental-factor catalogue: factors, factor values, statements, baseline-relevance. For continuous factors, the per-sample measurements map is on HeatmapDataValueObject.FactorEntry.getMeasurements() keyed by bioAssayId. null or empty when the matrix is not tied to a Gemma experimental design (e.g. a generic data-table renderer).
    • getQuantitationType

      @Nullable public QuantitationTypeValueObject getQuantitationType()
      The quantitation type the matrix is in. null when the matrix is empty or generic.
    • setDatasetId

      public void setDatasetId(Long datasetId)
    • setDatasetShortName

      public void setDatasetShortName(String datasetShortName)
    • setMatrix

      public void setMatrix(HeatmapDataValueObject.MatrixSection matrix)
      The numeric matrix; row-major (one row per probe). values is either a double[][] (json encoding) or a base64-encoded string holding little-endian float32 cells (base64f32 encoding). The matrix is the only required block — every other field below is optional and may be null or omitted; the client is designed to render a bare-matrix payload with no row, column or factor metadata, so a producer that has nothing to say for a given block should leave it out.
    • setRows

      public void setRows(@Nullable List<HeatmapDataValueObject.RowMeta> rows)
      Optional. Per-row metadata; when present, same length as matrix.rowsCount. Index i corresponds to matrix.values[i]. May be null or empty when the producer has nothing to attach to rows (the client renders an unlabelled axis in that case). Row entries themselves carry only the gene-shaped metadata the producer chose to attach — gene IDs/symbols, a numeric statistic (e.g. p-value), a category, a boolean flag — all individually optional.
    • setColumns

      public void setColumns(@Nullable List<HeatmapDataValueObject.ColumnMeta> columns)
      Optional. Per-column metadata in original BioAssayDimension order; when present, same length as matrix.colsCount. May be null or empty when the producer ships an axis-less matrix (the client falls back to numeric column indices).
    • setFactors

      public void setFactors(@Nullable List<HeatmapDataValueObject.FactorEntry> factors)
      Optional. Full experimental-factor catalogue: factors, factor values, statements, baseline-relevance. For continuous factors, the per-sample measurements map is on HeatmapDataValueObject.FactorEntry.getMeasurements() keyed by bioAssayId. null or empty when the matrix is not tied to a Gemma experimental design (e.g. a generic data-table renderer).
    • setQuantitationType

      public void setQuantitationType(@Nullable QuantitationTypeValueObject quantitationType)
      The quantitation type the matrix is in. null when the matrix is empty or generic.