<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/lifesciences/v2beta/workflows.proto

namespace Google\Cloud\LifeSciences\V2beta;

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

/**
 * Holds encrypted information that is only decrypted and stored in RAM
 * by the worker VM when running the pipeline.
 *
 * Generated from protobuf message <code>google.cloud.lifesciences.v2beta.Secret</code>
 */
class Secret extends \Google\Protobuf\Internal\Message
{
    /**
     * The name of the Cloud KMS key that will be used to decrypt the secret
     * value. The VM service account must have the required permissions and
     * authentication scopes to invoke the `decrypt` method on the specified key.
     *
     * Generated from protobuf field <code>string key_name = 1;</code>
     */
    private $key_name = '';
    /**
     * The value of the cipherText response from the `encrypt` method. This field
     * is intentionally unaudited.
     *
     * Generated from protobuf field <code>string cipher_text = 2;</code>
     */
    private $cipher_text = '';

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type string $key_name
     *           The name of the Cloud KMS key that will be used to decrypt the secret
     *           value. The VM service account must have the required permissions and
     *           authentication scopes to invoke the `decrypt` method on the specified key.
     *     @type string $cipher_text
     *           The value of the cipherText response from the `encrypt` method. This field
     *           is intentionally unaudited.
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\Google\Cloud\Lifesciences\V2Beta\Workflows::initOnce();
        parent::__construct($data);
    }

    /**
     * The name of the Cloud KMS key that will be used to decrypt the secret
     * value. The VM service account must have the required permissions and
     * authentication scopes to invoke the `decrypt` method on the specified key.
     *
     * Generated from protobuf field <code>string key_name = 1;</code>
     * @return string
     */
    public function getKeyName()
    {
        return $this->key_name;
    }

    /**
     * The name of the Cloud KMS key that will be used to decrypt the secret
     * value. The VM service account must have the required permissions and
     * authentication scopes to invoke the `decrypt` method on the specified key.
     *
     * Generated from protobuf field <code>string key_name = 1;</code>
     * @param string $var
     * @return $this
     */
    public function setKeyName($var)
    {
        GPBUtil::checkString($var, True);
        $this->key_name = $var;

        return $this;
    }

    /**
     * The value of the cipherText response from the `encrypt` method. This field
     * is intentionally unaudited.
     *
     * Generated from protobuf field <code>string cipher_text = 2;</code>
     * @return string
     */
    public function getCipherText()
    {
        return $this->cipher_text;
    }

    /**
     * The value of the cipherText response from the `encrypt` method. This field
     * is intentionally unaudited.
     *
     * Generated from protobuf field <code>string cipher_text = 2;</code>
     * @param string $var
     * @return $this
     */
    public function setCipherText($var)
    {
        GPBUtil::checkString($var, True);
        $this->cipher_text = $var;

        return $this;
    }

}

