Qore GoogleRestClient Module Reference 1.0
Loading...
Searching...
No Matches
GoogleRestClient::GmailRestConnection Class Reference

Class for GMail connections; returns GoogleRestClient objects. More...

#include <GoogleRestClient.qm.dox.h>

Inheritance diagram for GoogleRestClient::GmailRestConnection:
[legend]

Public Member Methods

 constructor (hash< auto > config, *hash< auto > attr)
 creates the GoogleRestConnection object
 
 constructor (string name, string description, string url=DefaultUrl, hash< auto > attributes={}, hash< auto > options={})
 creates the GoogleRestConnection object
 
*string getAppName ()
 Returns the data provider application name this connection serves, if any.
 
DataProvider::AbstractDataProvider getDataProvider (*hash< auto > constructor_options)
 returns a data provider object for this connection
 
string getType ()
 returns "gmail"
 
 setUpdateOptionsCode (*code update_options)
 Can be called to set or clear a closure or call reference to be called when options are automatically updated.
 
- Public Member Methods inherited from GoogleRestClient::GoogleRestConnection
 constructor (hash< auto > config, *hash< auto > attr)
 creates the GoogleRestConnection object
 
 constructor (string name, string description, string url=GoogleRestClient::DefaultUrl, hash< auto > attributes={}, hash< auto > options={})
 creates the GoogleRestConnection object
 
string getType ()
 returns "grest"
 

Public Attributes

const ConnectionScheme = ...
 Connection entry info.
 
const DataProviderSubtypeMap = ...
 Data provider subtypes supported.
 
const DefaultConnectionUrl = "gmail://gmail.googleapis.com"
 Default GMail REST API URL.
 
const DefaultUrl = "https://gmail.googleapis.com"
 Default Gmail HTTP URL.
 
- Public Attributes inherited from GoogleRestClient::GoogleRestConnection
const ConnectionScheme = ...
 Connection entry info.
 

Private Member Methods

 checkSubtypeInfo ()
 Verifies that subtype info has been loaded from external modules.
 
hash< ConnectionSchemeInfo > getConnectionSchemeInfoImpl ()
 Returns the ConnectionSchemeInfo hash for this object.
 
AbstractDataProvider getDataProviderImpl (string subtype, *hash< auto > constructor_options)
 returns a data provider object for the connection and subtype passed as an argument
 
*hash< string, *hash< string, hash< DataProviderOptionInfo > > > getDataProviderSubtypesImpl ()
 Returns a hash of supported data provider subtypes.
 
 loadSubtypeInfo ()
 Loads subtype info from external modules.
 
- Private Member Methods inherited from GoogleRestClient::GoogleRestConnection
hash< ConnectionSchemeInfo > getConnectionSchemeInfoImpl ()
 Returns the ConnectionSchemeInfo hash for this object.
 
GoogleRestClient getImpl (bool connect=True, *hash< auto > rtopts)
 returns a GoogleRestClient object
 
 setChildCapabilities ()
 Sets child data provider capabilities.
 

Static Private Member Methods

static Mutex subtype_lck ()
 Data provider subtype lock.
 

Static Private Attributes

static hash< string, *hash< string, hash< DataProviderOptionInfo > > > subtype_info
 Data provider subtype info.
 

Additional Inherited Members

- Static Public Member Methods inherited from GoogleRestClient::GoogleRestConnection
static hash< auto > getOptions (hash< auto > opts)
 returns options for GoogleRestConnection::constructor()
 

Detailed Description

Class for GMail connections; returns GoogleRestClient objects.

This class implements all options of GoogleRestConnection except "api_profile", which is assumed to be "gmail"

See also
GoogleRestClient::GoogleRestClient::constructor() for more information on the above options

Member Function Documentation

◆ constructor() [1/2]

GoogleRestClient::GmailRestConnection::constructor ( hash< auto >  config,
*hash< auto >  attr 
)

creates the GoogleRestConnection object

Parameters
configwith the following keys:
  • name (required string): the connection name
  • display_name (optional string): the display name
  • short_desc (optional string): a short description in plain text
  • desc (optional string): a long description with markdown formatting
  • url (required string): the connection URL
  • opts (optional hash): connection options
  • logger (optional LoggerInterface object): logger for the connection
attroptional connection attributes
  • monitor (optional bool): should the connection be monitored? Default: True
  • enabled (optional bool): is the connection enabled? Default: True
  • locked (optional bool): is the connection locked? Default: False
  • debug_data (optional bool): debug data? Default: False
  • tags (optional hash): tags for the connection; no default value
Exceptions
CONNECTION-OPTION-ERRORmissing or invalid connection option or attribute

◆ constructor() [2/2]

GoogleRestClient::GmailRestConnection::constructor ( string  name,
string  description,
string  url = DefaultUrl,
hash< auto >  attributes = {},
hash< auto >  options = {} 
)

creates the GoogleRestConnection object

Parameters
namethe name of the connection
descriptionconnection description
urlthis aargument is ignored; the default Google API is always used
attributesvarious attributes. See below
optionsconnection options

See ConnectionProvider::AbstractConnection::constructor() for attributes and options reference.

Exceptions
CONNECTION-OPTION-ERRORmissing or invalid connection option

◆ getAppName()

*string GoogleRestClient::GmailRestConnection::getAppName ( )

Returns the data provider application name this connection serves, if any.

Returns
the data provider application name this connection serves, if any

◆ getDataProvider()

DataProvider::AbstractDataProvider GoogleRestClient::GmailRestConnection::getDataProvider ( *hash< auto >  constructor_options)

returns a data provider object for this connection

Parameters
constructor_optionsany additional constructor options for the data provider
Returns
a data provider object for this connection

◆ getDataProviderImpl()

AbstractDataProvider GoogleRestClient::GmailRestConnection::getDataProviderImpl ( string  subtype,
*hash< auto >  constructor_options 
)
private

returns a data provider object for the connection and subtype passed as an argument

Parameters
subtypethe subtype of data provider supported, in case the connection can return multiple data providers
constructor_optionsany additional constructor options required by the data provider
Returns
a data provider object for the connection and subtype passed as an argument
Exceptions
DATA-PROVIDER-ERRORthis object does not support the data provider API or the given subtype is not valid

◆ getDataProviderSubtypesImpl()

*hash< string, *hash< string, hash< DataProviderOptionInfo > > > GoogleRestClient::GmailRestConnection::getDataProviderSubtypesImpl ( )
private

Returns a hash of supported data provider subtypes.

Returns
a hash of supported data provider subtypes

◆ setUpdateOptionsCode()

GoogleRestClient::GmailRestConnection::setUpdateOptionsCode ( *code  update_options)

Can be called to set or clear a closure or call reference to be called when options are automatically updated.

The closure or call reference must have the following signature: <update_options(hash<auto> options)