/usr/share/perl5/Rose/DB/Object/Std/Cached.pm is in librose-db-object-perl 1:0.815-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 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 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | package Rose::DB::Object::Std::Cached;
use strict;
use Rose::DB::Object::Std;
use Rose::DB::Object::Cached;
our @ISA = qw(Rose::DB::Object::Cached Rose::DB::Object::Std);
our $VERSION = '0.02';
*meta_class = \&Rose::DB::Object::Std::meta_class;
1;
__END__
=head1 NAME
Rose::DB::Object::Std::Cached - Memory cached standardized object representation of a single row in a database table.
=head1 SYNOPSIS
package Category;
use base 'Rose::DB::Object::Std::Cached';
__PACKAGE__->meta->setup
(
table => 'categories',
columns =>
[
id => { type => 'int', primary_key => 1 },
name => { type => 'varchar', length => 255 },
description => { type => 'text' },
],
unique_key => 'name',
);
...
$cat1 = Category->new(id => 123,
name => 'Art');
$cat1->save or die $category->error;
$cat2 = Category->new(id => 123);
# This will load from the memory cache, not the database
$cat2->load or die $cat2->error;
# $cat2 is the same object as $cat1
print "Yep, cached" if($cat1 eq $cat2);
# No, really, it's the same object
$cat1->name('Blah');
print $cat2->name; # prints "Blah"
...
=head1 DESCRIPTION
C<Rose::DB::Object::Std::Cached> is a subclass of both L<Rose::DB::Object::Std> and L<Rose::DB::Object::Cached>. It simply combines the features of both classes. See the L<Rose::DB::Object::Std> and L<Rose::DB::Object::Cached> documentation for more information.
=head1 AUTHOR
John C. Siracusa (siracusa@gmail.com)
=head1 LICENSE
Copyright (c) 2010 by John C. Siracusa. All rights reserved. This program is
free software; you can redistribute it and/or modify it under the same terms
as Perl itself.
|