<?php

namespace Eurostop\Products;

class SubmittedProductSku extends SubmittedSku
{

    /**
     * @var string $AltCode1
     */
    protected $AltCode1 = null;

    /**
     * @var string $AltCode2
     */
    protected $AltCode2 = null;

    /**
     * @var boolean $AutoGenerateSizeGroup
     */
    protected $AutoGenerateSizeGroup = null;

    /**
     * @var string $Description
     */
    protected $Description = null;

    /**
     * @var string $HierarchyLevel1Identifier
     */
    protected $HierarchyLevel1Identifier = null;

    /**
     * @var string $HierarchyLevel2Identifier
     */
    protected $HierarchyLevel2Identifier = null;

    /**
     * @var string $HierarchyLevel3Identifier
     */
    protected $HierarchyLevel3Identifier = null;

    /**
     * @var string $HierarchyLevel4Identifier
     */
    protected $HierarchyLevel4Identifier = null;

    /**
     * @var HierarchyNodeIdentifierType $HierarchyNodeIdentifierType
     */
    protected $HierarchyNodeIdentifierType = null;

    /**
     * @var ArrayOfSubmittedProductAnalysisValue $ProductAnalysisValues
     */
    protected $ProductAnalysisValues = null;

    /**
     * @var AvailabilityType $ProductAvailability
     */
    protected $ProductAvailability = null;

    /**
     * @var string $ProductIdentifier
     */
    protected $ProductIdentifier = null;

    /**
     * @var ProductIdentifierType $ProductIdentifierType
     */
    protected $ProductIdentifierType = null;

    /**
     * @var string $ShortDescription
     */
    protected $ShortDescription = null;

    /**
     * @var string $SizeGroupIdentifier
     */
    protected $SizeGroupIdentifier = null;

    /**
     * @var SizeGroupIdentifierType $SizeGroupIdentifierType
     */
    protected $SizeGroupIdentifierType = null;

    /**
     * @var string $SupplierIdentifier
     */
    protected $SupplierIdentifier = null;

    /**
     * @var SupplierIdentifierType $SupplierIdentifierType
     */
    protected $SupplierIdentifierType = null;

    /**
     * @var string $SupplierProductCode
     */
    protected $SupplierProductCode = null;

    
    public function __construct()
    {
      parent::__construct();
    }

    /**
     * @return string
     */
    public function getAltCode1()
    {
      return $this->AltCode1;
    }

    /**
     * @param string $AltCode1
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setAltCode1($AltCode1)
    {
      $this->AltCode1 = $AltCode1;
      return $this;
    }

    /**
     * @return string
     */
    public function getAltCode2()
    {
      return $this->AltCode2;
    }

    /**
     * @param string $AltCode2
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setAltCode2($AltCode2)
    {
      $this->AltCode2 = $AltCode2;
      return $this;
    }

    /**
     * @return boolean
     */
    public function getAutoGenerateSizeGroup()
    {
      return $this->AutoGenerateSizeGroup;
    }

    /**
     * @param boolean $AutoGenerateSizeGroup
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setAutoGenerateSizeGroup($AutoGenerateSizeGroup)
    {
      $this->AutoGenerateSizeGroup = $AutoGenerateSizeGroup;
      return $this;
    }

    /**
     * @return string
     */
    public function getDescription()
    {
      return $this->Description;
    }

    /**
     * @param string $Description
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setDescription($Description)
    {
      $this->Description = $Description;
      return $this;
    }

    /**
     * @return string
     */
    public function getHierarchyLevel1Identifier()
    {
      return $this->HierarchyLevel1Identifier;
    }

    /**
     * @param string $HierarchyLevel1Identifier
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setHierarchyLevel1Identifier($HierarchyLevel1Identifier)
    {
      $this->HierarchyLevel1Identifier = $HierarchyLevel1Identifier;
      return $this;
    }

    /**
     * @return string
     */
    public function getHierarchyLevel2Identifier()
    {
      return $this->HierarchyLevel2Identifier;
    }

    /**
     * @param string $HierarchyLevel2Identifier
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setHierarchyLevel2Identifier($HierarchyLevel2Identifier)
    {
      $this->HierarchyLevel2Identifier = $HierarchyLevel2Identifier;
      return $this;
    }

    /**
     * @return string
     */
    public function getHierarchyLevel3Identifier()
    {
      return $this->HierarchyLevel3Identifier;
    }

    /**
     * @param string $HierarchyLevel3Identifier
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setHierarchyLevel3Identifier($HierarchyLevel3Identifier)
    {
      $this->HierarchyLevel3Identifier = $HierarchyLevel3Identifier;
      return $this;
    }

    /**
     * @return string
     */
    public function getHierarchyLevel4Identifier()
    {
      return $this->HierarchyLevel4Identifier;
    }

    /**
     * @param string $HierarchyLevel4Identifier
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setHierarchyLevel4Identifier($HierarchyLevel4Identifier)
    {
      $this->HierarchyLevel4Identifier = $HierarchyLevel4Identifier;
      return $this;
    }

    /**
     * @return HierarchyNodeIdentifierType
     */
    public function getHierarchyNodeIdentifierType()
    {
      return $this->HierarchyNodeIdentifierType;
    }

    /**
     * @param HierarchyNodeIdentifierType $HierarchyNodeIdentifierType
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setHierarchyNodeIdentifierType($HierarchyNodeIdentifierType)
    {
      $this->HierarchyNodeIdentifierType = $HierarchyNodeIdentifierType;
      return $this;
    }

    /**
     * @return ArrayOfSubmittedProductAnalysisValue
     */
    public function getProductAnalysisValues()
    {
      return $this->ProductAnalysisValues;
    }

    /**
     * @param ArrayOfSubmittedProductAnalysisValue $ProductAnalysisValues
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setProductAnalysisValues($ProductAnalysisValues)
    {
      $this->ProductAnalysisValues = $ProductAnalysisValues;
      return $this;
    }

    /**
     * @return AvailabilityType
     */
    public function getProductAvailability()
    {
      return $this->ProductAvailability;
    }

    /**
     * @param AvailabilityType $ProductAvailability
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setProductAvailability($ProductAvailability)
    {
      $this->ProductAvailability = $ProductAvailability;
      return $this;
    }

    /**
     * @return string
     */
    public function getProductIdentifier()
    {
      return $this->ProductIdentifier;
    }

    /**
     * @param string $ProductIdentifier
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setProductIdentifier($ProductIdentifier)
    {
      $this->ProductIdentifier = $ProductIdentifier;
      return $this;
    }

    /**
     * @return ProductIdentifierType
     */
    public function getProductIdentifierType()
    {
      return $this->ProductIdentifierType;
    }

    /**
     * @param ProductIdentifierType $ProductIdentifierType
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setProductIdentifierType($ProductIdentifierType)
    {
      $this->ProductIdentifierType = $ProductIdentifierType;
      return $this;
    }

    /**
     * @return string
     */
    public function getShortDescription()
    {
      return $this->ShortDescription;
    }

    /**
     * @param string $ShortDescription
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setShortDescription($ShortDescription)
    {
      $this->ShortDescription = $ShortDescription;
      return $this;
    }

    /**
     * @return string
     */
    public function getSizeGroupIdentifier()
    {
      return $this->SizeGroupIdentifier;
    }

    /**
     * @param string $SizeGroupIdentifier
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setSizeGroupIdentifier($SizeGroupIdentifier)
    {
      $this->SizeGroupIdentifier = $SizeGroupIdentifier;
      return $this;
    }

    /**
     * @return SizeGroupIdentifierType
     */
    public function getSizeGroupIdentifierType()
    {
      return $this->SizeGroupIdentifierType;
    }

    /**
     * @param SizeGroupIdentifierType $SizeGroupIdentifierType
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setSizeGroupIdentifierType($SizeGroupIdentifierType)
    {
      $this->SizeGroupIdentifierType = $SizeGroupIdentifierType;
      return $this;
    }

    /**
     * @return string
     */
    public function getSupplierIdentifier()
    {
      return $this->SupplierIdentifier;
    }

    /**
     * @param string $SupplierIdentifier
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setSupplierIdentifier($SupplierIdentifier)
    {
      $this->SupplierIdentifier = $SupplierIdentifier;
      return $this;
    }

    /**
     * @return SupplierIdentifierType
     */
    public function getSupplierIdentifierType()
    {
      return $this->SupplierIdentifierType;
    }

    /**
     * @param SupplierIdentifierType $SupplierIdentifierType
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setSupplierIdentifierType($SupplierIdentifierType)
    {
      $this->SupplierIdentifierType = $SupplierIdentifierType;
      return $this;
    }

    /**
     * @return string
     */
    public function getSupplierProductCode()
    {
      return $this->SupplierProductCode;
    }

    /**
     * @param string $SupplierProductCode
     * @return \Eurostop\Products\SubmittedProductSku
     */
    public function setSupplierProductCode($SupplierProductCode)
    {
      $this->SupplierProductCode = $SupplierProductCode;
      return $this;
    }

}
