Loading...
Searching...
No Matches
GoogleDataProvider::GoogleApiParentDataProvider Class Reference

The Google data provider base class. More...

`#include <GoogleApiParentDataProvider.qc.dox.h>`

Inheritance diagram for GoogleDataProvider::GoogleApiParentDataProvider:
[legend]

## Public Member Functions

| constructor (GoogleRestClient::GoogleRestClient rest, string api, string resource, *hash< auto > path_args, *string path_prefix,...)
| Creates the object.
| constructor (string api, string resource, *hash< auto > path_args, *string path_prefix,...)
| Creates the object.
*list< hash< DataProvider::DataProviderSummaryInfo > > | getChildProviderSummaryInfo ()
| Return data provider summary info.
*string | getDesc ()
| Returns the data provider description.
string | getName ()
| Returns the data provider name.
Public Member Functions inherited from GoogleDataProvider::GoogleDataProviderBase
| constructor ()
| Creates the object.
| constructor (GoogleRestClient::GoogleRestClient rest)
| Creates the object.
*hash< auto > | prepareRequest (auto req, *hash< string, softstring > implicit_path_args, *bool backfill_request_body)
| Prepares a request with a request type created from the Discovery API.
*hash< auto > | prepareRequestIntern (AbstractDataProviderType request_type, auto req0, *hash< string, softstring > implicit_path_args, *bool backfill_request_body)
| Prepares a request with a request type created from the Discovery API.
| setLogger (*LoggerInterface logger)
| Accepts a LoggerInterface object for logging (or clears it)
| updateConnectionObjects (object conn, object connobj)
| Update any connection used by the data provider.

## Public Attributes

const | ConstructorOptions = ...
| Constructor options.
Public Attributes inherited from GoogleDataProvider::GoogleDataProviderBase
const | DiscoveryUrlBase = "https://discovery.googleapis.com/discovery/v1/apis"
| Discovery URL base.
const | InitTimeout = 10s
| Initialization I/O timeout.

## Protected Member Functions

| check ()
| Check the data provider.
*GoogleDataProvider::GoogleDataProviderBase | getChildProviderImpl (string name)
| Returns the given child provider or nothing if the given child is unknown.
*list< string > | getChildProviderNamesImpl ()
| Returns a list of child data provider names, if any.
hash< DataProvider::DataProviderInfo > | getStaticInfoImpl ()
| Returns data provider static info.
| setSubpaths (*string path_prefix, *list< auto > args)
| Sets subpaths.
Protected Member Functions inherited from GoogleDataProvider::GoogleDataProviderBase
hash< auto > | backfillRequestBody (auto req)
| Used to set attributes in the request body that are not set in the request.
bool | needsBackfillRequestBody ()
| If the request body should be populated with missing values.

## Protected Attributes

string | api
| The Google API name (ex: "calendar")
string | desc
| Data provider description.
hash< string, bool > | methods
| Method hash.
*hash< auto > | path_args
| Any path args associated with this data provider.
list< string > | resource_path
| The resource path name.
*hash< string, list< string > > | subpaths
| Path groups under this parent.
string | type
| Data provider type name.
Protected Attributes inherited from GoogleDataProvider::GoogleDataProviderBase
*GoogleRestClient::GoogleRestClient | rest
| The REST client object for API calls.

## Additional Inherited Members

Static Public Member Functions inherited from GoogleDataProvider::GoogleDataProviderBase
static string | cap (string word)
| Returns the given word capitalized.
static | checkResource (string api, list< string > resource_path)
| Check the given path for resources.
static hash< string, AbstractDataProviderType > | getApi (string api)
| Returns all output schemas for the given API.
static hash< string, AbstractDataProviderType > | getInputSchemaMap (string api, hash< auto > api_info)
| Creates the input schema map for the given API.
static hash< string, AbstractDataProviderType > | getInputSchemasForApi (string api)
| Returns all input schemas for the given API.
static DataProvider::AbstractDataProviderType | getInputTypeForSchema (string api, string schema)
| Returns an input / inbound data type for the given Google schema.
static string | getMethodForSchema (string api, string path)
| Returns the HTTP method for the given API.
static *hash< string, bool > | getMethodsForResource (string api, list< string > resource_path, *hash< auto > path_args)
| Returns a hash of all non-subscription methods for the given resource.
static hash< string, AbstractDataProviderType > | getOutputSchemaMap (string api, hash< auto > api_info)
| Creates the output schema map for the given API.
static string | getPathForSchema (string api, string resource)
| Returns the path for the given API.
static hash< auto > | getRequestInfo (string api)
| Returns all request types for the given API.
static DataProvider::AbstractDataProviderType | getRequestTypeForSchema (string api, string resource,...)
| Returns a request data type for the given API.
static DataProvider::AbstractDataProviderType | getRequestTypeForSchemaArgs (string api, string path, *list< auto > args)
| Returns a data type for the given request.
static DataProvider::AbstractDataProviderType | getResponseTypeForSchema (string api, string resource)
| Returns a response data type for the given API.
static GoogleRestClient::GoogleRestClient | getRestConnection (*hash< auto > options)
| Returns a GoogleRestClient connection from the options.
static DataProvider::AbstractDataProviderType | getTypeForSchema (string api, string schema)
| Returns a data type for the given Google schema.
static string | getUrlForApi (string api, RestClient::RestClient rest)
| Returns the URL for the given API.
static QoreDataField | makeFieldFromProperty (HashDataType h, string key, hash< auto > info, TypeResolverHelper unresolved, *bool for_input)
| Returns a hash from a Google schema description.
static HashDataType | makeHashFromSchemaInfo (string key, hash< auto > info, TypeResolverHelper unresolved, *bool for_input)
| Returns a hash from a Google schema description.
static ListDataType | makeListFromSchemaInfo (string key, hash< auto > info, TypeResolverHelper unresolved, *bool for_input)
| Returns a list from a Google schema description.
static hash< auto > | processRequest (string key, hash< auto > info, TypeResolverHelper unresolved)
| Returns a hash from a Google schema description.
Static Protected Member Functions inherited from GoogleDataProvider::GoogleDataProviderBase
static Mutex | m ()
| schema cache lock
static AbstractDataProviderType | makeTypeFromSchemaInfo (HashDataType type, hash< auto > info, TypeResolverHelper unresolved, *bool for_input)
| Returns a type from a Google schema description.
static AbstractDataProviderType | makeTypeFromSchemaInfo (ListDataType type, string key, hash< auto > info, TypeResolverHelper unresolved, *bool for_input)
| Returns a type from a Google schema description.
static AbstractDataProviderType | makeTypeFromSchemaInfo (QoreDataField field, hash< auto > info, TypeResolverHelper unresolved, *bool for_input)
| Returns a type from a Google schema description.
static AbstractDataProviderType | makeTypeFromSchemaInfo (string key, hash< auto > info, TypeResolverHelper unresolved, *bool for_input)
| Returns a type from a Google schema description.
static hash< auto > | processRequests (string api, hash< auto > h, TypeResolverHelper unresolved)
| Process requests.
Static Protected Attributes inherited from GoogleDataProvider::GoogleDataProviderBase
static hash< string, string > | api_map
| API -> URL map.
static hash< string, hash< auto > > | info_map
| Schema info: API -> info.
static hash< string, hash< string, AbstractDataProviderType > > | input_schema_map
| input schema cache; API -> schema name -> type
static hash< string, hash< string, AbstractDataProviderType > > | output_schema_map
| output schema cache; API -> schema name -> type
static hash< string, hash< auto > > | request_map
| schema cache; API -> request path ->

## Detailed Description

The Google data provider base class.

## Member Function Documentation

## getChildProviderImpl()

*GoogleDataProvider::GoogleDataProviderBase GoogleDataProvider::GoogleApiParentDataProvider::getChildProviderImpl | ( | string | name | ) |

protected

Returns the given child provider or nothing if the given child is unknown.

Returns
  the given child provider or nothing if the given child is unknown

See also
  getChildProviderEx()

## getChildProviderNamesImpl()

*list< string > GoogleDataProvider::GoogleApiParentDataProvider::getChildProviderNamesImpl | ( |  | ) |

protected

Returns a list of child data provider names, if any.

Returns
  a list of child data provider names, if any