<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/dialogflow/v2/conversation_profile.proto

namespace Google\Cloud\Dialogflow\V2\HumanAgentAssistantConfig\SuggestionQueryConfig;

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

/**
 * Settings that determine how to filter recent conversation context when
 * generating suggestions.
 *
 * Generated from protobuf message <code>google.cloud.dialogflow.v2.HumanAgentAssistantConfig.SuggestionQueryConfig.ContextFilterSettings</code>
 */
class ContextFilterSettings extends \Google\Protobuf\Internal\Message
{
    /**
     * If set to true, the last message from virtual agent (hand off message)
     * and the message before it (trigger message of hand off) are dropped.
     *
     * Generated from protobuf field <code>bool drop_handoff_messages = 1;</code>
     */
    private $drop_handoff_messages = false;
    /**
     * If set to true, all messages from virtual agent are dropped.
     *
     * Generated from protobuf field <code>bool drop_virtual_agent_messages = 2;</code>
     */
    private $drop_virtual_agent_messages = false;
    /**
     * If set to true, all messages from ivr stage are dropped.
     *
     * Generated from protobuf field <code>bool drop_ivr_messages = 3;</code>
     */
    private $drop_ivr_messages = false;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type bool $drop_handoff_messages
     *           If set to true, the last message from virtual agent (hand off message)
     *           and the message before it (trigger message of hand off) are dropped.
     *     @type bool $drop_virtual_agent_messages
     *           If set to true, all messages from virtual agent are dropped.
     *     @type bool $drop_ivr_messages
     *           If set to true, all messages from ivr stage are dropped.
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\Google\Cloud\Dialogflow\V2\ConversationProfile::initOnce();
        parent::__construct($data);
    }

    /**
     * If set to true, the last message from virtual agent (hand off message)
     * and the message before it (trigger message of hand off) are dropped.
     *
     * Generated from protobuf field <code>bool drop_handoff_messages = 1;</code>
     * @return bool
     */
    public function getDropHandoffMessages()
    {
        return $this->drop_handoff_messages;
    }

    /**
     * If set to true, the last message from virtual agent (hand off message)
     * and the message before it (trigger message of hand off) are dropped.
     *
     * Generated from protobuf field <code>bool drop_handoff_messages = 1;</code>
     * @param bool $var
     * @return $this
     */
    public function setDropHandoffMessages($var)
    {
        GPBUtil::checkBool($var);
        $this->drop_handoff_messages = $var;

        return $this;
    }

    /**
     * If set to true, all messages from virtual agent are dropped.
     *
     * Generated from protobuf field <code>bool drop_virtual_agent_messages = 2;</code>
     * @return bool
     */
    public function getDropVirtualAgentMessages()
    {
        return $this->drop_virtual_agent_messages;
    }

    /**
     * If set to true, all messages from virtual agent are dropped.
     *
     * Generated from protobuf field <code>bool drop_virtual_agent_messages = 2;</code>
     * @param bool $var
     * @return $this
     */
    public function setDropVirtualAgentMessages($var)
    {
        GPBUtil::checkBool($var);
        $this->drop_virtual_agent_messages = $var;

        return $this;
    }

    /**
     * If set to true, all messages from ivr stage are dropped.
     *
     * Generated from protobuf field <code>bool drop_ivr_messages = 3;</code>
     * @return bool
     */
    public function getDropIvrMessages()
    {
        return $this->drop_ivr_messages;
    }

    /**
     * If set to true, all messages from ivr stage are dropped.
     *
     * Generated from protobuf field <code>bool drop_ivr_messages = 3;</code>
     * @param bool $var
     * @return $this
     */
    public function setDropIvrMessages($var)
    {
        GPBUtil::checkBool($var);
        $this->drop_ivr_messages = $var;

        return $this;
    }

}

// Adding a class alias for backwards compatibility with the previous class name.
class_alias(ContextFilterSettings::class, \Google\Cloud\Dialogflow\V2\HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings::class);

