Google-Checkout
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
lib/Google/Checkout/General/TaxRule.pm view on Meta::CPAN
=item set_rate RATE
Sets the tax rate.
=item require_shipping_tax FLAG
If there is a FLAG pass in, it sets the shipping tax
flag and return the old value. If no argument is passed
in, it returns the current shipping tax flag.
=item get_area
Returns the C<Google::Checkout::General::TaxTableAreas> object
where this tax rule is applied to.
=item set_area AREA
Sets where this tax rule should be applied to.
=back
=cut
=head1 COPYRIGHT
Copyright 2006 Google. All rights reserved.
=head1 SEE ALSO
Google::Checkout::General::TaxTableAreas
=cut
#--
#-- Represent the <[default|alternate>-tax-rule> element
#--
use strict;
use warnings;
sub new
{
my ($class, %args) = @_;
my $self = { shipping_tax => $args{shipping_tax} ? 'true' : 'false',
rate => $args{rate} || 0 };
if ($args{area})
{
if (ref $args{area} eq 'ARRAY')
{
push(@{$self->{area}}, $_) for @{$args{area}};
}
else
{
push(@{$self->{area}}, $args{area});
}
}
return bless $self => $class;
}
sub get_rate
{
my ($self) = @_;
return $self->{rate};
}
sub set_rate
{
my ($self, $rate) = @_;
$self->{rate} = $rate if $rate;
}
sub require_shipping_tax
{
my ($self, $data) = @_;
my $oldv = $self->{shipping_tax};
$self->{shipping_tax} = $data if @_ > 1;
return $oldv;
}
sub get_area
{
my ($self) = @_;
return $self->{area} || [];
}
sub add_area
{
my ($self, $area) = @_;
push(@{$self->{area}}, $area) if $area;
}
1;
view all matches for this distributionview release on metacpan - search on metacpan
( run in 2.028 seconds using v1.00-cache-2.02-grep-82fe00e-cpan-f5108d614456 )