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

NAME

Google::Checkout::General::DigitalContent

SYNOPSIS

  use Google::Checkout::General::GCO;
  use Google::Checkout::General::ShoppingCart;
  use Google::Checkout::General::MerchantItem;
  use Google::Checkout::General::DigitalContent;
  use Google::Checkout::General::Util qw/is_gco_error/;

  my $checkout_flow = Google::Checkout::General::MerchantCheckoutFlow->new(
                      shipping_method       => [$method],
                      edit_cart_url         => "http://edit/cart/url",
                      continue_shopping_url => "http://continue/shopping/url",
                      buyer_phone           => "1-111-111-1111",
                      tax_table             => [$table1, $table2],
                      merchant_calculation  => $merchant_calculation);

  my $cart = Google::Checkout::General::ShoppingCart->new(
             expiration    => "+1 month",
             private       => "Private data",
             checkout_flow => $checkout_flow);

  my $item1 = Google::Checkout::General::MerchantItem->new(
              name               => "Test item 1",
              description        => "Test description 1",
              price              => 12.34,
              quantity           => 12,
              private            => "Item #1",
              tax_table_selector => "item");

  #--
  #-- Same as MerchantItem except this is for digital delivery
  #--
  my $item2 = Google::Checkout::General::DigitalContent->new(
              name            => "Digital Content",
              description     => "For digital delivery",
              price           => 19.99,
              quantity        => 1,
              delivery_method => Google::Checkout::General::DigitalContent::EMAIL_DELIVERY
              );
  my $item3 = Google::Checkout::General::DigitalContent->new(
              name            => $item2->get_name,
              description     => $item2->get_description,
              price           => $item2->get_price,
              quantity        => 1,
              delivery_method => Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY,
              download_instruction => "Use key to login and URL to download.",
              key             => "12345",
              url             => "http://abc/download"
              );

  $cart->add_item($item1);
  $cart->add_item($item2);
  $cart->add_item($item3);

  my $response = Google::Checkout::General::GCO->new->checkout($cart);

  die $response if is_gco_error($response);

  #--
  #-- redirect URL
  #--
  print $response,"\n";

DESCRIPTION

Subclass of Google::Checkout::General::MerchantItem used for digital delivery.

new HASH

Constructor. Accepts the same parameter as Google::Checkout::General::MerchantItem with the additional support for digital delivery. `delivery_method' should be either Google::Checkout::General::DigitalContent::EMAIL_DELIVERY for Email delivery or Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY for key/URL deliver. If key/URL delivery, additional parameter for `key' or `url' must be provided.

get_delivery_method

Returns delivery method. Either Google::Checkout::General::DigitalContent::EMAIL_DELIVERY or Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY or empty string if the delivery method hasn't been set.

set_delivery_method METHOD

Sets the delivery method. Valid method are either Google::Checkout::General::DigitalContent::EMAIL_DELIVERY or Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY. Any other value will clear the delivery method to an empty string.

get_download_instruction

Returns the download instruction. This is only useful for Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY.

set_download_instruction INSTRUCTION

Sets the download instruction. This is only useful for Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY.

get_key

Returns key for key/URL delivery. This is only useful for Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY.

set_key

Sets the key for key/URL delivery. This is only useful for Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY.

Sets the price of the merchant item.

get_url

Returns the URL for key/URL delivery. This is only useful for Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY.

set_url URL

Sets the URL for key/URL delivery. This is only useful for Google::Checkout::General::DigitalContent::KEY_URL_DELIVERY.

COPYRIGHT

Copyright 2006 Google. All rights reserved.

SEE ALSO

Google::Checkout::General::MerchantItem