API-Eulerian

 view release on metacpan or  search on metacpan

lib/API/Eulerian/EDW/Peer.pm  view on Meta::CPAN

#/usr/bin/env perl
###############################################################################
#
# @file Peer.pm
#
# @brief Eulerian Data Warehouse Peer Base class Module definition.
#
# @author Thorillon Xavier:x.thorillon@eulerian.com
#
# @date 26/11/2021
#
# @version 1.0
#
###############################################################################
package API::Eulerian::EDW::Peer;

use strict;

use API::Eulerian::EDW::Status();

#
# @brief Allocate a new Eulerian Data Warehouse Peer.
#
# @param $class - Eulerian Data Warehouse Peer Class.
# @param $setup - Setup attributes.
#
# @return Eulerian Data Warehouse Peer instance.
#
sub new
{
  my $proto = shift();
  my $class = ref($proto) || $proto;
  my $setup = shift() || {};
  return bless({
    _CLASS      => $class,
    _KIND       => 'access',
    _PLATFORM   => 'fr',
    _HOOKS      => undef,
    _TOKEN      => undef,
    _GRID       => undef,
    _HOST       => undef,
    _PORTS      => [ 80, 443 ],
    _SECURE     => 1,
    _IP         => undef
  });
}

#
# @brief Class attribute getter.
#
# @param $self - Eulerian Data Warehouse Peer.
#
# @return Eulerian Data Warehouse Peer Class name.
#
sub class
{
  return shift->{ _CLASS };
}
# @brief Token Kind attribute accessors.
#
# @param $self - Eulerian Data Warehouse Peer.
# @param $kind - Token kind.
#
# @return Token Kind.
#
sub kind
{
  my ( $self, $kind ) = @_;
  $self->{ _KIND } = $kind if defined( $kind );
  return $self->{ _KIND };
}
#
# @brief Host attribute accessors.
#
# @param $self - Eulerian Data Warehouse Peer.
# @param $host - Eulerian Data Warehouse Host name.
#
# @return Eulerian Data Warehouse Host Name.
#
sub host
{
  my ( $self, $host ) = @_;
  $self->{ _HOST } = $host if defined( $host );
  return $self->{ _HOST };
}
#
# @brief Ports attribute accessors.
#
# @param $self - Eulerian Data Warehouse Peer.
# @param $ports - Eulerian Data Warehouse Host Ports.
#
# @return Eulerian Data Warehouse Host Ports.
#
sub ports



( run in 0.662 second using v1.01-cache-2.11-cpan-39bf76dae61 )