NAME

Jifty::DBI::Collection::Union - Deal with multiple Jifty::DBI::Collection result sets as one

SYNOPSIS

use Jifty::DBI::Collection::Union;
my $U = new Jifty::DBI::Collection::Union;
$U->add( $tickets1 );
$U->add( $tickets2 );

$U->GotoFirstItem;
while (my $z = $U->Next) {
  printf "%5d %30.30s\n", $z->Id, $z->Subject;
}

WARNING

This module is still experimental.

DESCRIPTION

Implements a subset of the Jifty::DBI::Collection methods, but enough to do iteration over a bunch of results. Useful for displaying the results of two unrelated searches (for the same kind of objects) in a single list.

METHODS

new

Create a new Jifty::DBI::Collection::Union object. No arguments.

add COLLECTION

Add Jifty::DBI::Collection object COLLECTION to the Union object.

It must be the same type as the first object added.

first

Return the very first element of the Union (which is the first element of the first Collection). Also reset the current pointer to that element.

next

Return the next element in the Union.

last

Returns the last item

count

Returns the total number of elements in the Union'ed Collection

goto_first_item

Starts the recordset counter over from the first item. the next time you call "next", you'll get the first item returned by the database, as if you'd just started iterating through the result set.

goto_item

Unlike "goto_item" in Jifty::DBI::Collection, Union only supports going to the first item in the collection.

is_last

Returns true if the current row is the last record in the set.

items_array_ref

Return a reference to an array containing all objects found by this search.

Will destroy any positional state.

AUTHOR

Copyright (c) 2004 Robert Spier

All rights reserved.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

Jifty::DBI, Jifty::DBI::Collection