<?php

namespace Eurostop\Products;

class SubmittedHierarchyNodeAction extends SubmittedDataActionOfSubmittedHierarchyNodeActionDtoVNxenGD6
{

    /**
     * @var HierarchyNodeAction $ActionType
     */
    protected $ActionType = 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 $OnDeleteDumpProductsToLevel1Identifier
     */
    protected $OnDeleteDumpProductsToLevel1Identifier = null;

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

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

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

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

    /**
     * @return HierarchyNodeAction
     */
    public function getActionType()
    {
      return $this->ActionType;
    }

    /**
     * @param HierarchyNodeAction $ActionType
     * @return \Eurostop\Products\SubmittedHierarchyNodeAction
     */
    public function setActionType($ActionType)
    {
      $this->ActionType = $ActionType;
      return $this;
    }

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

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

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

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

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

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

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

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

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

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

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

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

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

    /**
     * @param string $OnDeleteDumpProductsToLevel1Identifier
     * @return \Eurostop\Products\SubmittedHierarchyNodeAction
     */
    public function setOnDeleteDumpProductsToLevel1Identifier($OnDeleteDumpProductsToLevel1Identifier)
    {
      $this->OnDeleteDumpProductsToLevel1Identifier = $OnDeleteDumpProductsToLevel1Identifier;
      return $this;
    }

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

    /**
     * @param string $OnDeleteDumpProductsToLevel2Identifier
     * @return \Eurostop\Products\SubmittedHierarchyNodeAction
     */
    public function setOnDeleteDumpProductsToLevel2Identifier($OnDeleteDumpProductsToLevel2Identifier)
    {
      $this->OnDeleteDumpProductsToLevel2Identifier = $OnDeleteDumpProductsToLevel2Identifier;
      return $this;
    }

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

    /**
     * @param string $OnDeleteDumpProductsToLevel3Identifier
     * @return \Eurostop\Products\SubmittedHierarchyNodeAction
     */
    public function setOnDeleteDumpProductsToLevel3Identifier($OnDeleteDumpProductsToLevel3Identifier)
    {
      $this->OnDeleteDumpProductsToLevel3Identifier = $OnDeleteDumpProductsToLevel3Identifier;
      return $this;
    }

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

    /**
     * @param string $OnDeleteDumpProductsToLevel4Identifier
     * @return \Eurostop\Products\SubmittedHierarchyNodeAction
     */
    public function setOnDeleteDumpProductsToLevel4Identifier($OnDeleteDumpProductsToLevel4Identifier)
    {
      $this->OnDeleteDumpProductsToLevel4Identifier = $OnDeleteDumpProductsToLevel4Identifier;
      return $this;
    }

}
