![]() |
Qore ConnectionProvider Module Reference
1.2
|
abstract base class for connections More...

Public Member Methods | |
| deprecated | constructor (string n_name, string n_desc, string n_url, bool n_monitor, *hash n_opts, hash n_urlh, *string n_safe_url, *bool n_enabled) |
| creates the AbstractConnection object More... | |
| constructor (string name, string description, string url, hash attributes={}, hash options={}) | |
| creates the AbstractConnection object More... | |
| object | get (bool connect=True, *hash rtopts) |
| returns the underlying connection object More... | |
| hash< ConfigInfo > | getConfigHash () |
| returns a ConfigInfo hash of static configuration information about the connection More... | |
| hash< ConnectionConstructorInfo > | getConstructorInfo () |
| returns a ConnectionConstructorInfo hash for creating the connection object dynamically More... | |
| *hash | getDefaultOptions () |
| returns default options | |
| hash< ConnectionInfo > | getInfo (bool with_password=False) |
| returns a ConnectionInfo hash of information about the connection More... | |
| *hash | getOptions () |
| returns static / initialization options | |
| *hash | getRealOptions () |
| returns options for saving the connection's configuration information | |
| *hash | getRuntimeOptions () |
| returns runtime options | |
| abstract string | getType () |
| returns the string type name for the connection object | |
| parseTextOptions () | |
| this method is called when parsing connection file definitions from text files when loading into the database More... | |
| hash< PingInfo > | ping (bool throw_exception=False) |
| returns a hash with the results of the ping operation More... | |
| hash | validateOptions (hash options) |
| performs options validation in the constructor More... | |
Public Attributes | |
| string | desc |
| connection description | |
| bool | enabled = True |
| enabled/disabled indicator flag | |
| date | last_check |
| date/time of last check/ping | |
| bool | locked = False |
| locked/unlocked flag | |
| bool | loopback = False |
| set to True for loopback connections | |
| bool | monitor |
| monitoring flag | |
| string | name |
| connection name | |
| *hash | opts |
| connection options | |
| *hash | orig_opts |
| original connection options | |
| string | safe_url |
| "safe" URL (password information removed) | |
| string | status = "not checked" |
| status string; in case of a connection error this string will be the error string | |
| bool | up = False |
| connection status flag; set by monitoring or explicit pings/connections | |
| date | updated |
| date/time of last update | |
| string | url |
| connection URL (potentially with password info) | |
| hash | urlh |
| broken down URL hash (as returned by Qore::parse_url()) | |
Static Public Attributes | |
| static *code | post_processing |
| optional code for default post-processing of objects created by getImpl(); must take the object created and the connection name as arguments | |
Private Member Methods | |
| abstract hash< ConnectionConstructorInfo > | getConstructorInfoImpl () |
| this method must return a ConnectionConstructorInfo hash for creating the connection object dynamically More... | |
| abstract object | getImpl (bool connect=True, *hash rtopts) |
| this method must return the connection object corresponding to the object's configuration More... | |
| string | getSafeUrl (hash urlh) |
| creates a "safe" URL string with password information removed More... | |
| hash | parseUrl (string url) |
| Parse the URL to a hash. More... | |
| hash< PingInfo > | pingIntern (hash< PingInfo > rv) |
| performs the ping by executing get(); returns a PingInfo hash | |
abstract base class for connections
this class can be specialized to provide for user-defined connection types
| deprecated ConnectionProvider::AbstractConnection::constructor | ( | string | n_name, |
| string | n_desc, | ||
| string | n_url, | ||
| bool | n_monitor, | ||
| *hash | n_opts, | ||
| hash | n_urlh, | ||
| *string | n_safe_url, | ||
| *bool | n_enabled | ||
| ) |
creates the AbstractConnection object
| n_name | the name of the connection |
| n_desc | connection description |
| n_url | connection URL (potentially with password info) |
| n_monitor | monitoring flag |
| n_opts | connection options |
| n_urlh | broken down URL hash (as returned by Qore::parse_url()) |
| n_safe_url | "safe" URL (password information removed); if not set this will be set automatically by calling getSafeUrl() |
| n_enabled | enabled/disabled flag |
| ConnectionProvider::AbstractConnection::constructor | ( | string | name, |
| string | description, | ||
| string | url, | ||
| hash | attributes = {}, |
||
| hash | options = {} |
||
| ) |
creates the AbstractConnection object
| name | the name of the connection |
| description | connection description |
| url | connection URL (potentially with password info) |
| attributes | various attributes. See below |
| options | connection options |
Attributes are special flags for given connection - stored as public attributes of the object instance. For now there are:
enabled, default True monitor, default True locked, default False returns the underlying connection object
calls getImpl() to actually acquire the connection object
| hash<ConfigInfo> ConnectionProvider::AbstractConnection::getConfigHash | ( | ) |
returns a ConfigInfo hash of static configuration information about the connection
| hash<ConnectionConstructorInfo> ConnectionProvider::AbstractConnection::getConstructorInfo | ( | ) |
returns a ConnectionConstructorInfo hash for creating the connection object dynamically
|
privatepure virtual |
this method must return a ConnectionConstructorInfo hash for creating the connection object dynamically
Implemented in ConnectionProvider::HttpConnection, ConnectionProvider::FilesystemConnection, ConnectionProvider::FtpConnection, and ConnectionProvider::InvalidConnection.
|
privatepure virtual |
this method must return the connection object corresponding to the object's configuration
| connect | if True then the connection should be returned connected (and if possible a round-trip "ping" of the server should be made) |
| rtopts | if the object acquisition requires any runtime options, then these are passed here |
Implemented in ConnectionProvider::HttpConnection, ConnectionProvider::FilesystemConnection, ConnectionProvider::FtpConnection, and ConnectionProvider::InvalidConnection.
| hash<ConnectionInfo> ConnectionProvider::AbstractConnection::getInfo | ( | bool | with_password = False | ) |
returns a ConnectionInfo hash of information about the connection
| with_password | determines if the password is returned or not |
creates a "safe" URL string with password information removed
| urlh | a parsed hash (as returned from parseUrl() |
This base/default implementation expects the urlh as returned by Qore::parse_url())
Public attribute safe_url is created from the url calling AbstractConnection::getSafeUrl(). Reimplement this method if your connection does not follow standard URL in form:
| ConnectionProvider::AbstractConnection::parseTextOptions | ( | ) |
this method is called when parsing connection file definitions from text files when loading into the database
reimplement this method in subclasses to parse the option hash as set from a text file if needed (for special option formats, etc)
Parse the URL to a hash.
| url | a string with url |
The base implementation calls Qore::parse_url().
Reimplement parseUrl() if your connection uses different URL schema. Like eg. Qore::Datasource connection string.
returns a hash with the results of the ping operation
| throw_exception | throw an exception if a connection error occurs |
performs options validation in the constructor
| options | a has with options from the constructor |
This method can be overloaded in connections where are options created dynamically for example.