Change-Id: I93498b1bcdb6bd7923b1f1c1d49a76ae0c4b8b0echanges/53/24553/5
parent
e1a7da370d
commit
135dec41d7
@ -1,42 +0,0 @@
|
||||
package NGCP::BulkProcessor::Projects::Export::Ama::Format::Block;
|
||||
use strict;
|
||||
|
||||
## no critic
|
||||
|
||||
require Exporter;
|
||||
our @ISA = qw(Exporter);
|
||||
our @EXPORT_OK = qw(
|
||||
|
||||
);
|
||||
|
||||
sub new {
|
||||
|
||||
my $class = shift;
|
||||
my $self = bless {}, $class;
|
||||
my %params = @_;
|
||||
(
|
||||
$self->{name},
|
||||
) = @params{qw/
|
||||
name
|
||||
/};
|
||||
|
||||
return $self;
|
||||
|
||||
}
|
||||
|
||||
sub print {
|
||||
my $self = shift;
|
||||
|
||||
|
||||
}
|
||||
|
||||
sub get_block_descriptor_word {
|
||||
my $self = shift;
|
||||
#return total length in bytes (up to 256*256 bytes)
|
||||
}
|
||||
|
||||
sub pad {
|
||||
|
||||
}
|
||||
|
||||
1;
|
@ -0,0 +1,49 @@
|
||||
package NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::BlockCount;
|
||||
use strict;
|
||||
|
||||
## no critic
|
||||
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Field qw($TERMINATOR);
|
||||
|
||||
#use NGCP::BulkProcessor::Array qw(contains);
|
||||
|
||||
require Exporter;
|
||||
our @ISA = qw(Exporter NGCP::BulkProcessor::Projects::Export::Ama::Format::Field);
|
||||
our @EXPORT_OK = qw(
|
||||
|
||||
);
|
||||
|
||||
my $field_name = "block count";
|
||||
my $length = 6;
|
||||
my @param_names = qw/block_count/;
|
||||
|
||||
sub new {
|
||||
|
||||
my $class = shift;
|
||||
my $self = NGCP::BulkProcessor::Projects::Export::Ama::Format::Field->new(
|
||||
$class,
|
||||
name => $field_name,
|
||||
length => $length,
|
||||
@_);
|
||||
|
||||
return $self;
|
||||
|
||||
}
|
||||
|
||||
sub _get_param_names {
|
||||
|
||||
my $self = shift;
|
||||
return @param_names;
|
||||
|
||||
}
|
||||
|
||||
sub get_hex {
|
||||
|
||||
my $self = shift;
|
||||
my ($block_count) = $self->_get_params(@_);
|
||||
die("invalid block count '$block_count'") if ($block_count < 0 or $block_count > 99999);
|
||||
return sprintf('%05d',$block_count) . $TERMINATOR;
|
||||
|
||||
}
|
||||
|
||||
1;
|
@ -0,0 +1,49 @@
|
||||
package NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::FileSequenceNumber;
|
||||
use strict;
|
||||
|
||||
## no critic
|
||||
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Field qw($TERMINATOR);
|
||||
|
||||
#use NGCP::BulkProcessor::Array qw(contains);
|
||||
|
||||
require Exporter;
|
||||
our @ISA = qw(Exporter NGCP::BulkProcessor::Projects::Export::Ama::Format::Field);
|
||||
our @EXPORT_OK = qw(
|
||||
|
||||
);
|
||||
|
||||
my $field_name = "file sequence number";
|
||||
my $length = 4;
|
||||
my @param_names = qw/file_sequence_number/;
|
||||
|
||||
sub new {
|
||||
|
||||
my $class = shift;
|
||||
my $self = NGCP::BulkProcessor::Projects::Export::Ama::Format::Field->new(
|
||||
$class,
|
||||
name => $field_name,
|
||||
length => $length,
|
||||
@_);
|
||||
|
||||
return $self;
|
||||
|
||||
}
|
||||
|
||||
sub _get_param_names {
|
||||
|
||||
my $self = shift;
|
||||
return @param_names;
|
||||
|
||||
}
|
||||
|
||||
sub get_hex {
|
||||
|
||||
my $self = shift;
|
||||
my ($file_sequence_number) = $self->_get_params(@_);
|
||||
die("invalid file sequence number '$file_sequence_number'") if ($file_sequence_number < 1 or $file_sequence_number > 999);
|
||||
return sprintf('%03d',$file_sequence_number) . $TERMINATOR;
|
||||
|
||||
}
|
||||
|
||||
1;
|
@ -0,0 +1,54 @@
|
||||
package NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::GenericIssue;
|
||||
use strict;
|
||||
|
||||
## no critic
|
||||
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Field qw($TERMINATOR);
|
||||
|
||||
#use NGCP::BulkProcessor::Array qw(contains);
|
||||
|
||||
require Exporter;
|
||||
our @ISA = qw(Exporter NGCP::BulkProcessor::Projects::Export::Ama::Format::Field);
|
||||
our @EXPORT_OK = qw(
|
||||
|
||||
);
|
||||
|
||||
my $field_name = "generic issue";
|
||||
my $length = 6;
|
||||
my @param_names = qw/generic_issue_number point_issue_level overwrite_level/;
|
||||
|
||||
sub new {
|
||||
|
||||
my $class = shift;
|
||||
my $self = NGCP::BulkProcessor::Projects::Export::Ama::Format::Field->new(
|
||||
$class,
|
||||
name => $field_name,
|
||||
length => $length,
|
||||
@_);
|
||||
$self->{generic_issue_number} //= 0;
|
||||
$self->{point_issue_level} //= 0;
|
||||
$self->{overwrite_level} //= 0;
|
||||
|
||||
return $self;
|
||||
|
||||
}
|
||||
|
||||
sub _get_param_names {
|
||||
|
||||
my $self = shift;
|
||||
return @param_names;
|
||||
|
||||
}
|
||||
|
||||
sub get_hex {
|
||||
|
||||
my $self = shift;
|
||||
my ($generic_issue_number,$point_issue_level,$overwrite_level) = $self->_get_params(@_);
|
||||
die("invalid generic issue number '$generic_issue_number'") if length($generic_issue_number) < 1 or length($generic_issue_number) > 2;
|
||||
die("invalid point issue level '$point_issue_level'") if length($point_issue_level) < 1 or length($point_issue_level) > 2;
|
||||
die("invalid overwrite level '$overwrite_level'") if length($overwrite_level) != 1;
|
||||
return sprintf('%02d',$generic_issue_number) . sprintf('%02d',$point_issue_level) . $overwrite_level . $TERMINATOR;
|
||||
|
||||
}
|
||||
|
||||
1;
|
@ -0,0 +1,49 @@
|
||||
package NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::RecordCount;
|
||||
use strict;
|
||||
|
||||
## no critic
|
||||
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Field qw($TERMINATOR);
|
||||
|
||||
#use NGCP::BulkProcessor::Array qw(contains);
|
||||
|
||||
require Exporter;
|
||||
our @ISA = qw(Exporter NGCP::BulkProcessor::Projects::Export::Ama::Format::Field);
|
||||
our @EXPORT_OK = qw(
|
||||
|
||||
);
|
||||
|
||||
my $field_name = "record count";
|
||||
my $length = 8;
|
||||
my @param_names = qw/record_count/;
|
||||
|
||||
sub new {
|
||||
|
||||
my $class = shift;
|
||||
my $self = NGCP::BulkProcessor::Projects::Export::Ama::Format::Field->new(
|
||||
$class,
|
||||
name => $field_name,
|
||||
length => $length,
|
||||
@_);
|
||||
|
||||
return $self;
|
||||
|
||||
}
|
||||
|
||||
sub _get_param_names {
|
||||
|
||||
my $self = shift;
|
||||
return @param_names;
|
||||
|
||||
}
|
||||
|
||||
sub get_hex {
|
||||
|
||||
my $self = shift;
|
||||
my ($record_count) = $self->_get_params(@_);
|
||||
die("invalid record count '$record_count'") if ($record_count < 0 or $record_count > 9999999);
|
||||
return sprintf('%07d',$record_count) . $TERMINATOR;
|
||||
|
||||
}
|
||||
|
||||
1;
|
@ -0,0 +1,65 @@
|
||||
package NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::TracerType;
|
||||
use strict;
|
||||
|
||||
## no critic
|
||||
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Field qw($TERMINATOR);
|
||||
|
||||
use NGCP::BulkProcessor::Array qw(contains);
|
||||
|
||||
require Exporter;
|
||||
our @ISA = qw(Exporter NGCP::BulkProcessor::Projects::Export::Ama::Format::Field);
|
||||
our @EXPORT_OK = qw(
|
||||
$TRANSFER_IN
|
||||
$TRANSFER_OUT
|
||||
$AMATPS_PRIMARY
|
||||
$AMATPS_SECONDARY
|
||||
$DMS100F_HOURLY
|
||||
);
|
||||
|
||||
my $field_name = "tracer type";
|
||||
my $length = 4;
|
||||
my @param_names = qw/tracer_type/;
|
||||
|
||||
my @tracer_types = ();
|
||||
our $TRANSFER_IN = '007';
|
||||
push(@tracer_types,$TRANSFER_IN);
|
||||
our $TRANSFER_OUT = '008';
|
||||
push(@tracer_types,$TRANSFER_OUT);
|
||||
our $AMATPS_PRIMARY = '032';
|
||||
push(@tracer_types,$AMATPS_PRIMARY);
|
||||
our $AMATPS_SECONDARY = '033';
|
||||
push(@tracer_types,$AMATPS_SECONDARY);
|
||||
our $DMS100F_HOURLY = '037';
|
||||
push(@tracer_types,$DMS100F_HOURLY);
|
||||
|
||||
sub new {
|
||||
|
||||
my $class = shift;
|
||||
my $self = NGCP::BulkProcessor::Projects::Export::Ama::Format::Field->new(
|
||||
$class,
|
||||
name => $field_name,
|
||||
length => $length,
|
||||
@_);
|
||||
|
||||
return $self;
|
||||
|
||||
}
|
||||
|
||||
sub _get_param_names {
|
||||
|
||||
my $self = shift;
|
||||
return @param_names;
|
||||
|
||||
}
|
||||
|
||||
sub get_hex {
|
||||
|
||||
my $self = shift;
|
||||
my ($tracer_type) = $self->_get_params(@_);
|
||||
die("invalid tracer type '$tracer_type'") unless contains($tracer_type,\@tracer_types);
|
||||
return $tracer_type . $TERMINATOR;
|
||||
|
||||
}
|
||||
|
||||
1;
|
@ -0,0 +1,91 @@
|
||||
package NGCP::BulkProcessor::Projects::Export::Ama::Format::Structures::Structure9013;
|
||||
use strict;
|
||||
|
||||
## no critic
|
||||
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Structure qw();
|
||||
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::HexId qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::StructureCode qw($STRUCTURE_CODE_9013);
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::CallType qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::SensorType qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::SensorId qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::RecordingOfficeType qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::RecordingOfficeId qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::Date qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::ConnectTime qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::GenericIssue qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::TracerType qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::FileSequenceNumber qw();
|
||||
|
||||
require Exporter;
|
||||
our @ISA = qw(Exporter NGCP::BulkProcessor::Projects::Export::Ama::Format::FieldSet NGCP::BulkProcessor::Projects::Export::Ama::Format::Structure);
|
||||
our @EXPORT_OK = qw(
|
||||
|
||||
);
|
||||
|
||||
my $length = 64;
|
||||
|
||||
sub new {
|
||||
|
||||
my $class = shift;
|
||||
my $self = NGCP::BulkProcessor::Projects::Export::Ama::Format::Structure->new(
|
||||
$class,
|
||||
length => $length,
|
||||
#structure_name => $structure_name,
|
||||
@_);
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::HexId->new(
|
||||
@_,
|
||||
));
|
||||
$self->{structure_code} = NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::StructureCode->new(
|
||||
structure_code => $STRUCTURE_CODE_9013,
|
||||
@_,
|
||||
);
|
||||
$self->_add_field($self->{structure_code});
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::CallType->new(
|
||||
call_type => $NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::CallType::TRANSFER,
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::SensorType->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::SensorId->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::RecordingOfficeType->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::RecordingOfficeId->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::Date->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::ConnectTime->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::GenericIssue->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::TracerType->new(
|
||||
tracer_type => $NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::TracerType::TRANSFER_IN,
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::FileSequenceNumber->new(
|
||||
@_,
|
||||
));
|
||||
|
||||
return $self;
|
||||
|
||||
}
|
||||
|
||||
sub get_structure_code_field {
|
||||
my $self = shift;
|
||||
return $self->{structure_code};
|
||||
}
|
||||
|
||||
#sub get_instance {
|
||||
# return
|
||||
#}
|
||||
|
||||
1;
|
@ -0,0 +1,99 @@
|
||||
package NGCP::BulkProcessor::Projects::Export::Ama::Format::Structures::Structure9014;
|
||||
use strict;
|
||||
|
||||
## no critic
|
||||
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Structure qw();
|
||||
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::HexId qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::StructureCode qw($STRUCTURE_CODE_9014);
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::CallType qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::SensorType qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::SensorId qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::RecordingOfficeType qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::RecordingOfficeId qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::Date qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::ConnectTime qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::GenericIssue qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::TracerType qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::FileSequenceNumber qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::RecordCount qw();
|
||||
use NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::BlockCount qw();
|
||||
|
||||
require Exporter;
|
||||
our @ISA = qw(Exporter NGCP::BulkProcessor::Projects::Export::Ama::Format::FieldSet NGCP::BulkProcessor::Projects::Export::Ama::Format::Structure);
|
||||
our @EXPORT_OK = qw(
|
||||
|
||||
);
|
||||
|
||||
my $length = 78;
|
||||
|
||||
sub new {
|
||||
|
||||
my $class = shift;
|
||||
my $self = NGCP::BulkProcessor::Projects::Export::Ama::Format::Structure->new(
|
||||
$class,
|
||||
length => $length,
|
||||
#structure_name => $structure_name,
|
||||
@_);
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::HexId->new(
|
||||
@_,
|
||||
));
|
||||
$self->{structure_code} = NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::StructureCode->new(
|
||||
structure_code => $STRUCTURE_CODE_9014,
|
||||
@_,
|
||||
);
|
||||
$self->_add_field($self->{structure_code});
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::CallType->new(
|
||||
call_type => $NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::CallType::TRANSFER,
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::SensorType->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::SensorId->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::RecordingOfficeType->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::RecordingOfficeId->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::Date->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::ConnectTime->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::GenericIssue->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::TracerType->new(
|
||||
tracer_type => $NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::TracerType::TRANSFER_IN,
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::FileSequenceNumber->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::RecordCount->new(
|
||||
@_,
|
||||
));
|
||||
$self->_add_field(NGCP::BulkProcessor::Projects::Export::Ama::Format::Fields::BlockCount->new(
|
||||
@_,
|
||||
));
|
||||
|
||||
return $self;
|
||||
|
||||
}
|
||||
|
||||
sub get_structure_code_field {
|
||||
my $self = shift;
|
||||
return $self->{structure_code};
|
||||
}
|
||||
|
||||
#sub get_instance {
|
||||
# return
|
||||
#}
|
||||
|
||||
1;
|
Binary file not shown.
Loading…
Reference in new issue