Interface GeoBrowser
-
- All Known Implementing Classes:
GeoBrowserImpl
public interface GeoBrowser
Gets records from GEO and compares them to Gemma. This is used to identify data sets that are new in GEO and not in Gemma.See Programmatic access to GEO for some information.
- Author:
- pavlidis, poirigui
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description Collection<GeoRecord>
getAllGeoRecords(GeoRecordType recordType, Collection<String> allowedTaxa, int maxRecords)
Retrieve all GEO records of a given type.default GeoRecord
getGeoRecord(GeoRecordType recordType, String accession)
Retrieve a single GEO series using the default preset.GeoRecord
getGeoRecord(GeoRecordType recordType, String accession, GeoRetrieveConfig config)
Retrieve a single GEO record.default Collection<GeoRecord>
getGeoRecords(GeoRecordType recordType, Collection<String> accessions)
Collection<GeoRecord>
getGeoRecords(GeoRecordType recordType, Collection<String> accessions, GeoRetrieveConfig config)
Retrieve a collection of GEO series.Slice<GeoRecord>
getRecentGeoRecords(GeoRecordType recordType, int start, int pageSize)
Retrieve recent GEO records from GEO browser.Collection<GeoRecord>
retrieveAllGeoRecords(GeoQuery query, GeoRetrieveConfig config)
default Slice<GeoRecord>
retrieveGeoRecords(GeoQuery query, int start, int pageSize)
Slice<GeoRecord>
retrieveGeoRecords(GeoQuery query, int start, int pageSize, GeoRetrieveConfig config)
Retrieve records from a GEO query.default Slice<GeoRecord>
searchAndRetrieveGeoRecords(GeoRecordType recordType, String searchTerms, GeoSearchField field, Collection<String> allowedTaxa, Collection<String> limitPlatforms, Collection<String> seriesTypes, int start, int pageSize, boolean detailed)
Search and retrieve GEO records.GeoQuery
searchGeoRecords(GeoRecordType recordType, String term)
Search GEO records.GeoQuery
searchGeoRecords(GeoRecordType recordType, String searchTerms, GeoSearchField field, Collection<String> allowedTaxa, Collection<String> limitPlatforms, Collection<String> seriesTypes)
Search GEO records.
-
-
-
Method Detail
-
getGeoRecord
@Nullable default GeoRecord getGeoRecord(GeoRecordType recordType, String accession) throws IOException
Retrieve a single GEO series using the default preset.- Throws:
IOException
-
getGeoRecord
@Nullable GeoRecord getGeoRecord(GeoRecordType recordType, String accession, GeoRetrieveConfig config) throws IOException
Retrieve a single GEO record.- Throws:
IOException
-
getGeoRecords
default Collection<GeoRecord> getGeoRecords(GeoRecordType recordType, Collection<String> accessions) throws IOException
- Throws:
IOException
-
getGeoRecords
Collection<GeoRecord> getGeoRecords(GeoRecordType recordType, Collection<String> accessions, GeoRetrieveConfig config) throws IOException
Retrieve a collection of GEO series.- Throws:
IOException
-
getAllGeoRecords
Collection<GeoRecord> getAllGeoRecords(GeoRecordType recordType, @Nullable Collection<String> allowedTaxa, int maxRecords) throws IOException
Retrieve all GEO records of a given type.A bit hacky, can be improved. Limited to human, mouse, rat, is not guaranteed to get everything, though as of 7/2021, this is sufficient (~8000 platforms)
- Parameters:
allowedTaxa
- a collection of allowed taxa, ignored if null or empty- Returns:
- all relevant platforms up to single-query limit of NCBI
- Throws:
IOException
-
getRecentGeoRecords
Slice<GeoRecord> getRecentGeoRecords(GeoRecordType recordType, int start, int pageSize) throws IOException
Retrieve recent GEO records from GEO browser.The retrieved information is pretty minimal. Use
searchGeoRecords(GeoRecordType, String, GeoSearchField, Collection, Collection, Collection)
for detailed records.- Parameters:
start
- start pagepageSize
- page size- Returns:
- a slice of GEO records
- Throws:
IOException
-
searchAndRetrieveGeoRecords
default Slice<GeoRecord> searchAndRetrieveGeoRecords(GeoRecordType recordType, @Nullable String searchTerms, @Nullable GeoSearchField field, @Nullable Collection<String> allowedTaxa, @Nullable Collection<String> limitPlatforms, @Nullable Collection<String> seriesTypes, int start, int pageSize, boolean detailed) throws IOException
Search and retrieve GEO records.
-
searchGeoRecords
GeoQuery searchGeoRecords(GeoRecordType recordType, @Nullable String searchTerms, @Nullable GeoSearchField field, @Nullable Collection<String> allowedTaxa, @Nullable Collection<String> limitPlatforms, @Nullable Collection<String> seriesTypes) throws IOException
Search GEO records.Provides more details than
getRecentGeoRecords(GeoRecordType, int, int)
. Performs an E-utilities query of the GEO database with the given search terms (search terms can be omitted). Returns at most pageSize records.Note that the search is reversed in time. You get the most recent records first.
- Parameters:
recordType
- the type of record to search forsearchTerms
- search term, ignored if null or blankfield
- a field to search in or null to search everywhereallowedTaxa
- restrict search to the given taxa if not nulllimitPlatforms
- restrict search to the given platforms if not nullseriesTypes
- restrict search to the given series types if not null (i.e. Expression profiling by array)- Returns:
- a GEO query that can be retrieved with
retrieveGeoRecords(GeoQuery, int, int, GeoRetrieveConfig)
- Throws:
IOException
- if there is a problem obtaining or manipulating the file (some exceptions are not thrown and just logged)
-
searchGeoRecords
GeoQuery searchGeoRecords(GeoRecordType recordType, String term) throws IOException
Search GEO records.- Throws:
IOException
-
retrieveGeoRecords
default Slice<GeoRecord> retrieveGeoRecords(GeoQuery query, int start, int pageSize) throws IOException
- Throws:
IOException
-
retrieveGeoRecords
Slice<GeoRecord> retrieveGeoRecords(GeoQuery query, int start, int pageSize, GeoRetrieveConfig config) throws IOException
Retrieve records from a GEO query.- Parameters:
start
- start at an offset to retrieve batchespageSize
- number of results to retrieve in a batchconfig
- configuration for populating the records- Throws:
IOException
-
retrieveAllGeoRecords
Collection<GeoRecord> retrieveAllGeoRecords(GeoQuery query, GeoRetrieveConfig config) throws IOException
- Throws:
IOException
-
-