The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Persistence::Relationship - Object relationship mapping

CLASS HIERARCHY

 Persistence::Fetchable
    |
    +----Persistence::Relationship

SYNOPSIS

use Persistence::Relationship ':all';

DESCRIPTION

Represents a base class for object relationship.

EXPORT

LAZY EAGER NONE ALL ON_INSERT ON_UPDATE ON_DELETE method by ':all' tag.

ATTRIBUTES

name

Relationship name

attribute
attribute_name

Attribute name

fetch_method

LAZY, EAGER

cascade

NONE, ALL ON_UPDATE, ON_DELETE, ON_INSERT

orm

METHODS

add_relationship

Adds relationship to meta data cache, Takes package name of persisitence mapping, name of relationsship, reelationship constructor parameters.

relationships
insertable_to_many_relations

Returns all to many relation where insert applies.

insertable_to_one_relations

Returns all to one relation where insert applies.

updatable_to_many_relations

Returns all relation where insert applies.

updatable_to_one_relations

Returns all relation where insert applies.

deleteable_to_many_relations

Returns all to many relation where insert applies.

deleteable_to_one_relations

Returns all to one relation where insert applies.

eager_fetch_relations
lazy_fetch_relations
install_fetch_interceptor
values

Returns relations values as array ref, takes object as parameter

value

Returns relations value

SEE ALSO

Persistence::Entity Persistence::Relationship::OneToMany Persistence::Relationship::ManyToMany

COPYRIGHT AND LICENSE

The Persistence::Relationship module is free software. You may distribute under the terms of either the GNU General Public License or the Artistic License, as specified in the Perl README file.

AUTHOR

Adrian Witas, adrian@webapp.strefa.pl