<?php
use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for moveShipments StructType
 * @subpackage Structs
 */
class MoveShipments extends AbstractStructBase
{
    /**
     * The idBuforFrom
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * @var int
     */
    public $idBuforFrom;
    /**
     * The idBuforTo
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * @var int
     */
    public $idBuforTo;
    /**
     * The guid
     * Meta information extracted from the WSDL
     * - base: xsd:string
     * - length: 32
     * - maxOccurs: unbounded
     * - minOccurs: 1
     * - whiteSpace: collapse
     * @var string[]
     */
    public $guid;
    /**
     * Constructor method for moveShipments
     * @uses MoveShipments::setIdBuforFrom()
     * @uses MoveShipments::setIdBuforTo()
     * @uses MoveShipments::setGuid()
     * @param int $idBuforFrom
     * @param int $idBuforTo
     * @param string[] $guid
     */
    public function __construct($idBuforFrom = null, $idBuforTo = null, array $guid = array())
    {
        $this
            ->setIdBuforFrom($idBuforFrom)
            ->setIdBuforTo($idBuforTo)
            ->setGuid($guid);
    }
    /**
     * Get idBuforFrom value
     * @return int
     */
    public function getIdBuforFrom()
    {
        return $this->idBuforFrom;
    }
    /**
     * Set idBuforFrom value
     * @param int $idBuforFrom
     * @return MoveShipments
     */
    public function setIdBuforFrom($idBuforFrom = null)
    {
        $this->idBuforFrom = $idBuforFrom;
        return $this;
    }
    /**
     * Get idBuforTo value
     * @return int
     */
    public function getIdBuforTo()
    {
        return $this->idBuforTo;
    }
    /**
     * Set idBuforTo value
     * @param int $idBuforTo
     * @return MoveShipments
     */
    public function setIdBuforTo($idBuforTo = null)
    {
        $this->idBuforTo = $idBuforTo;
        return $this;
    }
    /**
     * Get guid value
     * @return string[]
     */
    public function getGuid()
    {
        return $this->guid;
    }
    /**
     * Set guid value
     * @param string[] $guid
     * @return MoveShipments
     */
    public function setGuid(array $guid = array())
    {
        $this->guid = $guid;
        return $this;
    }
    /**
     * Add item to guid value
     * @throws \InvalidArgumentException
     * @param string $item
     * @return MoveShipments
     */
    public function addToGuid($item)
    {
        $this->guid[] = $item;
        return $this;
    }
}
