28 const std::string &endpoint,
const std::string &facility) {
33 throw std::runtime_error(
"You cannot log into multiple catalogs at the same time.");
57 catalog->search(inputs, outputws, offset, limit);
66 int64_t numberOfSearchResults = 0;
68 numberOfSearchResults += catalog->getNumberOfSearchResults(inputs);
70 return numberOfSearchResults;
80 catalog->myData(outputws);
92 catalog->getDataSets(investigationId, outputws);
104 catalog->getDataFiles(investigationId, outputws);
114 catalog->listInstruments(instruments);
124 catalog->listInvestigationTypes(invstTypes);
133 catalog->keepAlive();
#define UNUSED_ARG(x)
Function arguments are sometimes unused in certain implmentations but are required for documentation ...
void logout() override
Log the user out of the catalog system.
void keepAlive() override
Keep current session alive.
void listInstruments(std::vector< std::string > &instruments) override
Get instruments list.
void myData(ITableWorkspace_sptr &outputws) override
Show the logged in user's investigations search results.
void getDataSets(const std::string &investigationId, ITableWorkspace_sptr &outputws) override
Get datasets.
CompositeCatalog()
Constructor.
int64_t getNumberOfSearchResults(const ICat::CatalogSearchParam &inputs) override
Obtain the number of results returned by the search method.
void search(const ICat::CatalogSearchParam &inputs, ITableWorkspace_sptr &outputws, const int &offset, const int &limit) override
Search the catalog for data.
void listInvestigationTypes(std::vector< std::string > &invstTypes) override
Get investigationtypes list.
void getDataFiles(const std::string &investigationId, ITableWorkspace_sptr &outputws) override
Get datafiles.
void add(const ICatalog_sptr &catalog)
Adds a catalog to the list of catalogs (m_catalogs)
CatalogSession_sptr login(const std::string &username, const std::string &password, const std::string &endpoint, const std::string &facility) override
Log the user into the catalog system.
std::list< ICatalog_sptr > m_catalogs
This class is used in Catalog Search service to set/get all the inputs to search for.
std::shared_ptr< CatalogSession > CatalogSession_sptr
std::shared_ptr< ICatalog > ICatalog_sptr
std::shared_ptr< ITableWorkspace > ITableWorkspace_sptr
shared pointer to Mantid::API::ITableWorkspace