Qore ssh2 Module ..
Loading...
Searching...
No Matches
Ssh2Connections::SftpConnection Class Reference

class for SFTP connections; returns an object of class Qore::SSH2::SFTPClient for acquiring files from or posting files to SFTP servers More...

#include <Ssh2Connections.qm.dox.h>

Inheritance diagram for Ssh2Connections::SftpConnection:
Ssh2Connections::AbstractSsh2Connection

Public Member Methods

void constructor (string url, hash< auto > attributes, string name, string description, hash< auto > options)
 creates the SftpConnection object
 
void constructor (hash< auto > config, soft< hash< auto > > attr)
 Creates the SftpConnection object.
 
string getType ()
 returns "sftp"
 
soft< hash< auto > > getRuntimeOptions ()
 returns runtime options
 
bool hasDataProvider ()
 returns True, as the connection returns a data provider with the getDataProvider method
 
AbstractDataProvider getDataProviderImpl (string subtype, soft< hash< auto > > constructor_options)
 returns a data provider object for the connection and subtype passed as an argument
 
void setChildCapabilities ()
 Sets child data provider capabilities.
 
void checkSubtypeInfo ()
 Verifies that subtype info has been loaded from external modules.
 
soft< hash< string, *hash< string, hash< DataProviderOptionInfo > > > > getDataProviderSubtypesImpl ()
 Returns a hash of supported data provider subtypes.
 
void loadSubtypeInfo ()
 Loads subtype info from external modules.
 
Qore::SSH2::SFTPClient getImpl (bool connect, soft< hash< auto > > rtopts)
 returns a Qore::SSH2::SFTPClient object
 
hash< ConnectionSchemeInfo > getConnectionSchemeInfoImpl ()
 Returns the ConnectionSchemeInfo hash for this object.
 
- Public Member Methods inherited from Ssh2Connections::AbstractSsh2Connection
void constructor (string url, hash< auto > attributes, string name, string description, hash< auto > options)
 abstract base class for ssh module connections
 
void constructor (hash< auto > config, soft< hash< auto > > attr)
 Creates the AbstractSsh2Connection object.
 

Public Attributes

const auto ConnectionScheme = ...
 Connection entry info.
 
const auto DataProviderSubtypeMap = ...
 Data provider subtypes supported.
 

Private Attributes

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

Detailed Description

class for SFTP connections; returns an object of class Qore::SSH2::SFTPClient for acquiring files from or posting files to SFTP servers

supports the following option:

  • "keyfile": a path to a private key file in PEM format to use for key-based authentication (environment variables can be prefixed with "$" in the path (or optionally enclosed in curly brackets as in "${var}") and will be substituted with the value of the environment variable)

additionally, the following runtime options are supported in getImpl():

  • "path": overrides the path component in the URL at runtime
  • "path_add": appends the given string to the path component of the URL at runtime

Member Function Documentation

◆ checkSubtypeInfo()

void Ssh2Connections::SftpConnection::checkSubtypeInfo ( )

Verifies that subtype info has been loaded from external modules.

Since
ConnectionProvider 2.0

◆ constructor() [1/2]

void Ssh2Connections::SftpConnection::constructor ( hash< auto >  config,
soft< hash< auto > >  attr 
)

Creates the SftpConnection 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]

void Ssh2Connections::SftpConnection::constructor ( string  url,
hash< auto >  attributes,
string  name,
string  description,
hash< auto >  options 
)

creates the SftpConnection object

Parameters
namethe name of the connection
descriptionconnection description
urlconnection URL (potentially with password info)
attributesvarious attributes. See below
optionsconnection options

See AbstractConnection::constructor for attributes and options reference.

◆ getDataProviderImpl()

AbstractDataProvider Ssh2Connections::SftpConnection::getDataProviderImpl ( string  subtype,
soft< hash< auto > >  constructor_options 
)

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
See also
Since
ConnectionProvider 2.0

◆ getDataProviderSubtypesImpl()

soft< hash< string, *hash< string, hash< DataProviderOptionInfo > > > > Ssh2Connections::SftpConnection::getDataProviderSubtypesImpl ( )

Returns a hash of supported data provider subtypes.

Returns
a hash of supported data provider subtypes
Since
ConnectionProvider 2.0

◆ getImpl()

Qore::SSH2::SFTPClient Ssh2Connections::SftpConnection::getImpl ( bool  connect,
soft< hash< auto > >  rtopts 
)

returns a Qore::SSH2::SFTPClient object

Parameters
connectif True, then Qore::SSH2::SFTPClient::connect is called and also if there is any path in the URL then Qore::SSH2::SFTPClient::chdir is called on that path
rtoptsthis object takes the following runtime options:
  • "path": overrides the path component in the URL at runtime
  • "path_add": appends the given string to the path component of the URL at runtime
Returns
a Qore::SSH2::SFTPClient object

◆ getRuntimeOptions()

soft< hash< auto > > Ssh2Connections::SftpConnection::getRuntimeOptions ( )

returns runtime options

return a hash with the following keys reflecting support for the corresponding runtime options in getImpl():

  • "path": overrides the path component in the URL at runtime
  • "path_add": appends the given string to the path component of the URL at runtime

◆ hasDataProvider()

bool Ssh2Connections::SftpConnection::hasDataProvider ( )

returns True, as the connection returns a data provider with the getDataProvider method

Returns
True, as the connection returns a data provider with the getDataProvider method
See also
getDataProvider

The documentation for this class was generated from the following file: