Christopher H. Laco > Handel-Storage-RDBO-1.00003 > Handel::Storage::RDBO::Result

Download:
Handel-Storage-RDBO-1.00003.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Source  

NAME ^

Handel::Storage::RDBO::Result - Result object returned by RDBO storage operations

SYNOPSIS ^

    use Handel::Storage::RDBO::Cart;
    
    my $storage = Handel::Storage::RDBO::Cart->new;
    my $result = $storage->create({
        shopper => '11111111-1111-1111-1111-111111111111'
    });
    
    print $result->id;
    print $result->name;

DESCRIPTION ^

Handel::Storage::RDBO::Result is a generic wrapper around RDBO objects returned by various Handel::Storage::RDBO operations. Its main purpose is to abstract storage result objects away from the Cart/Order/Item classes that use them and deal with any RDBO specific issues. Each result is assumed to exposed methods for each 'property' or 'column' it has, as well as support the methods described below.

METHODS ^

delete

Deletes the current result and all of it's associated items from the current storage.

    my $storage = Handel::Storage::RDBO::Cart->new;
    my $result = $storage->create({
        shopper => '11111111-1111-1111-1111-111111111111'
    });
    
    $result->add_item({
        sku => 'ABC123'
    });
    
    $result->delete;

discard_changes

Discards all changes made since the last successful update.

txn_begin

Starts a transaction on the current db object.

txn_commit

Commits the current transaction on the current db object.

txn_rollback

Rolls back the current transaction on the current db object.

update

Arguments: \%data

Updates the current result with the data specified.

    my $storage = Handel::Storage::RDBO::Cart->new;
    my $result = $storage->create({
        shopper => '11111111-1111-1111-1111-111111111111'
    });
    
    $result->update({
        name => 'My Cart'
    });

SEE ALSO ^

Handel::Storage::Result, Rose::DB::Object

AUTHOR ^

    Christopher H. Laco
    CPAN ID: CLACO
    claco@chrislaco.com
    http://today.icantfocus.com/blog/
syntax highlighting: