Fedora::Bugzilla::QueriedBugs - A set of bugs resulting from a query/search


Fedora-Bugzilla documentation Contained in the Fedora-Bugzilla distribution.

Index


Code Index:

NAME

Top

Fedora::Bugzilla::QueriedBugs - A set of bugs resulting from a query/search

SYNOPSIS

Top

    # from known #'s/aliases
    $bugs = $bz->bugs(123456, 789012, ...);

    # from a query
    $bugs = $bz->query(...);

    # ...

    print $bugs->count . " bugs found: $bugs";

DESCRIPTION

Top

This class represents a collection of bugs, either returned from a query or pulled via get_bugs().

SUBROUTINES/METHODS

Top

new()

You'll never need to call this yourself, most likely. Fedora::Bugzilla tends to handle the messy bits for you.

raw()

The raw array ref of hashes returned.

sql()

The SQL Bugzilla executed to run this query.

as_string()

Stringifies. The "" operator is also overloaded, so you can just use the reference in a string context.

ACCESSORS

Top

All accessors are r/o, and are pretty self-explanitory.

bz

A reference to the parent Fedora::Bugzilla instance.

num_bugs
first_bug
last_bug
map_over_bugs
get_bug

SEE ALSO

Top

Fedora::Bugzilla

AUTHOR

Top

Chris Weyl <cweyl@alumni.drew.edu>

LICENSE AND COPYRIGHT

Top


Fedora-Bugzilla documentation Contained in the Fedora-Bugzilla distribution.

#############################################################################
#
# A collection of bugs resulting from a query.
#
# Author:  Chris Weyl (cpan:RSRCHBOY), <cweyl@alumni.drew.edu>
# Company: No company, personal work
# Created: 01/05/2009 09:23:20 AM PST
#
# Copyright (c) 2009 Chris Weyl <cweyl@alumni.drew.edu>
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
#############################################################################

package Fedora::Bugzilla::QueriedBugs;

use Moose;

use MooseX::StrictConstructor;

use namespace::clean -except => 'meta';

#use overload '""' => sub { shift->as_string }, fallback => 1;

extends 'Fedora::Bugzilla::Bugs';

our $VERSION = '0.13';

has sql => 
    (is => 'ro', isa => 'Str',      predicate => 'has_sql', required => 1);
has raw => 
    (is => 'ro', isa => 'ArrayRef', predicate => 'has_raw', required => 1);

has display_columns => (
    is        => 'ro', 
    isa       => 'ArrayRef[Str]', 
    required  => 1,
    predicate => 'has_display_columns',
);

has '+ids' => (lazy => 1, builder => '_build_ids');

sub _build_ids { [ map { $_->{bug_id} } @{ shift->raw } ] }

__PACKAGE__->meta->make_immutable;

1;

__END__