API-Eulerian
view release on metacpan or search on metacpan
lib/API/Eulerian/EDW/Parser.pm view on Meta::CPAN
#/usr/bin/env perl
###############################################################################
#
# @file Parser.pm
#
# @brief Eulerian Data Warehouse REST Parser Module definition.
#
# This module is the base class of every input file parser.
#
# @author Thorillon Xavier:x.thorillon@eulerian.com
#
# @date 26/11/2021
#
# @version 1.0
#
###############################################################################
#
# Setup module name
#
package API::Eulerian::EDW::Parser;
#
# Enforce compilor rules
#
use strict; use warnings;
#
# @brief Allocate and initialize a new API::Eulerian::EDW::Parser instance.
#
# @param $class - API::Eulerian::EDW::Parser class.
# @param $path - Input file path.
# @param $uuid - Eulerian Data Warehouse Analysis UUID.
#
# @return API::Eulerian::EDW::Parser instance.
#
sub new
{
my ( $class, $path, $uuid ) = @_;
return bless( {
_PATH => $path,
_UUID => $uuid,
}, $class );
}
#
# @brief Get/Set Eulerian Data Warehouse Analysis UUID.
#
# @param $self - API::Eulerian::EDW::Parser instance.
# @param $uuid - Eulerian Data Warehouse Analysis UUID.
#
# @return Eulerian Data Warehouse Analysis UUID.
#
sub uuid
{
my ( $self, $uuid ) = @_;
$self->{ _UUID } = $uuid if $uuid;
return $self->{ _UUID };
}
#
# @brief Get/Set Input file path.
#
# @parm $self - API::Eulerian::EDW::Parser instance.
#
# @return Input file path.
#
sub path
{
my ( $self, $path ) = @_;
$self->{ _PATH } = $path if $path;
return $self->{ _PATH };
}
#
# @brief Parse input file path and call user specific hook.
( run in 0.692 second using v1.01-cache-2.11-cpan-5c0b1e786e0 )