<?php

namespace App\Integration\Providers\Alliance3\DTO;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for PhysicalSubjectChangesInfo DTO
 * @subpackage Structs
 */
class PhysicalSubjectChangesInfo extends AbstractStructBase
{
    /**
     * The fullNameChanged
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var bool
     */
    public $fullNameChanged;
    /**
     * The documentChanged
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var bool
     */
    public $documentChanged;
    /**
     * The lastNamePrev
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $lastNamePrev;
    /**
     * The firstNamePrev
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $firstNamePrev;
    /**
     * The middleNamePrev
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var string
     */
    public $middleNamePrev;
    /**
     * The documentPrev
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \App\Integration\Providers\Alliance3\DTO\DocumentInfo
     */
    public $documentPrev;
    /**
     * Constructor method for PhysicalSubjectChangesInfo
     * @uses PhysicalSubjectChangesInfo::setFullNameChanged()
     * @uses PhysicalSubjectChangesInfo::setDocumentChanged()
     * @uses PhysicalSubjectChangesInfo::setLastNamePrev()
     * @uses PhysicalSubjectChangesInfo::setFirstNamePrev()
     * @uses PhysicalSubjectChangesInfo::setMiddleNamePrev()
     * @uses PhysicalSubjectChangesInfo::setDocumentPrev()
     * @param bool $fullNameChanged
     * @param bool $documentChanged
     * @param string $lastNamePrev
     * @param string $firstNamePrev
     * @param string $middleNamePrev
     * @param \App\Integration\Providers\Alliance3\DTO\DocumentInfo $documentPrev
     */
    public function __construct($fullNameChanged = null, $documentChanged = null, $lastNamePrev = null, $firstNamePrev = null, $middleNamePrev = null, \App\Integration\Providers\Alliance3\DTO\DocumentInfo $documentPrev = null)
    {
        $this
            ->setFullNameChanged($fullNameChanged)
            ->setDocumentChanged($documentChanged)
            ->setLastNamePrev($lastNamePrev)
            ->setFirstNamePrev($firstNamePrev)
            ->setMiddleNamePrev($middleNamePrev)
            ->setDocumentPrev($documentPrev);
    }
    /**
     * Get fullNameChanged value
     * @return bool|null
     */
    public function getFullNameChanged()
    {
        return $this->fullNameChanged;
    }
    /**
     * Set fullNameChanged value
     * @param bool $fullNameChanged
     * @return \App\Integration\Providers\Alliance3\DTO\PhysicalSubjectChangesInfo
     */
    public function setFullNameChanged($fullNameChanged = null)
    {
        $this->fullNameChanged = $fullNameChanged;
        return $this;
    }
    /**
     * Get documentChanged value
     * @return bool|null
     */
    public function getDocumentChanged()
    {
        return $this->documentChanged;
    }
    /**
     * Set documentChanged value
     * @param bool $documentChanged
     * @return \App\Integration\Providers\Alliance3\DTO\PhysicalSubjectChangesInfo
     */
    public function setDocumentChanged($documentChanged = null)
    {
        $this->documentChanged = $documentChanged;
        return $this;
    }
    /**
     * Get lastNamePrev value
     * @return string|null
     */
    public function getLastNamePrev()
    {
        return $this->lastNamePrev;
    }
    /**
     * Set lastNamePrev value
     * @param string $lastNamePrev
     * @return \App\Integration\Providers\Alliance3\DTO\PhysicalSubjectChangesInfo
     */
    public function setLastNamePrev($lastNamePrev = null)
    {
        $this->lastNamePrev = $lastNamePrev;
        return $this;
    }
    /**
     * Get firstNamePrev value
     * @return string|null
     */
    public function getFirstNamePrev()
    {
        return $this->firstNamePrev;
    }
    /**
     * Set firstNamePrev value
     * @param string $firstNamePrev
     * @return \App\Integration\Providers\Alliance3\DTO\PhysicalSubjectChangesInfo
     */
    public function setFirstNamePrev($firstNamePrev = null)
    {
        $this->firstNamePrev = $firstNamePrev;
        return $this;
    }
    /**
     * Get middleNamePrev value
     * @return string|null
     */
    public function getMiddleNamePrev()
    {
        return $this->middleNamePrev;
    }
    /**
     * Set middleNamePrev value
     * @param string $middleNamePrev
     * @return \App\Integration\Providers\Alliance3\DTO\PhysicalSubjectChangesInfo
     */
    public function setMiddleNamePrev($middleNamePrev = null)
    {
        $this->middleNamePrev = $middleNamePrev;
        return $this;
    }
    /**
     * Get documentPrev value
     * @return \App\Integration\Providers\Alliance3\DTO\DocumentInfo|null
     */
    public function getDocumentPrev()
    {
        return $this->documentPrev;
    }
    /**
     * Set documentPrev value
     * @param \App\Integration\Providers\Alliance3\DTO\DocumentInfo $documentPrev
     * @return \App\Integration\Providers\Alliance3\DTO\PhysicalSubjectChangesInfo
     */
    public function setDocumentPrev(\App\Integration\Providers\Alliance3\DTO\DocumentInfo $documentPrev = null)
    {
        $this->documentPrev = $documentPrev;
        return $this;
    }
}
