<?php

namespace Ups_transit\UPStransitStruct;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for UPSSecurity UPStransitStruct
 * @package Ups_transit
 * @subpackage Structs
 */
class Ups_transitUPSSecurity extends AbstractStructBase
{
    /**
     * The UsernameToken
     * @var \Ups_transit\UPStransitStruct\Ups_transitUsernameToken
     */
    public $UsernameToken;
    /**
     * The ServiceAccessToken
     * @var \Ups_transit\UPStransitStruct\Ups_transitServiceAccessToken
     */
    public $ServiceAccessToken;
    /**
     * Constructor method for UPSSecurity
     * @uses Ups_transitUPSSecurity::setUsernameToken()
     * @uses Ups_transitUPSSecurity::setServiceAccessToken()
     * @param \Ups_transit\UPStransitStruct\Ups_transitUsernameToken $usernameToken
     * @param \Ups_transit\UPStransitStruct\Ups_transitServiceAccessToken $serviceAccessToken
     */
    public function __construct(\Ups_transit\UPStransitStruct\Ups_transitUsernameToken $usernameToken = null, \Ups_transit\UPStransitStruct\Ups_transitServiceAccessToken $serviceAccessToken = null)
    {
        $this
            ->setUsernameToken($usernameToken)
            ->setServiceAccessToken($serviceAccessToken);
    }
    /**
     * Get UsernameToken value
     * @return \Ups_transit\UPStransitStruct\Ups_transitUsernameToken|null
     */
    public function getUsernameToken()
    {
        return $this->UsernameToken;
    }
    /**
     * Set UsernameToken value
     * @param \Ups_transit\UPStransitStruct\Ups_transitUsernameToken $usernameToken
     * @return \Ups_transit\UPStransitStruct\Ups_transitUPSSecurity
     */
    public function setUsernameToken(\Ups_transit\UPStransitStruct\Ups_transitUsernameToken $usernameToken = null)
    {
        $this->UsernameToken = $usernameToken;
        return $this;
    }
    /**
     * Get ServiceAccessToken value
     * @return \Ups_transit\UPStransitStruct\Ups_transitServiceAccessToken|null
     */
    public function getServiceAccessToken()
    {
        return $this->ServiceAccessToken;
    }
    /**
     * Set ServiceAccessToken value
     * @param \Ups_transit\UPStransitStruct\Ups_transitServiceAccessToken $serviceAccessToken
     * @return \Ups_transit\UPStransitStruct\Ups_transitUPSSecurity
     */
    public function setServiceAccessToken(\Ups_transit\UPStransitStruct\Ups_transitServiceAccessToken $serviceAccessToken = null)
    {
        $this->ServiceAccessToken = $serviceAccessToken;
        return $this;
    }
}
