summaryrefslogtreecommitdiff
path: root/fml
diff options
context:
space:
mode:
authorfukachan <fukachan>2001-01-24 07:45:26 +0000
committerfukachan <fukachan>2001-01-24 07:45:26 +0000
commitcc0855103ab65f5000b1dfadb36d9645b34e2de2 (patch)
tree9e31695a7bae306f0c2fd8d01f7dd2e47422fbb4 /fml
parent6b6ba7578ba471cf184d3c1f5615c872e0dd831c (diff)
downloadfml8-cc0855103ab65f5000b1dfadb36d9645b34e2de2.tar.gz
fml8-cc0855103ab65f5000b1dfadb36d9645b34e2de2.tar.bz2
fml8-cc0855103ab65f5000b1dfadb36d9645b34e2de2.zip
change arguments. we use $curproc basically
Diffstat (limited to 'fml')
-rw-r--r--fml/lib/FML/Process/Distribute.pm4
-rw-r--r--fml/lib/FML/Ticket/Model/toymodel.pm5
-rw-r--r--fml/lib/FML/Ticket/System.pm30
3 files changed, 32 insertions, 7 deletions
diff --git a/fml/lib/FML/Process/Distribute.pm b/fml/lib/FML/Process/Distribute.pm
index 2cf21b16..c811473c 100644
--- a/fml/lib/FML/Process/Distribute.pm
+++ b/fml/lib/FML/Process/Distribute.pm
@@ -193,7 +193,6 @@ sub _ticket_system_check
{
my ($curproc, $args) = @_;
my $config = $curproc->{ config };
- my $header = $curproc->{ article }->{ header }; # FML::Header object
my $model = $config->{ ticket_model };
my $pkg = "FML::Ticket::Model::";
@@ -208,7 +207,8 @@ sub _ticket_system_check
eval qq{ require $pkg; $pkg->import();};
unless ($@) {
my $ts = $pkg->new;
- $ts->add_ticket($header, $config, $args) if $ts->can('add_ticket');
+ $ts->add_ticket($curproc, $args);
+ $ts->update_ticket_trace_cache($curproc);
}
else {
Log($@);
diff --git a/fml/lib/FML/Ticket/Model/toymodel.pm b/fml/lib/FML/Ticket/Model/toymodel.pm
index 02cb8943..123adff3 100644
--- a/fml/lib/FML/Ticket/Model/toymodel.pm
+++ b/fml/lib/FML/Ticket/Model/toymodel.pm
@@ -28,10 +28,13 @@ sub new
return bless $me, $type;
}
+sub DESTROY {}
sub add_ticket
{
- my ($self, $header, $config, $args) = @_;
+ my ($self, $curproc, $args) = @_;
+ my $config = $curproc->{ config };
+ my $header = $curproc->{ article }->{ header }; # FML::Header object
my $subject = $header->get('subject');
use FML::Header::Subject;
diff --git a/fml/lib/FML/Ticket/System.pm b/fml/lib/FML/Ticket/System.pm
index 69811e6b..b48481c4 100644
--- a/fml/lib/FML/Ticket/System.pm
+++ b/fml/lib/FML/Ticket/System.pm
@@ -9,9 +9,11 @@
#
package FML::Ticket::System;
+
use strict;
-use vars qw(@ISA @EXPORT @EXPORT_OK);
+use vars qw(@ISA @EXPORT @EXPORT_OK $AUTOLOAD);
use Carp;
+use Base::Errors qw(error_reason error error_reset);
require Exporter;
@ISA = qw(Exporter);
@@ -33,16 +35,36 @@ sub increment_id
use FML::SequenceFile;
my $sfh = new FML::SequenceFile { sequence_file => $seq_file };
my $id = $sfh->increment_id;
- $self->{ _error } = $sfh->error;
+ $self->error_reason( $sfh->error );
$id;
}
-sub error
+sub update_ticket_trace_cache
+{
+ my ($self, $curproc) = @_;
+ my $config = $curproc->{ config };
+ my $db_dir = $config->{ ticket_db_dir };
+ my $ml_name = $config->{ ml_name };
+ my $cachefile = $db_dir. $ml_name;
+
+ use FileHandle;
+ my $fh = new FileHandle ">> $cachefile";
+ if (defined $fh) {
+ print $fh "";
+ close($fh);
+ }
+ else {
+ $self->error_reason("cannot open ticket cache");
+ }
+}
+
+
+sub AUTOLOAD
{
my ($self) = @_;
- return $self->{ _error };
+ $self->error_reason("FYI: unknown method $AUTOLOAD is called");
}