<?php
 
 
 

namespace PhpWA\Protocol\Proto\Message\PeerDataOperationRequestResponseMessage;

use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\GPBUtil;
use Google\Protobuf\RepeatedField;




class PeerDataOperationResult extends \Google\Protobuf\Internal\Message
{
    


    protected $mediaUploadResult = null;
    


    protected $stickerMessage = null;
    


    protected $linkPreviewResponse = null;
    


    protected $placeholderMessageResendResponse = null;
    


    protected $waffleNonceFetchRequestResponse = null;
    


    protected $fullHistorySyncOnDemandRequestResponse = null;
    


    protected $companionMetaNonceFetchRequestResponse = null;
    


    protected $syncdSnapshotFatalRecoveryResponse = null;
    


    protected $companionCanonicalUserNonceFetchRequestResponse = null;
    


    protected $historySyncChunkRetryResponse = null;

    

















    public function __construct($data = NULL) {
        \PhpWA\Protocol\Proto\Metadata\WAProto::initOnce();
        parent::__construct($data);
    }

    



    public function getMediaUploadResult()
    {
        return isset($this->mediaUploadResult) ? $this->mediaUploadResult : 0;
    }

    public function hasMediaUploadResult()
    {
        return isset($this->mediaUploadResult);
    }

    public function clearMediaUploadResult()
    {
        unset($this->mediaUploadResult);
    }

    




    public function setMediaUploadResult($var)
    {
        GPBUtil::checkEnum($var, \PhpWA\Protocol\Proto\MediaRetryNotification\ResultType::class);
        $this->mediaUploadResult = $var;

        return $this;
    }

    



    public function getStickerMessage()
    {
        return $this->stickerMessage;
    }

    public function hasStickerMessage()
    {
        return isset($this->stickerMessage);
    }

    public function clearStickerMessage()
    {
        unset($this->stickerMessage);
    }

    




    public function setStickerMessage($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\Message\StickerMessage::class);
        $this->stickerMessage = $var;

        return $this;
    }

    



    public function getLinkPreviewResponse()
    {
        return $this->linkPreviewResponse;
    }

    public function hasLinkPreviewResponse()
    {
        return isset($this->linkPreviewResponse);
    }

    public function clearLinkPreviewResponse()
    {
        unset($this->linkPreviewResponse);
    }

    




    public function setLinkPreviewResponse($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\Message\PeerDataOperationRequestResponseMessage\PeerDataOperationResult\LinkPreviewResponse::class);
        $this->linkPreviewResponse = $var;

        return $this;
    }

    



    public function getPlaceholderMessageResendResponse()
    {
        return $this->placeholderMessageResendResponse;
    }

    public function hasPlaceholderMessageResendResponse()
    {
        return isset($this->placeholderMessageResendResponse);
    }

    public function clearPlaceholderMessageResendResponse()
    {
        unset($this->placeholderMessageResendResponse);
    }

    




    public function setPlaceholderMessageResendResponse($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\Message\PeerDataOperationRequestResponseMessage\PeerDataOperationResult\PlaceholderMessageResendResponse::class);
        $this->placeholderMessageResendResponse = $var;

        return $this;
    }

    



    public function getWaffleNonceFetchRequestResponse()
    {
        return $this->waffleNonceFetchRequestResponse;
    }

    public function hasWaffleNonceFetchRequestResponse()
    {
        return isset($this->waffleNonceFetchRequestResponse);
    }

    public function clearWaffleNonceFetchRequestResponse()
    {
        unset($this->waffleNonceFetchRequestResponse);
    }

    




    public function setWaffleNonceFetchRequestResponse($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\Message\PeerDataOperationRequestResponseMessage\PeerDataOperationResult\WaffleNonceFetchResponse::class);
        $this->waffleNonceFetchRequestResponse = $var;

        return $this;
    }

    



    public function getFullHistorySyncOnDemandRequestResponse()
    {
        return $this->fullHistorySyncOnDemandRequestResponse;
    }

    public function hasFullHistorySyncOnDemandRequestResponse()
    {
        return isset($this->fullHistorySyncOnDemandRequestResponse);
    }

    public function clearFullHistorySyncOnDemandRequestResponse()
    {
        unset($this->fullHistorySyncOnDemandRequestResponse);
    }

    




    public function setFullHistorySyncOnDemandRequestResponse($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\Message\PeerDataOperationRequestResponseMessage\PeerDataOperationResult\FullHistorySyncOnDemandRequestResponse::class);
        $this->fullHistorySyncOnDemandRequestResponse = $var;

        return $this;
    }

    



    public function getCompanionMetaNonceFetchRequestResponse()
    {
        return $this->companionMetaNonceFetchRequestResponse;
    }

    public function hasCompanionMetaNonceFetchRequestResponse()
    {
        return isset($this->companionMetaNonceFetchRequestResponse);
    }

    public function clearCompanionMetaNonceFetchRequestResponse()
    {
        unset($this->companionMetaNonceFetchRequestResponse);
    }

    




    public function setCompanionMetaNonceFetchRequestResponse($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\Message\PeerDataOperationRequestResponseMessage\PeerDataOperationResult\CompanionMetaNonceFetchResponse::class);
        $this->companionMetaNonceFetchRequestResponse = $var;

        return $this;
    }

    



    public function getSyncdSnapshotFatalRecoveryResponse()
    {
        return $this->syncdSnapshotFatalRecoveryResponse;
    }

    public function hasSyncdSnapshotFatalRecoveryResponse()
    {
        return isset($this->syncdSnapshotFatalRecoveryResponse);
    }

    public function clearSyncdSnapshotFatalRecoveryResponse()
    {
        unset($this->syncdSnapshotFatalRecoveryResponse);
    }

    




    public function setSyncdSnapshotFatalRecoveryResponse($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\Message\PeerDataOperationRequestResponseMessage\PeerDataOperationResult\SyncDSnapshotFatalRecoveryResponse::class);
        $this->syncdSnapshotFatalRecoveryResponse = $var;

        return $this;
    }

    



    public function getCompanionCanonicalUserNonceFetchRequestResponse()
    {
        return $this->companionCanonicalUserNonceFetchRequestResponse;
    }

    public function hasCompanionCanonicalUserNonceFetchRequestResponse()
    {
        return isset($this->companionCanonicalUserNonceFetchRequestResponse);
    }

    public function clearCompanionCanonicalUserNonceFetchRequestResponse()
    {
        unset($this->companionCanonicalUserNonceFetchRequestResponse);
    }

    




    public function setCompanionCanonicalUserNonceFetchRequestResponse($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\Message\PeerDataOperationRequestResponseMessage\PeerDataOperationResult\CompanionCanonicalUserNonceFetchResponse::class);
        $this->companionCanonicalUserNonceFetchRequestResponse = $var;

        return $this;
    }

    



    public function getHistorySyncChunkRetryResponse()
    {
        return $this->historySyncChunkRetryResponse;
    }

    public function hasHistorySyncChunkRetryResponse()
    {
        return isset($this->historySyncChunkRetryResponse);
    }

    public function clearHistorySyncChunkRetryResponse()
    {
        unset($this->historySyncChunkRetryResponse);
    }

    




    public function setHistorySyncChunkRetryResponse($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\Message\PeerDataOperationRequestResponseMessage\PeerDataOperationResult\HistorySyncChunkRetryResponse::class);
        $this->historySyncChunkRetryResponse = $var;

        return $this;
    }

}

