<?php

namespace StructType;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for ActivityReportDetailItem_V10 StructType
 * @subpackage Structs
 */
class ActivityReportDetailItem_V10 extends ActivityReportItem_V12
{
    /**
     * The PathInfoDetail
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \ArrayType\ArrayOfPathResult
     */
    public $PathInfoDetail;
    /**
     * The PathInfoSummary
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $PathInfoSummary;
    /**
     * Constructor method for ActivityReportDetailItem_V10
     * @uses ActivityReportDetailItem_V10::setPathInfoDetail()
     * @uses ActivityReportDetailItem_V10::setPathInfoSummary()
     * @param \ArrayType\ArrayOfPathResult $pathInfoDetail
     * @param string $pathInfoSummary
     */
    public function __construct(\ArrayType\ArrayOfPathResult $pathInfoDetail = null, $pathInfoSummary = null)
    {
        $this
            ->setPathInfoDetail($pathInfoDetail)
            ->setPathInfoSummary($pathInfoSummary);
    }
    /**
     * Get PathInfoDetail value
     * @return \ArrayType\ArrayOfPathResult|null
     */
    public function getPathInfoDetail()
    {
        return $this->PathInfoDetail;
    }
    /**
     * Set PathInfoDetail value
     * @param \ArrayType\ArrayOfPathResult $pathInfoDetail
     * @return \StructType\ActivityReportDetailItem_V10
     */
    public function setPathInfoDetail(\ArrayType\ArrayOfPathResult $pathInfoDetail = null)
    {
        $this->PathInfoDetail = $pathInfoDetail;
        return $this;
    }
    /**
     * Get PathInfoSummary value
     * @return string|null
     */
    public function getPathInfoSummary()
    {
        return $this->PathInfoSummary;
    }
    /**
     * Set PathInfoSummary value
     * @param string $pathInfoSummary
     * @return \StructType\ActivityReportDetailItem_V10
     */
    public function setPathInfoSummary($pathInfoSummary = null)
    {
        // validation for constraint: string
        if (!is_null($pathInfoSummary) && !is_string($pathInfoSummary)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($pathInfoSummary, true), gettype($pathInfoSummary)), __LINE__);
        }
        $this->PathInfoSummary = $pathInfoSummary;
        return $this;
    }
}
