Nicholas Perez > Catalyst-Controller-DBIC-API-2.001003 > Catalyst::Controller::DBIC::API::JoinBuilder

Download:
Catalyst-Controller-DBIC-API-2.001003.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  2
Open  0
Stalled  1
View/Report Bugs
Module Version: 2.001003   Source   Latest Release: Catalyst-Controller-DBIC-API-2.005001

NAME ^

Catalyst::Controller::DBIC::API::JoinBuilder - Provides a helper class to automatically keep track of joins in complex searches

VERSION ^

version 2.001003

DESCRIPTION ^

JoinBuilder is used to keep track of joins automgically for complex searches. It accomplishes this by building a simple tree of parents and children and then recursively drilling into the tree to produce a useable join attribute for ->search.

PUBLIC_ATTRIBUTES ^

parent is: ro, isa: 'Catalyst::Controller::DBIC::API::JoinBuilder'

parent stores the direct ascendant in the datastructure that represents the join

children is: ro, isa: ArrayRef['Catalyst::Controller::DBIC::API::JoinBuilder'], traits => ['Array']

children stores the immediate descendants in the datastructure that represents the join.

Handles the following methods:

    all_children => 'elements'
    has_children => 'count'
    add_child => 'push'

joins is: ro, isa: HashRef, lazy_build: true

joins holds the cached generated join datastructure.

name is: ro, isa: Str, required: 1

Sets the key for this level in the generated hash

PRIVATE_METHODS ^

_build_joins

_build_joins finds the top parent in the structure and then recursively iterates the children building out the join datastructure

AUTHORS ^

  Nicholas Perez <nperez@cpan.org>
  Luke Saunders <luke.saunders@gmail.com>
  Alexander Hartmaier <abraxxa@cpan.org>

COPYRIGHT AND LICENSE ^

This software is copyright (c) 2010 by Luke Saunders, Nicholas Perez, et al..

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

syntax highlighting: