Class CellXGeneDataLoaderServiceImpl

java.lang.Object
ubic.gemma.core.loader.expression.cellxgene.CellXGeneDataLoaderServiceImpl
All Implemented Interfaces:
CellXGeneDataLoaderService

@Service @Transactional(propagation=NEVER) public class CellXGeneDataLoaderServiceImpl extends Object implements CellXGeneDataLoaderService
Author:
poirigui
  • Constructor Details

  • Method Details

    • fetchAndLoad

      public ExpressionExperiment fetchAndLoad(String collectionId, @Nullable String datasetId, @Nullable String assetId, ArrayDesign platform, String datasetShortName, boolean loadSingleCellData, boolean keepPooledSample, boolean keepUnknownSample, boolean dryRun) throws IOException
      Description copied from interface: CellXGeneDataLoaderService
      Fetch a CELLxGENE dataset and load it into the database.
      Specified by:
      fetchAndLoad in interface CellXGeneDataLoaderService
      Parameters:
      datasetId - CELLxGENE permanent dataset ID, dataset version ID or dataset title, or null if the collection holds a single dataset. The resulting accession records the permanent ID, with the version ID as its accession version.
      assetId - CELLxGENE dataset asset identifier
      platform - platform to use for mapping design elements from the data, the primary taxon must correspond to that of the dataset.
      datasetShortName - short name to use for the resulting dataset
      loadSingleCellData - whether to load the single-cell data vectors, this can be done later if needed
      keepPooledSample - whether to keep the "pooled" sample
      keepUnknownSample - whether to keep the "unknown" sample
      Returns:
      a persistent ExpressionExperiment pre-populated with CELLxGENE metadata and single-cell data (if requested)
      Throws:
      IOException
    • replaceVersionAccession

      @Transactional @Audited(value=CommentedEvent.class, messageSpel="'Replaced the CELLxGENE accession ' + #result.accessionVersion + ' (a dataset version ID) by the permanent dataset ID ' + #datasetId + ', keeping ' + #result.accessionVersion + ' as its accession version.'") public DatabaseEntry replaceVersionAccession(ExpressionExperiment ee, String datasetId)
      Description copied from interface: CellXGeneDataLoaderService
      Replace a CELLxGENE accession that holds a dataset version ID by one that holds the permanent dataset ID.

      Datasets loaded before permanent IDs were recorded store the version ID as their accession. The new accession keeps that version ID as its accession version, since it designates the data that was actually loaded, and keeps the same URI. The previous DatabaseEntry is removed.

      Specified by:
      replaceVersionAccession in interface CellXGeneDataLoaderService
      Parameters:
      datasetId - the permanent CELLxGENE dataset ID that the current accession is a version of
      Returns:
      the new accession
    • setProgressReporterFactory

      public void setProgressReporterFactory(ProgressReporterFactory progressReporterFactory)
      Description copied from interface: CellXGeneDataLoaderService
      Set the progress reporter factory to use for reporting progress during data downloading.
      Specified by:
      setProgressReporterFactory in interface CellXGeneDataLoaderService