?? catalogue.pm
字號:
# vim:ts=4 sw=4
# ----------------------------------------------------------------------------------------------------
# Name : ETL::Pequel3::Type::Section::Catalogue.pm
# Created : 22 June 2006
# Author : Mario Gaffiero (gaffie)
#
# Copyright 1999-2007 Mario Gaffiero.
#
# This file is part of Pequel(TM).
#
# Pequel is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
#
# Pequel 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. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Pequel; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
# ----------------------------------------------------------------------------------------------------
# Modification History
# When Version Who What
# ----------------------------------------------------------------------------------------------------
package ETL::Pequel3::Type::Section::Catalogue;
require 5.005_62;
use strict;
use warnings;
# ----------------------------------------------------------------------------------------------------
# CATALOGUE
# ----------------------------------------------------------------------------------------------------
{
package ETL::Pequel3::Type::Section::Catalogue::Abstract;
use base qw(ETL::Pequel3::Type::Catalogue);
use Class::STL::ClassMembers qw( pequel_ref ),
Class::STL::ClassMembers::DataMember->new(name => 'catalogue_name', default => 'sections'),
Class::STL::ClassMembers::DataMember->new(name => 'target_mem_name', default => 'section_name'),
Class::STL::ClassMembers::DataMember->new(name => 'element_type', default => 'ETL::Pequel3::Type::Section::Abstract');
use Class::STL::ClassMembers::Constructor;
sub new_extra
{
my $self = shift;
use ETL::Pequel3::Type::Section::Configuration;
use ETL::Pequel3::Type::Section::Extension;
use ETL::Pequel3::Type::Section::FieldType;
use ETL::Pequel3::Type::Section::Input;
use ETL::Pequel3::Type::Section::GroupBy;
use ETL::Pequel3::Type::Section::Sort;
use ETL::Pequel3::Type::Section::FieldProcess;
use ETL::Pequel3::Type::Section::Filter;
use ETL::Pequel3::Type::Section::Dedup;
use ETL::Pequel3::Type::Section::RepeatRecord;
use ETL::Pequel3::Type::Section::Output;
use ETL::Pequel3::Type::Section::Table;
#> use ETL::Pequel3::Type::Section::RangeTable;
use ETL::Pequel3::Type::Section::DistributeRecord;
use ETL::Pequel3::Type::Section::RejectRecord;
use ETL::Pequel3::Type::Section::InputJoin;
use ETL::Pequel3::Type::Section::Description;
use ETL::Pequel3::Type::Section::UserOption;
$self->push_back(
#NOTE: Order is important here:
ETL::Pequel3::Type::Section::Description->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::UserOption->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::Configuration->new(pequel_ref => $self->pequel_ref()),
#> ETL::Pequel3::Type::Section::UserOption->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::Extension->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::FieldType->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::Input->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::GroupBy->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::Output->new(pequel_ref => $self->pequel_ref()),
#NOTE: input_join must be prepared after output so as to preserve transfer-fields order...
ETL::Pequel3::Type::Section::InputJoin->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::SortOnInput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::FieldProcessOnInput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::FilterOnInput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::DedupOnInput->new(pequel_ref => $self->pequel_ref()),
#> ETL::Pequel3::Type::Section::DisplayMessageOnInput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::CopyRecordOnInput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::DivertRecordOnInput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::RejectRecordOnInput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::RepeatRecordOnInput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::SortOnOutput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::FieldProcessOnOutput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::FilterOnOutput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::DedupOnOutput->new(pequel_ref => $self->pequel_ref()),
#> ETL::Pequel3::Type::Section::DisplayMessageOnOutput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::CopyRecordOnOutput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::DivertRecordOnOutput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::RejectRecordOnOutput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::RepeatRecordOnOutput->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::Sort->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::FieldProcess->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::Filter->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::Dedup->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::CopyRecord->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::DivertRecord->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::RejectRecord->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::RepeatRecord->new(pequel_ref => $self->pequel_ref()),
ETL::Pequel3::Type::Section::Table->new(pequel_ref => $self->pequel_ref()),
#> ETL::Pequel3::Type::Section::RangeTable->new(pequel_ref => $self->pequel_ref()),
);
return $self;
}
}
# ----------------------------------------------------------------------------------------------------
{
package ETL::Pequel3::Type::Section::Catalogue;
use base qw(ETL::Pequel3::Type::Section::Catalogue::Abstract);
use Class::STL::ClassMembers;
use Class::STL::ClassMembers::SingletonConstructor;
}
# ----------------------------------------------------------------------------------------------------
{
package ETL::Pequel3::Type::Section::Catalogue::User;
use base qw(ETL::Pequel3::Type::Section::Catalogue::Abstract);
use Class::STL::ClassMembers;
use Class::STL::ClassMembers::Constructor;
}
# ----------------------------------------------------------------------------------------------------
1;
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -