Bot-IRC

 view release on metacpan or  search on metacpan

lib/Bot/IRC.pm  view on Meta::CPAN

577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
}
 
sub register {
    my $self = shift;
    $self->{loaded}{$_} = time for (@_);
    return $self;
}
 
sub vars {
    my ( $self, $name ) = @_;
    ( $name = lc( substr( ( caller() )[0], length(__PACKAGE__) + 2 ) ) ) =~ s/::/\-/g unless ($name);
    return ( defined $self->{vars}{$name} ) ? $self->{vars}{$name} : {};
}
 
sub settings {
    my ( $self, $name ) = @_;
    return ( defined $name ) ? $self->{$name} : { %$self };
}
 
sub reply {
    my ( $self, $message ) = @_;

lib/Bot/IRC/Store.pm  view on Meta::CPAN

29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
            LoadFile( $self->{file} );
        }
    };
    die qq{Unable to use "$self->{file}" for YAML storage in the Bot::IRC::Store plugin\n} if ($@);
 
    return $self;
}
 
sub get {
    my ( $self, $key ) = @_;
    return LoadFile( $self->{file} )->{ ( caller() )[0] }{$key};
}
 
sub set {
    my ( $self, $key, $value ) = @_;
 
    my $data = LoadFile( $self->{file} );
    $data->{ ( caller() )[0] }{$key} = $value;
 
    DumpFile( $self->{file}, $data );
    return $self;
}
 
1;
 
__END__
 
=pod

lib/Bot/IRC/Store/SQLite.pm  view on Meta::CPAN

36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
        )
    }) unless ($pre_exists);
 
    $self->{json} = JSON::XS->new->ascii;
 
    return $self;
}
 
sub get {
    my ( $self, $key ) = @_;
    my $namespace = ( caller() )[0];
    my $value;
 
    try {
        my $sth = $self->{dbh}->prepare_cached(q{
            SELECT value FROM bot_store WHERE namespace = ? AND key = ?
        });
        $sth->execute( $namespace, $key ) or die $self->{dbh}->errstr;
        $value = $sth->fetchrow_array;
        $sth->finish;
    }

lib/Bot/IRC/Store/SQLite.pm  view on Meta::CPAN

61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
    if ($value) {
        $value = $self->{json}->decode($value) || undef;
        $value = $value->{value} if ( ref $value eq 'HASH' and exists $value->{value} );
    }
 
    return $value;
}
 
sub set {
    my ( $self, $key, $value ) = @_;
    my $namespace = ( caller() )[0];
 
    try {
        $self->{dbh}->prepare_cached(q{
            DELETE FROM bot_store WHERE namespace = ? AND key = ?
        })->execute( $namespace, $key ) or die $self->{dbh}->errstr;
 
        $self->{dbh}->prepare_cached(q{
            INSERT INTO bot_store ( namespace, key, value ) VALUES ( ?, ?, ? )
        })->execute(
            $namespace,



( run in 0.258 second using v1.01-cache-2.11-cpan-0f795438458 )