#------------------------------------------------------------
# Copyright (C) 2009 RoyaltyShare, Inc.   All Rights Reserved
#------------------------------------------------------------
package Distribution::Metadata::ProductTrack;
use strict;
use warnings;

use lib '/app/tools/metadata/lib';

use lib '/app/tools/rps/lib';
use RPS::DB::Item::Product;

use RPS::Product::Product;
use base 'RPS::Product::Product';
use Common::Assert;

sub _initFromDBItem {
    my ( $self, $dbItem ) = @_;

    my %properties = (
        product_id      => $dbItem->product_id,
        upc_ean         => $dbItem->upc_ean,
        product_type_id => $dbItem->product_type_id,
        disc_track      => $dbItem->{disc_track},
        disc_number     => $dbItem->{disc_number},
        is_bonus_track  => $dbItem->{is_bonus_track},
        album_only      => $dbItem->{album_only},
    );

    return $self->_initProperties( \%properties );
}

sub _initProperties {
    my ( $self, $prop ) = @_;

    $self->{ProductID}     = $prop->{product_id};
    $self->{UPC}           = $prop->{upc_ean};
    $self->{ProductTypeID} = $prop->{product_type_id};

    $self->{DiscTrack}    = $prop->{disc_track};
    $self->{DiscNumber}   = $prop->{disc_number};
    $self->{IsBonusTrack} = $prop->{is_bonus_track};
    $self->{AlbumOnly}    = $prop->{album_only};

    return $self;
}

1;
