Sha256: 21fe8ba0066cf96c7ef9326ede4ab142f2cfdfacdf81c14a9fd3b569a193b61f
Contents?: true
Size: 1.18 KB
Versions: 42
Compression:
Stored size: 1.18 KB
Contents
package Javonet::Core::Handler::CommandHandler::LoadLibraryHandler; use aliased 'Javonet::Core::Handler::PerlHandler' => 'PerlHandler'; use strict; use warnings FATAL => 'all'; use Moose; use lib 'lib'; use File::Basename; use Nice::Try; use aliased 'Javonet::Core::Exception::Exception' => 'Exception'; extends 'Javonet::Core::Handler::CommandHandler::AbstractCommandHandler'; sub new { my $class = shift; my $self = { required_parameters_count => 1 }; return bless $self, $class; } sub process { my ($self, $command) = @_; try { my $current_payload_ref = $command->{payload}; my @cur_payload = @$current_payload_ref; my $parameters_length = @cur_payload; if ($parameters_length != $self->{required_parameters_count}) { die Exception->new("Exception: LoadLibrary parameters mismatch"); } my $path_to_file = $command->{payload}[0]; my $path_to_file_dir = dirname($path_to_file); my $file_name = basename($path_to_file); push(@INC, "$path_to_file_dir"); eval(require $file_name); return 0; } catch ( $e ) { return Exception->new($e); } } no Moose; 1;
Version data entries
42 entries across 21 versions & 1 rubygems