36 *hash<string, hash<string, bool>>
appmap;
90 static *hash<DataProviderIndexInfo>
index;
236 static hash<auto>
deserializeActions(hash<
string, hash<
string, hash<auto>>> actioninfomap, TypedHash action_info_th, TypedHash option_info_th, TypedHash path_vars_th, hash<auto> type_map);
242 static hash<ProviderIndexInfo>
writeIndex(*hash<auto> h,
string type, date delta, hash<auto> summary);
262 static log(Qore::Logger::LoggerLevel level,
string fmt, ...);
265 static logArgs(Qore::Logger::LoggerLevel level,
string fmt, *softlist<auto> args);
static *LoggerInterface logger
Global logger.
Definition ProviderIndexUtil.qc.dox.h:84
static *list< string > getAllAppModulesToLoad()
Returns a list of all app modules that have not been returned by a call to this method yet and are no...
static *string tryGetIndexDir(*bool throw_exception)
Try to get the index directory from the environment variable.
static setGlobalLogger(*LoggerInterface logger)
Sets or clears the global logger.
static bool apps_loaded
All apps loaded flag.
Definition ProviderIndexUtil.qc.dox.h:96
static *list< hash< auto > > getCachedApps()
Returns a list of cached app info.
static hash< auto > deserializeActions(hash< string, hash< string, hash< auto > > > actioninfomap, TypedHash action_info_th, TypedHash option_info_th, TypedHash path_vars_th, hash< auto > type_map)
Deserialize action options.
static setEnvironmentVariable(string dir)
Sets the environment variable.
static *list< hash< auto > > getAllCachedActions()
Returns all cached actions.
static *hash< auto > tryGetApproximateAppAction(string app, string action)
Try to return any cached approximate app action for the given app and action.
static bool checkFactoryModule(string factory)
Try to ensure that any required module is loaded for the given factory.
static addAppToCache(hash< auto > app)
Adds the given app and actions to the cache.
static hash< ProviderIndexInfo > writeIndex(*hash< auto > h, string type, date delta, hash< auto > summary)
Writes the index to the configured directory.
static *list< hash< auto > > searchCachedActionSubstr(string substr, bool ignore_case=True)
Searches for cached actions whose descriptions match a substring.
static log(Qore::Logger::LoggerLevel level, string fmt,...)
Log a message to the global logger if possible.
static bool checkAppModule(string app)
Try to ensure that any required modules are loaded for the given data provider application.
static bool initialized
Initialized flag.
Definition ProviderIndexUtil.qc.dox.h:93
static Mutex m()
Global mutex.
static string getIndexPath(string type)
Returns the index path for the given type.
static *list< hash< auto > > searchCachedActionRegex(string regex_pattern, int regex_options=RE_Caseless)
Searches for cached actions whose descriptions match a regular expression pattern.
static *hash< DataProviderIndexInfo > index
Global data provider index.
Definition ProviderIndexUtil.qc.dox.h:90
static addActionToCache(hash< auto > action)
Adds the given app and actions to the cache.
static *hash< auto > tryGetAppInfo(string app)
Try to return any cached app info for the given app.
static *list< hash< auto > > searchCachedAppActionSubstr(string app, string substr, bool ignore_case=True)
Searches for cached application actions whose descriptions match a substring.
static *list< hash< auto > > searchCachedAppActionRegex(string app, string regex_pattern, int regex_options=RE_Caseless)
Searches for cached application actions whose descriptions match a regular expression pattern.
static *hash< DataProviderIndexInfo > readDataProviderIndex()
Reads the data provider index from the configured directory.
static hash< ProviderIndexInfo > writeDataProviderIndex(*hash< DataProviderIndexInfo > h, date delta, hash< auto > summary)
Writes the data provider index to the configured directory.
static bool checkSchemeModule(string scheme)
Try to ensure that any required modules are loaded for the given connection scheme.
static *list< hash< auto > > searchCachedAppRegex(string regex_pattern, int regex_options=RE_Caseless)
Searches the app info cache for applications whose names or descriptions match a regular expression p...
static *hash< auto > readIndex(string type)
Reads the index from the configured directory.
static *LoggerInterface getGlobalLogger()
Returns the global data provider logger.
static bool removeCachedApp(string app)
Removes the given app and all its actions from the cache.
static bool tryLoadModule(string mod)
Tries to load the given module or path to the module.
static *list< hash< auto > > searchCachedAppSubstr(string substr, bool ignore_case=True)
Searches for cachde applications whose names or descriptions match a substring.
static checkDataIndex()
Checks if the data provider index has been populated.
static logArgs(Qore::Logger::LoggerLevel level, string fmt, *softlist< auto > args)
Log a message to the global logger if possible.
static *list< hash< auto > > tryGetApproximateActionsForApp(string app)
Try to return any cached approximate app action list for the given app.
contains all public definitions in the ProviderIndexUtil module
Definition ProviderIndexUtil.qc.dox.h:26
const ProviderIndexEnvVar
The environment variable for the provider index.
Definition ProviderIndexUtil.qc.dox.h:28
Data provider index.
Definition ProviderIndexUtil.qc.dox.h:31
*hash< string, hash< auto > > top_actioninfomap
Maps app actions to action info hashes.
Definition ProviderIndexUtil.qc.dox.h:58
*hash< string, hash< auto > > appinfomap
App to app info map.
Definition ProviderIndexUtil.qc.dox.h:42
*hash< string, hash< string, bool > > appmap
App to module map.
Definition ProviderIndexUtil.qc.dox.h:36
*hash< string, string > factorymap
Factory to module map.
Definition ProviderIndexUtil.qc.dox.h:33
*hash< string, hash< string, bool > > schememap
Scheme to module map.
Definition ProviderIndexUtil.qc.dox.h:39
*hash< string, hash< string, hash< auto > > > actioninfomap
Maps apps to actions to action info hashes.
Definition ProviderIndexUtil.qc.dox.h:50
Index info.
Definition ProviderIndexUtil.qc.dox.h:62
string path
Path to the index file.
Definition ProviderIndexUtil.qc.dox.h:64
int size
Size of the index file.
Definition ProviderIndexUtil.qc.dox.h:67
hash< auto > summary
Summary info for the indexing operation.
Definition ProviderIndexUtil.qc.dox.h:73
date delta
Elapsed time to create the Index.
Definition ProviderIndexUtil.qc.dox.h:70