view Lib/Deployment/Batch/CustomAction.pm @ 44:32d2350fccf9

ORM *Minor fixes *Working tarnsform to sql *Fixes to the sql traits
author Sergey
date Mon, 11 Jan 2010 01:42:00 +0300
parents 03e58a454b20
children 16ada169ca75
line wrap: on
line source

use strict;
package Deployment::Batch::CustomAction;
use base qw(Deployment::Batch::Generic);
use Common;

BEGIN {
    DeclareProperty handlerRun => ACCESS_READ;
    DeclareProperty handlerRollback => ACCESS_READ;
    DeclareProperty Name => ACCESS_READ;
}

sub CTOR {
    my ($this,%args) = @_;

    $this->{$handlerRun} = $args{Run} || sub {};
    $this->{$handlerRollback} = $args{Rollback} || sub {};
    $this->{$Name} = $args{Name} || $this->SUPER::Name();
}

sub Run {
    my ($this) = @_;

    $this->{$handlerRun}->($this);
}

sub Rollback {
    my ($this) = @_;

    $this->{$handlerRollback}->($this);
}

1;