<?php

namespace Eurostop\Products;

class SubmittedHierarchyNodeCustom extends SubmittedDataItemOfSubmittedHierarchyNodeDtoVNxenGD6Custom
{

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

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

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

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

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

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

    /**
     * @var int $LevelNumber
     */
    protected $LevelNumber = null;

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

    /**
     * @param HierarchyNodeIdentifierType $HierarchyNodeIdentifierType
     * @param int $LevelNumber
     */
    public function __construct($HierarchyNodeIdentifierType, $LevelNumber)
    {
      parent::__construct();
      $this->HierarchyNodeIdentifierType = $HierarchyNodeIdentifierType;
      $this->LevelNumber = $LevelNumber;
    }

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

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

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

    /**
     * @param string $HierarchyNodeIdentifier
     * @return \Eurostop\Products\SubmittedHierarchyNode
     */
    public function setHierarchyNodeIdentifier($HierarchyNodeIdentifier)
    {
      $this->HierarchyNodeIdentifier = $HierarchyNodeIdentifier;
      return $this;
    }

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

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

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

    /**
     * @param string $Level1ParentIdentifier
     * @return \Eurostop\Products\SubmittedHierarchyNode
     */
    public function setLevel1ParentIdentifier($Level1ParentIdentifier)
    {
      $this->Level1ParentIdentifier = $Level1ParentIdentifier;
      return $this;
    }

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

    /**
     * @param string $Level2ParentIdentifier
     * @return \Eurostop\Products\SubmittedHierarchyNode
     */
    public function setLevel2ParentIdentifier($Level2ParentIdentifier)
    {
      $this->Level2ParentIdentifier = $Level2ParentIdentifier;
      return $this;
    }

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

    /**
     * @param string $Level3ParentIdentifier
     * @return \Eurostop\Products\SubmittedHierarchyNode
     */
    public function setLevel3ParentIdentifier($Level3ParentIdentifier)
    {
      $this->Level3ParentIdentifier = $Level3ParentIdentifier;
      return $this;
    }

    /**
     * @return int
     */
    public function getLevelNumber()
    {
      return $this->LevelNumber;
    }

    /**
     * @param int $LevelNumber
     * @return \Eurostop\Products\SubmittedHierarchyNode
     */
    public function setLevelNumber($LevelNumber)
    {
      $this->LevelNumber = $LevelNumber;
      return $this;
    }

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

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

}
