<?php

namespace Mnm;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for MailAttachmentInformation StructType
 * @subpackage Structs
 */
class MailAttachmentInformation extends AbstractStructBase
{
    /**
     * The Xml
     * Meta information extracted from the WSDL
     * - use: required
     * @var bool
     */
    public $Xml;
    /**
     * The Pdf
     * Meta information extracted from the WSDL
     * - use: required
     * @var bool
     */
    public $Pdf;
    /**
     * The Html
     * Meta information extracted from the WSDL
     * - use: required
     * @var bool
     */
    public $Html;
    /**
     * The AdditionalDocuments
     * Meta information extracted from the WSDL
     * - use: required
     * @var bool
     */
    public $AdditionalDocuments;
    /**
     * Constructor method for MailAttachmentInformation
     * @uses MailAttachmentInformation::setXml()
     * @uses MailAttachmentInformation::setPdf()
     * @uses MailAttachmentInformation::setHtml()
     * @uses MailAttachmentInformation::setAdditionalDocuments()
     * @param bool $xml
     * @param bool $pdf
     * @param bool $html
     * @param bool $additionalDocuments
     */
    public function __construct($xml = null, $pdf = null, $html = null, $additionalDocuments = null)
    {
        $this
            ->setXml($xml)
            ->setPdf($pdf)
            ->setHtml($html)
            ->setAdditionalDocuments($additionalDocuments);
    }
    /**
     * Get Xml value
     * @return bool
     */
    public function getXml()
    {
        return $this->Xml;
    }
    /**
     * Set Xml value
     * @param bool $xml
     * @return \Mnm\MailAttachmentInformation
     */
    public function setXml($xml = null)
    {
        $this->Xml = $xml;
        return $this;
    }
    /**
     * Get Pdf value
     * @return bool
     */
    public function getPdf()
    {
        return $this->Pdf;
    }
    /**
     * Set Pdf value
     * @param bool $pdf
     * @return \Mnm\MailAttachmentInformation
     */
    public function setPdf($pdf = null)
    {
        $this->Pdf = $pdf;
        return $this;
    }
    /**
     * Get Html value
     * @return bool
     */
    public function getHtml()
    {
        return $this->Html;
    }
    /**
     * Set Html value
     * @param bool $html
     * @return \Mnm\MailAttachmentInformation
     */
    public function setHtml($html = null)
    {
        $this->Html = $html;
        return $this;
    }
    /**
     * Get AdditionalDocuments value
     * @return bool
     */
    public function getAdditionalDocuments()
    {
        return $this->AdditionalDocuments;
    }
    /**
     * Set AdditionalDocuments value
     * @param bool $additionalDocuments
     * @return \Mnm\MailAttachmentInformation
     */
    public function setAdditionalDocuments($additionalDocuments = null)
    {
        $this->AdditionalDocuments = $additionalDocuments;
        return $this;
    }
    /**
     * Method called when an object has been exported with var_export() functions
     * It allows to return an object instantiated with the values
     * @see AbstractStructBase::__set_state()
     * @uses AbstractStructBase::__set_state()
     * @param array $array the exported values
     * @return \Mnm\MailAttachmentInformation
     */
    public static function __set_state(array $array)
    {
        return parent::__set_state($array);
    }
    /**
     * Method returning the class name
     * @return string __CLASS__
     */
    public function __toString()
    {
        return __CLASS__;
    }
}
