/**
  * AmazonOrdersCore constructor sets up key information used in all Amazon Orders Core requests
  *
  * This constructor is called when initializing all objects in the Amazon Orders Core.
  * The parameters are passed by the child objects' constructors, which are
  * in turn passed to the AmazonCore constructor. See it for more information
  * on these parameters and common methods.
  *
  * @param string       $s      [optional] <p>Name for the store you want to use.
  *                             This parameter is optional if only one store is defined in the config file.</p>
  * @param boolean      $mock   [optional] <p>This is a flag for enabling Mock Mode.
  *                             This defaults to <b>FALSE</b>.</p>
  * @param array|string $m      [optional] <p>The files (or file) to use in Mock Mode.</p>
  * @param string       $config [optional] <p>An alternate config file to set. Used for testing.</p>
  */
 public function __construct($s = null, $mock = false, $m = null, $config = null)
 {
     parent::__construct($s, $mock, $m, $config);
     include $this->env;
     if (isset($AMAZON_VERSION_ORDERS)) {
         $this->urlbranch = 'Orders/' . $AMAZON_VERSION_ORDERS;
         $this->options['Version'] = $AMAZON_VERSION_ORDERS;
     }
 }
 /**
  * AmazonInventoryCore constructor sets up key information used in all Amazon Inventory Core requests
  * 
  * This constructor is called when initializing all objects in the Amazon Inventory Core.
  * The parameters are passed by the child objects' constructors, which are
  * in turn passed to the AmazonCore constructor. See it for more information
  * on these parameters and common methods.
  * @param string $s [optional] <p>Name for the store you want to use.
  * This parameter is optional if only one store is defined in the config file.</p>
  * @param boolean $mock [optional] <p>This is a flag for enabling Mock Mode.
  * This defaults to <b>FALSE</b>.</p>
  * @param array|string $m [optional] <p>The files (or file) to use in Mock Mode.</p>
  * @param string $config [optional] <p>An alternate config file to set. Used for testing.</p>
  */
 public function __construct($s = null, $mock = false, $m = null, $config = null)
 {
     parent::__construct($s, $mock, $m, $config);
     include $this->env;
     if (isset($AMAZON_VERSION_INVENTORY)) {
         $this->urlbranch = 'FulfillmentInventory/' . $AMAZON_VERSION_INVENTORY;
         $this->options['Version'] = $AMAZON_VERSION_INVENTORY;
     }
     if (isset($THROTTLE_LIMIT_INVENTORY)) {
         $this->throttleLimit = $THROTTLE_LIMIT_INVENTORY;
     }
     if (isset($THROTTLE_TIME_INVENTORY)) {
         $this->throttleTime = $THROTTLE_TIME_INVENTORY;
     }
     $this->throttleGroup = 'Inventory';
 }
 /**
  * AmazonProductsCore constructor sets up key information used in all Amazon Products Core requests
  *
  * This constructor is called when initializing all objects in the Amazon Products Core.
  * The parameters are passed by the child objects' constructors, which are
  * in turn passed to the AmazonCore constructor. See it for more information
  * on these parameters and common methods.
  *
  * @param string       $s      [optional] <p>Name for the store you want to use.
  *                             This parameter is optional if only one store is defined in the config file.</p>
  * @param boolean      $mock   [optional] <p>This is a flag for enabling Mock Mode.
  *                             This defaults to <b>FALSE</b>.</p>
  * @param array|string $m      [optional] <p>The files (or file) to use in Mock Mode.</p>
  * @param string       $config [optional] <p>An alternate config file to set. Used for testing.</p>
  */
 public function __construct($s = null, $mock = false, $m = null, $config = null)
 {
     parent::__construct($s, $mock, $m, $config);
     include $this->env;
     if (file_exists($this->config)) {
         include $this->config;
     } else {
         throw new \Exception('Config file does not exist!');
     }
     if (isset($AMAZON_VERSION_PRODUCTS)) {
         $this->urlbranch = 'Products/' . $AMAZON_VERSION_PRODUCTS;
         $this->options['Version'] = $AMAZON_VERSION_PRODUCTS;
     }
     if (isset($store[$this->storeName]) && array_key_exists('marketplaceId', $store[$this->storeName])) {
         $this->options['MarketplaceId'] = $store[$this->storeName]['marketplaceId'];
     } else {
         $this->log("Marketplace ID is missing", 'Urgent');
     }
     if (isset($THROTTLE_LIMIT_PRODUCT)) {
         $this->throttleLimit = $THROTTLE_LIMIT_PRODUCT;
     }
 }