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


Catalyst-Controller-DBIC-API documentation  | view source Contained in the Catalyst-Controller-DBIC-API distribution.

Index


NAME

Top

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

VERSION

Top

version 2.003002

DESCRIPTION

Top

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

Top

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

Top

_build_joins

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

AUTHORS

Top

COPYRIGHT AND LICENSE

Top


Catalyst-Controller-DBIC-API documentation  | view source Contained in the Catalyst-Controller-DBIC-API distribution.