man GnuPG::Handles () - GnuPG handles bundle

NAME

GnuPG::Handles - GnuPG handles bundle

SYNOPSIS

  use IO::Handle;
  my ( $stdin, $stdout, $stderr,
       $status_fh, $logger_fh, $passphrase_fh,
     )
    = ( IO::Handle->new(), IO::Handle->new(), IO::Handle->new(),
        IO::Handle->new(), IO::Handle->new(), IO::Handle->new(),
      );

  my $handles = GnuPG::Handles->new
    ( stdin      => $stdin,
      stdout     => $stdout,
      stderr     => $stderr,
      status     => $status_fh,
      logger     => $logger_fh,
      passphrase => $passphrase_fh,
    );

DESCRIPTION

GnuPG::Handles objects are generally instantiated to be used in conjunction with methods of objects of the class GnuPG::Interface. GnuPG::Handles objects represent a collection of handles that are used to communicate with GnuPG.

OBJECT METHODS

Initialization Methods

new( %initialization_args )
This methods creates a new object. The optional arguments are initialization of data members; the initialization is done in a manner according to the method created as described in new_hash_init in Class::MethodMaker.
hash_init( %args ).
This method works as described in new_hash_init in Class::MethodMaker.

OBJECT DATA MEMBERS

Note that these data members are interacted with via object methods created using the methods described in get_set in Class::MethodMaker, or object in Class::MethodMaker. Please read there for more information.

stdin
This handle is connected to the standard input of a GnuPG process.
stdout
This handle is connected to the standard output of a GnuPG process.
stderr
This handle is connected to the standard error of a GnuPG process.
status
This handle is connected to the status output handle of a GnuPG process.
logger
This handle is connected to the logger output handle of a GnuPG process.
passphrase
This handle is connected to the passphrase input handle of a GnuPG process.
command
This handle is connected to the command input handle of a GnuPG process.
options
This is a hash of hashrefs of settings pertaining to the handles in this object. The outer-level hash is keyed by the names of the handle the setting is for, while the inner is keyed by the setting being referenced. For example, to set the setting CWdirect to true for the filehandle CWstdin, the following code will do:
    # assuming $handles is an already-created
    # GnuPG::Handles object, this sets all
    # options for the filehandle stdin in one blow,
    # clearing out all others
    $handles->options( 'stdin', { direct => 1 } );
    # this is useful to just make one change
    # to the set of options for a handle
    $handles->options( 'stdin' )->{direct} = 1;
    # and to get the setting...
    $setting = $handles->options( 'stdin' )->{direct};
    # and to clear the settings for stdin
    $handles->options( 'stdin', {} );
The currently-used settings are as follows:
direct
If the setting CWdirect is true for a handle, the GnuPG process spawned will access the handle directly. This is useful for having the GnuPG process read or write directly to or from an already-opened file.

SEE ALSO

GnuPG::Interface, Class::MethodMaker