NAME

GRID::Cluster::Handle - The object that manages GRID::Cluster unidirectional and bidirectional pipes

DESCRIPTION

The result of a call to the methods open or open2 of GRID::Cluster is a reference to a GRID::Cluster::Handle object. This kind of object manages GRID::Cluster unidirectional and bidirectional pipes used during the execution of remote commands.

A GRID::Cluster::Handle object has the following attributes:

  • readset

    A reference to a IO::Select object. It contains the handles to make reading operations over the pipes.

  • proc

    A reference to a list that contains the reading handles of a pipe. This attribute is only used by the methods open and close.

  • rproc

    A reference to a list that contains the reading handles of a pipe. This attribute is only used by the methods open2 and close2.

  • wproc

    A reference to a list that contains the writing handles of a pipe. This attribute is only used by the methods open2 and close2.

  • pid

    A reference to a list that contains the PIDs of the processes that have been opened.

  • id

    A reference to a hash. The keys are unique identificators of every pipe reading handle. The values are numbers that identify every reading handle.

  • map_id_machine

    A reference to a hash. The keys are the id numbers of the reading handles. The values are the names of every machine.

METHODS

The Constructor new

Syntax:

my $cluster_handles = GRID::Cluster::Handle->new (
  readset        => $readset,
  rproc          => \@rproc,
  wproc          => \@wproc,
  pid            => \@pid,
  id             => \%id,
  map_id_machine => \%map_id_machine
);

In the case of using the methods open2 and close2.

my $cluster_handles = GRID::Cluster::Handle->new (
  readset        => $readset,
  proc           => \@proc,
  pid            => \@pid,
  id             => \%id,
  map_id_machine => \%map_id_machine
);

In the case of using the methods open and close.

SEE ALSO

AUTHORS

Eduardo Segredo Gonzalez <esegredo@ull.es> and Casiano Rodriguez Leon <casiano@ull.es>

AKNOWLEDGEMENTS

This work has been supported by the EC (FEDER) and the Spanish Ministry of Science and Innovation inside the 'Plan Nacional de I+D+i' with the contract number TIN2008-06491-C04-02.

Also, it has been supported by the Canary Government project number PI2007/015.

The work of Eduardo Segredo has been developed under the contract PTA2003-02-01053.

COPYRIGHT AND LICENSE

Copyright (C) 2009 by Casiano Rodriguez Leon and Eduardo Segredo Gonzalez. All rights reserved.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.