From 363a191019f34e2f78edd2a92cd02be004ee4fd2 Mon Sep 17 00:00:00 2001 From: Florent Villard Date: Mon, 16 Oct 2006 16:15:41 +0000 Subject: now plugins are complete abstract classes --- lib/Youri/Submit/Post.pm | 71 ++------------------------------------ lib/Youri/Submit/Pre.pm | 85 ++-------------------------------------------- lib/Youri/Submit/Reject.pm | 71 ++------------------------------------ 3 files changed, 6 insertions(+), 221 deletions(-) (limited to 'lib') diff --git a/lib/Youri/Submit/Post.pm b/lib/Youri/Submit/Post.pm index b6e1fc7..024132a 100644 --- a/lib/Youri/Submit/Post.pm +++ b/lib/Youri/Submit/Post.pm @@ -14,78 +14,11 @@ This abstract class defines post plugin interface. use warnings; use strict; use Carp; - -=head1 CLASS METHODS - -=head2 new(%args) - -Creates and returns a new Youri::Upload::Pre object. - -No generic parameters (subclasses may define additional ones). - -Warning: do not call directly, call subclass constructor instead. - -=cut - -sub new { - my $class = shift; - croak "Abstract class" if $class eq __PACKAGE__; - - my %options = ( - id => '', # object id - test => 0, # test mode - verbose => 0, # verbose mode - @_ - ); - - - my $self = bless { - _id => $options{id}, - _test => $options{test}, - _verbose => $options{verbose}, - }, $class; - - $self->_init(%options); - - return $self; -} - -sub _init { - # do nothing -} - -=head1 INSTANCE METHODS - -=head2 get_id() - -Returns plugin identity. - -=cut - -sub get_id { - my ($self) = @_; - croak "Not a class method" unless ref $self; - - return $self->{_id}; -} - -=head2 run($repository, $target, $define) - -Execute post on given L object. - -=head1 SUBCLASSING - -The following methods have to be implemented: - -=over - -=item run - -=back +use base qw/Youri::Submit::Plugin/; =head1 COPYRIGHT AND LICENSE -Copyright (C) 2002-2006, YOURI project +Copyright (C) 2006, Mandriva This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/lib/Youri/Submit/Pre.pm b/lib/Youri/Submit/Pre.pm index 0e603db..72560b2 100644 --- a/lib/Youri/Submit/Pre.pm +++ b/lib/Youri/Submit/Pre.pm @@ -14,92 +14,11 @@ This abstract class defines pre plugin interface. use warnings; use strict; use Carp; - -=head1 CLASS METHODS - -=head2 new(%args) - -Creates and returns a new Youri::Upload::Pre object. - -No generic parameters (subclasses may define additional ones). - -Warning: do not call directly, call subclass constructor instead. - -=cut - -sub new { - my $class = shift; - croak "Abstract class" if $class eq __PACKAGE__; - - my %options = ( - id => '', # object id - test => 0, # test mode - verbose => 0, # verbose mode - @_ - ); - - - my $self = bless { - _id => $options{id}, - _test => $options{test}, - _verbose => $options{verbose}, - }, $class; - - $self->_init(%options); - - return $self; -} - -sub _init { - # do nothing -} - -=head1 INSTANCE METHODS - -=head2 get_error() - -Returns exact error message if check failed. - -=cut - -sub get_error { - my ($self) = @_; - croak "Not a class method" unless ref $self; - - return $self->{_error}; -} - - -=head2 get_id() - -Returns plugin identity. - -=cut - -sub get_id { - my ($self) = @_; - croak "Not a class method" unless ref $self; - - return $self->{_id}; -} - -=head2 run($pre_package, $repository, $target, $define) - -Execute pre on given L object. - -=head1 SUBCLASSING - -The following methods have to be implemented: - -=over - -=item run - -=back +use base qw/Youri::Submit::Plugin/; =head1 COPYRIGHT AND LICENSE -Copyright (C) 2002-2006, YOURI project +Copyright (C) 2006, Mandriva This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. diff --git a/lib/Youri/Submit/Reject.pm b/lib/Youri/Submit/Reject.pm index f3b9417..8472a4a 100644 --- a/lib/Youri/Submit/Reject.pm +++ b/lib/Youri/Submit/Reject.pm @@ -14,78 +14,11 @@ This abstract class defines post plugin interface. use warnings; use strict; use Carp; - -=head1 CLASS METHODS - -=head2 new(%args) - -Creates and returns a new Youri::Upload::Pre object. - -No generic parameters (subclasses may define additional ones). - -Warning: do not call directly, call subclass constructor instead. - -=cut - -sub new { - my $class = shift; - croak "Abstract class" if $class eq __PACKAGE__; - - my %options = ( - id => '', # object id - test => 0, # test mode - verbose => 0, # verbose mode - @_ - ); - - - my $self = bless { - _id => $options{id}, - _test => $options{test}, - _verbose => $options{verbose}, - }, $class; - - $self->_init(%options); - - return $self; -} - -sub _init { - # do nothing -} - -=head1 INSTANCE METHODS - -=head2 get_id() - -Returns plugin identity. - -=cut - -sub get_id { - my ($self) = @_; - croak "Not a class method" unless ref $self; - - return $self->{_id}; -} - -=head2 run($repository, $target, $define) - -Execute post on given L object. - -=head1 SUBCLASSING - -The following methods have to be implemented: - -=over - -=item run - -=back +use base qw/Youri::Submit::Plugin/; =head1 COPYRIGHT AND LICENSE -Copyright (C) 2002-2006, YOURI project +Copyright (C) 2006, Mandriva This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. -- cgit v1.2.1