3 package Data::Stream::Bulk::DBIC;
6 use namespace::clean -except => 'meta';
8 with qw(Data::Stream::Bulk::DoneFlag) => { excludes => [qw(is_done finished)] };
12 clearer => "finished",
13 handles => { next_row => "next" },
20 if ( defined( my $next = $self->next_row ) ) {
27 __PACKAGE__->meta->make_immutable;
37 Data::Stream::Bulk::DBIC - Iterate DBIC resultsets with L<Data::Stream::Bulk>
41 Data::Stream::Bulk::DBIC->new(
42 resultset => scalar($schema->rs("Foo")->search(...))
47 This is a wrapper for L<DBIx::Class::ResultSet> that fits the
48 L<Data::Stream::Bulk> api.
50 Due to the fact that DBIC inflation overhead is fairly negligiable to that of
51 iteration though, I haven't actually bothered to make it bulk.
53 If L<DBIx::Class::Cursor> will support n-at-a-time fetching as opposed to
54 one-at-a-time or all-at-a-time at some point in the future this class will be
63 See L<Data::Stream::Bulk::DoneFlag>.
65 Returns a single row. In the future this should return more than one row.