Sha256: 5fcc0640921f56a87fa4951f4268467f9031b69c453d96bcd05324b758e3bb72

Contents?: true

Size: 813 Bytes

Versions: 52

Compression:

Stored size: 813 Bytes

Contents

package Javonet::Core::Handler::ReferencesCache;
use strict;
use warnings FATAL => 'all';
use lib 'lib';
use Exporter;
use Moose;
use Data::UUID;
use feature 'state';

our %reference_cache;
my $ug    = Data::UUID->new;

sub new {
    my ($class) = @_;
    state $instance;

    if (! defined $instance) {
        $instance = bless {}, $class;
    }
    return $instance;
}

sub cache_reference{
    my ($self, $object_reference) = @_;
    my $uuid = $ug->create_str();
    my $guid = $uuid;
    $reference_cache{$guid} = $object_reference;
    return $guid;
}

sub resolve_reference{
    my ($self, $perl_command) = @_;
    return $reference_cache{$perl_command->{payload}[0]}
}

sub delete_reference{
    my ($self, $perl_command) = @_;
    delete $reference_cache{$perl_command->{payload}[0]};
}


no Moose;

1;

Version data entries

52 entries across 26 versions & 1 rubygems

Version Path
javonet-ruby-sdk-2.4.7 lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.4.7 lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.4.6 lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.4.6 lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.4.5 lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.4.5 lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.4.4 lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.4.4 lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.4.3 lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.4.3 lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.4.2 lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.4.2 lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.3.0 lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.3.0 lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.2.0 lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.2.0 lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.1.14 lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.1.14 lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.1.13 lib/javonet-ruby-sdk/Binaries/Perl/MacOs/X64/lib/Javonet/Core/Handler/ReferencesCache.pm
javonet-ruby-sdk-2.1.13 lib/javonet-ruby-sdk/Binaries/Perl/Linux/X64/lib/Javonet/Core/Handler/ReferencesCache.pm