several bug fixes
This commit is contained in:
parent
08d0efe060
commit
1f6a6a2ba1
3 changed files with 11 additions and 6 deletions
|
|
@ -314,6 +314,8 @@ sub loadSchedule {
|
||||||
my $session = WebGUI::Session->open($self->config->getWebguiRoot, $config);
|
my $session = WebGUI::Session->open($self->config->getWebguiRoot, $config);
|
||||||
my $result = $session->db->read("select * from WorkflowSchedule");
|
my $result = $session->db->read("select * from WorkflowSchedule");
|
||||||
while (my $data = $result->hashRef) {
|
while (my $data = $result->hashRef) {
|
||||||
|
my $params = JSON::jsonToObj($data->{parameters});
|
||||||
|
$data->{parameters} = $params->{parameters};
|
||||||
$data->{config} = $config;
|
$data->{config} = $config;
|
||||||
$data->{sitename} = $session->config->get("sitename")->[0];
|
$data->{sitename} = $session->config->get("sitename")->[0];
|
||||||
$kernel->yield("addJob", $data);
|
$kernel->yield("addJob", $data);
|
||||||
|
|
|
||||||
|
|
@ -116,7 +116,7 @@ sub get {
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my $name = shift;
|
my $name = shift;
|
||||||
if ($name eq "parameters") {
|
if ($name eq "parameters") {
|
||||||
my $parameters = JSON::jsonToObj( $self->{_data}{$name});
|
my $parameters = JSON::jsonToObj($self->{_data}{$name});
|
||||||
return $parameters->{parameters};
|
return $parameters->{parameters};
|
||||||
}
|
}
|
||||||
return $self->{_data}{$name};
|
return $self->{_data}{$name};
|
||||||
|
|
|
||||||
|
|
@ -134,7 +134,7 @@ sub get {
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my $name = shift;
|
my $name = shift;
|
||||||
if ($name eq "parameters") {
|
if ($name eq "parameters") {
|
||||||
my $parameters = JSON::jsonToObj( $self->{_data}{$name});
|
my $parameters = JSON::jsonToObj($self->{_data}{$name});
|
||||||
return $parameters->{parameters};
|
return $parameters->{parameters};
|
||||||
}
|
}
|
||||||
return $self->{_data}{$name};
|
return $self->{_data}{$name};
|
||||||
|
|
@ -249,7 +249,6 @@ sub run {
|
||||||
return "done";
|
return "done";
|
||||||
}
|
}
|
||||||
$self->session->errorHandler->debug("Running workflow activity ".$activity->getId.", which is a ".(ref $activity).", for instance ".$self->getId.".");
|
$self->session->errorHandler->debug("Running workflow activity ".$activity->getId.", which is a ".(ref $activity).", for instance ".$self->getId.".");
|
||||||
my $object = {};
|
|
||||||
my $class = $self->get("className");
|
my $class = $self->get("className");
|
||||||
my $method = $self->get("methodName");
|
my $method = $self->get("methodName");
|
||||||
my $params = $self->get("parameters");
|
my $params = $self->get("parameters");
|
||||||
|
|
@ -258,12 +257,16 @@ sub run {
|
||||||
my $cmd = "use $class";
|
my $cmd = "use $class";
|
||||||
eval($cmd);
|
eval($cmd);
|
||||||
if ($@) {
|
if ($@) {
|
||||||
$self->session->errorHandler->warn("Error loading activity class $class: ".$@);
|
$self->session->errorHandler->error("Error loading activity class $class: ".$@);
|
||||||
return "error";
|
return "error";
|
||||||
}
|
}
|
||||||
eval{ $object = $class->$method($self->session, $params) };
|
my $object = eval{ $class->$method($self->session, $params) };
|
||||||
if ($@) {
|
if ($@) {
|
||||||
$self->session->errorHandler->warn("Error instanciating activity (".$activity->getId.") pass-in object: ".$@);
|
$self->session->errorHandler->error("Error instanciating activity (".$activity->getId.") pass-in object: ".$@);
|
||||||
|
return "error";
|
||||||
|
}
|
||||||
|
unless (defined $object) {
|
||||||
|
$self->session->errorHandler->error("Pass in object came back undefined for activity (".$activity->getId.") using ".$class.", ".$method.", ".$params.".");
|
||||||
return "error";
|
return "error";
|
||||||
}
|
}
|
||||||
$status = $activity->execute($object, $self);
|
$status = $activity->execute($object, $self);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue