NAME

Cache::Memcached::Managed::Multi - multiple Cache::Memcache::Managed objects

SYNOPSIS

use Cache::Memcached::Managed::Multi;

my $multi = Cache::Memcached::Managed::Multi->new( @managed );

DESCRIPTION

Provides the same API as Cache::Memcached::Managed, but applies all methods called to all of the objects specified, except for new and objects.

CONTEXT

All methods are called on all of the Cache::Memcached::Managed objects in the same context (list, scalar or void) in which the method is called on the Cache::Memcached::Managed::Multi object. The return value differs in format depending on the context also:

scalar
my $listref = $multi->method;
print "Result: @{$listref}\n";

When called in scalar context, a list ref with scalar values is returned in the same order in which the objects are used (which is determined by the order in which they were supplied with new and returned by objects..

list
my @listref = $multi->method;
print "Result $_: @{$listref[$_]}\n" foreach 0..$#listref;

When called in list context, a list of list references is returned in the same order in which the objects are used (which is determined by the order in which they were supplied with new and returned by objects.

void
$multi->method;

When called in void context, nothing is returned (not strangely enough ;-).

SPECIFIC CLASS METHODS

There is only one specific class method.

new

my $multi = Cache::Memcached::Managed::Multi->new( @managed );

Create an object containing multiple Cache::Memcached::Managed objects. Returns the instantiated object.

SPECIFIC INSTANCE METHODS

objects

my @managed = $multi->objects;

Returns the list of instantiated Cache::Memcached::Managed objects that the object is a proxy for.

AUTHOR

Elizabeth Mattijsen

COPYRIGHT

(C) 2005 - 2006 BOOKINGS (C) 2007 BOOKING.COM

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.