UNPKG

@google-cloud/memorystore

Version:
816 lines (744 loc) 2.14 MB
// Copyright 2025 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. /*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars*/ (function(global, factory) { /* global define, require, module */ /* AMD */ if (typeof define === 'function' && define.amd) define(["protobufjs/minimal"], factory); /* CommonJS */ else if (typeof require === 'function' && typeof module === 'object' && module && module.exports) module.exports = factory(require("google-gax/build/src/protobuf").protobufMinimal); })(this, function($protobuf) { "use strict"; // Common aliases var $Reader = $protobuf.Reader, $Writer = $protobuf.Writer, $util = $protobuf.util; // Exported root namespace var $root = $protobuf.roots._google_cloud_memorystore_protos || ($protobuf.roots._google_cloud_memorystore_protos = {}); $root.google = (function() { /** * Namespace google. * @exports google * @namespace */ var google = {}; google.cloud = (function() { /** * Namespace cloud. * @memberof google * @namespace */ var cloud = {}; cloud.memorystore = (function() { /** * Namespace memorystore. * @memberof google.cloud * @namespace */ var memorystore = {}; memorystore.v1 = (function() { /** * Namespace v1. * @memberof google.cloud.memorystore * @namespace */ var v1 = {}; v1.Memorystore = (function() { /** * Constructs a new Memorystore service. * @memberof google.cloud.memorystore.v1 * @classdesc Represents a Memorystore * @extends $protobuf.rpc.Service * @constructor * @param {$protobuf.RPCImpl} rpcImpl RPC implementation * @param {boolean} [requestDelimited=false] Whether requests are length-delimited * @param {boolean} [responseDelimited=false] Whether responses are length-delimited */ function Memorystore(rpcImpl, requestDelimited, responseDelimited) { $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); } (Memorystore.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = Memorystore; /** * Creates new Memorystore service using the specified rpc implementation. * @function create * @memberof google.cloud.memorystore.v1.Memorystore * @static * @param {$protobuf.RPCImpl} rpcImpl RPC implementation * @param {boolean} [requestDelimited=false] Whether requests are length-delimited * @param {boolean} [responseDelimited=false] Whether responses are length-delimited * @returns {Memorystore} RPC service. Useful where requests and/or responses are streamed. */ Memorystore.create = function create(rpcImpl, requestDelimited, responseDelimited) { return new this(rpcImpl, requestDelimited, responseDelimited); }; /** * Callback as used by {@link google.cloud.memorystore.v1.Memorystore|listInstances}. * @memberof google.cloud.memorystore.v1.Memorystore * @typedef ListInstancesCallback * @type {function} * @param {Error|null} error Error, if any * @param {google.cloud.memorystore.v1.ListInstancesResponse} [response] ListInstancesResponse */ /** * Calls ListInstances. * @function listInstances * @memberof google.cloud.memorystore.v1.Memorystore * @instance * @param {google.cloud.memorystore.v1.IListInstancesRequest} request ListInstancesRequest message or plain object * @param {google.cloud.memorystore.v1.Memorystore.ListInstancesCallback} callback Node-style callback called with the error, if any, and ListInstancesResponse * @returns {undefined} * @variation 1 */ Object.defineProperty(Memorystore.prototype.listInstances = function listInstances(request, callback) { return this.rpcCall(listInstances, $root.google.cloud.memorystore.v1.ListInstancesRequest, $root.google.cloud.memorystore.v1.ListInstancesResponse, request, callback); }, "name", { value: "ListInstances" }); /** * Calls ListInstances. * @function listInstances * @memberof google.cloud.memorystore.v1.Memorystore * @instance * @param {google.cloud.memorystore.v1.IListInstancesRequest} request ListInstancesRequest message or plain object * @returns {Promise<google.cloud.memorystore.v1.ListInstancesResponse>} Promise * @variation 2 */ /** * Callback as used by {@link google.cloud.memorystore.v1.Memorystore|getInstance}. * @memberof google.cloud.memorystore.v1.Memorystore * @typedef GetInstanceCallback * @type {function} * @param {Error|null} error Error, if any * @param {google.cloud.memorystore.v1.Instance} [response] Instance */ /** * Calls GetInstance. * @function getInstance * @memberof google.cloud.memorystore.v1.Memorystore * @instance * @param {google.cloud.memorystore.v1.IGetInstanceRequest} request GetInstanceRequest message or plain object * @param {google.cloud.memorystore.v1.Memorystore.GetInstanceCallback} callback Node-style callback called with the error, if any, and Instance * @returns {undefined} * @variation 1 */ Object.defineProperty(Memorystore.prototype.getInstance = function getInstance(request, callback) { return this.rpcCall(getInstance, $root.google.cloud.memorystore.v1.GetInstanceRequest, $root.google.cloud.memorystore.v1.Instance, request, callback); }, "name", { value: "GetInstance" }); /** * Calls GetInstance. * @function getInstance * @memberof google.cloud.memorystore.v1.Memorystore * @instance * @param {google.cloud.memorystore.v1.IGetInstanceRequest} request GetInstanceRequest message or plain object * @returns {Promise<google.cloud.memorystore.v1.Instance>} Promise * @variation 2 */ /** * Callback as used by {@link google.cloud.memorystore.v1.Memorystore|createInstance}. * @memberof google.cloud.memorystore.v1.Memorystore * @typedef CreateInstanceCallback * @type {function} * @param {Error|null} error Error, if any * @param {google.longrunning.Operation} [response] Operation */ /** * Calls CreateInstance. * @function createInstance * @memberof google.cloud.memorystore.v1.Memorystore * @instance * @param {google.cloud.memorystore.v1.ICreateInstanceRequest} request CreateInstanceRequest message or plain object * @param {google.cloud.memorystore.v1.Memorystore.CreateInstanceCallback} callback Node-style callback called with the error, if any, and Operation * @returns {undefined} * @variation 1 */ Object.defineProperty(Memorystore.prototype.createInstance = function createInstance(request, callback) { return this.rpcCall(createInstance, $root.google.cloud.memorystore.v1.CreateInstanceRequest, $root.google.longrunning.Operation, request, callback); }, "name", { value: "CreateInstance" }); /** * Calls CreateInstance. * @function createInstance * @memberof google.cloud.memorystore.v1.Memorystore * @instance * @param {google.cloud.memorystore.v1.ICreateInstanceRequest} request CreateInstanceRequest message or plain object * @returns {Promise<google.longrunning.Operation>} Promise * @variation 2 */ /** * Callback as used by {@link google.cloud.memorystore.v1.Memorystore|updateInstance}. * @memberof google.cloud.memorystore.v1.Memorystore * @typedef UpdateInstanceCallback * @type {function} * @param {Error|null} error Error, if any * @param {google.longrunning.Operation} [response] Operation */ /** * Calls UpdateInstance. * @function updateInstance * @memberof google.cloud.memorystore.v1.Memorystore * @instance * @param {google.cloud.memorystore.v1.IUpdateInstanceRequest} request UpdateInstanceRequest message or plain object * @param {google.cloud.memorystore.v1.Memorystore.UpdateInstanceCallback} callback Node-style callback called with the error, if any, and Operation * @returns {undefined} * @variation 1 */ Object.defineProperty(Memorystore.prototype.updateInstance = function updateInstance(request, callback) { return this.rpcCall(updateInstance, $root.google.cloud.memorystore.v1.UpdateInstanceRequest, $root.google.longrunning.Operation, request, callback); }, "name", { value: "UpdateInstance" }); /** * Calls UpdateInstance. * @function updateInstance * @memberof google.cloud.memorystore.v1.Memorystore * @instance * @param {google.cloud.memorystore.v1.IUpdateInstanceRequest} request UpdateInstanceRequest message or plain object * @returns {Promise<google.longrunning.Operation>} Promise * @variation 2 */ /** * Callback as used by {@link google.cloud.memorystore.v1.Memorystore|deleteInstance}. * @memberof google.cloud.memorystore.v1.Memorystore * @typedef DeleteInstanceCallback * @type {function} * @param {Error|null} error Error, if any * @param {google.longrunning.Operation} [response] Operation */ /** * Calls DeleteInstance. * @function deleteInstance * @memberof google.cloud.memorystore.v1.Memorystore * @instance * @param {google.cloud.memorystore.v1.IDeleteInstanceRequest} request DeleteInstanceRequest message or plain object * @param {google.cloud.memorystore.v1.Memorystore.DeleteInstanceCallback} callback Node-style callback called with the error, if any, and Operation * @returns {undefined} * @variation 1 */ Object.defineProperty(Memorystore.prototype.deleteInstance = function deleteInstance(request, callback) { return this.rpcCall(deleteInstance, $root.google.cloud.memorystore.v1.DeleteInstanceRequest, $root.google.longrunning.Operation, request, callback); }, "name", { value: "DeleteInstance" }); /** * Calls DeleteInstance. * @function deleteInstance * @memberof google.cloud.memorystore.v1.Memorystore * @instance * @param {google.cloud.memorystore.v1.IDeleteInstanceRequest} request DeleteInstanceRequest message or plain object * @returns {Promise<google.longrunning.Operation>} Promise * @variation 2 */ /** * Callback as used by {@link google.cloud.memorystore.v1.Memorystore|getCertificateAuthority}. * @memberof google.cloud.memorystore.v1.Memorystore * @typedef GetCertificateAuthorityCallback * @type {function} * @param {Error|null} error Error, if any * @param {google.cloud.memorystore.v1.CertificateAuthority} [response] CertificateAuthority */ /** * Calls GetCertificateAuthority. * @function getCertificateAuthority * @memberof google.cloud.memorystore.v1.Memorystore * @instance * @param {google.cloud.memorystore.v1.IGetCertificateAuthorityRequest} request GetCertificateAuthorityRequest message or plain object * @param {google.cloud.memorystore.v1.Memorystore.GetCertificateAuthorityCallback} callback Node-style callback called with the error, if any, and CertificateAuthority * @returns {undefined} * @variation 1 */ Object.defineProperty(Memorystore.prototype.getCertificateAuthority = function getCertificateAuthority(request, callback) { return this.rpcCall(getCertificateAuthority, $root.google.cloud.memorystore.v1.GetCertificateAuthorityRequest, $root.google.cloud.memorystore.v1.CertificateAuthority, request, callback); }, "name", { value: "GetCertificateAuthority" }); /** * Calls GetCertificateAuthority. * @function getCertificateAuthority * @memberof google.cloud.memorystore.v1.Memorystore * @instance * @param {google.cloud.memorystore.v1.IGetCertificateAuthorityRequest} request GetCertificateAuthorityRequest message or plain object * @returns {Promise<google.cloud.memorystore.v1.CertificateAuthority>} Promise * @variation 2 */ return Memorystore; })(); /** * PscConnectionStatus enum. * @name google.cloud.memorystore.v1.PscConnectionStatus * @enum {number} * @property {number} PSC_CONNECTION_STATUS_UNSPECIFIED=0 PSC_CONNECTION_STATUS_UNSPECIFIED value * @property {number} ACTIVE=1 ACTIVE value * @property {number} NOT_FOUND=2 NOT_FOUND value */ v1.PscConnectionStatus = (function() { var valuesById = {}, values = Object.create(valuesById); values[valuesById[0] = "PSC_CONNECTION_STATUS_UNSPECIFIED"] = 0; values[valuesById[1] = "ACTIVE"] = 1; values[valuesById[2] = "NOT_FOUND"] = 2; return values; })(); /** * ConnectionType enum. * @name google.cloud.memorystore.v1.ConnectionType * @enum {number} * @property {number} CONNECTION_TYPE_UNSPECIFIED=0 CONNECTION_TYPE_UNSPECIFIED value * @property {number} CONNECTION_TYPE_DISCOVERY=1 CONNECTION_TYPE_DISCOVERY value * @property {number} CONNECTION_TYPE_PRIMARY=2 CONNECTION_TYPE_PRIMARY value * @property {number} CONNECTION_TYPE_READER=3 CONNECTION_TYPE_READER value */ v1.ConnectionType = (function() { var valuesById = {}, values = Object.create(valuesById); values[valuesById[0] = "CONNECTION_TYPE_UNSPECIFIED"] = 0; values[valuesById[1] = "CONNECTION_TYPE_DISCOVERY"] = 1; values[valuesById[2] = "CONNECTION_TYPE_PRIMARY"] = 2; values[valuesById[3] = "CONNECTION_TYPE_READER"] = 3; return values; })(); v1.Instance = (function() { /** * Properties of an Instance. * @memberof google.cloud.memorystore.v1 * @interface IInstance * @property {string|null} [name] Instance name * @property {google.protobuf.ITimestamp|null} [createTime] Instance createTime * @property {google.protobuf.ITimestamp|null} [updateTime] Instance updateTime * @property {Object.<string,string>|null} [labels] Instance labels * @property {google.cloud.memorystore.v1.Instance.State|null} [state] Instance state * @property {google.cloud.memorystore.v1.Instance.IStateInfo|null} [stateInfo] Instance stateInfo * @property {string|null} [uid] Instance uid * @property {number|null} [replicaCount] Instance replicaCount * @property {google.cloud.memorystore.v1.Instance.AuthorizationMode|null} [authorizationMode] Instance authorizationMode * @property {google.cloud.memorystore.v1.Instance.TransitEncryptionMode|null} [transitEncryptionMode] Instance transitEncryptionMode * @property {number|null} [shardCount] Instance shardCount * @property {Array.<google.cloud.memorystore.v1.IDiscoveryEndpoint>|null} [discoveryEndpoints] Instance discoveryEndpoints * @property {google.cloud.memorystore.v1.Instance.NodeType|null} [nodeType] Instance nodeType * @property {google.cloud.memorystore.v1.IPersistenceConfig|null} [persistenceConfig] Instance persistenceConfig * @property {string|null} [engineVersion] Instance engineVersion * @property {Object.<string,string>|null} [engineConfigs] Instance engineConfigs * @property {google.cloud.memorystore.v1.INodeConfig|null} [nodeConfig] Instance nodeConfig * @property {google.cloud.memorystore.v1.IZoneDistributionConfig|null} [zoneDistributionConfig] Instance zoneDistributionConfig * @property {boolean|null} [deletionProtectionEnabled] Instance deletionProtectionEnabled * @property {Array.<google.cloud.memorystore.v1.IPscAutoConnection>|null} [pscAutoConnections] Instance pscAutoConnections * @property {Array.<google.cloud.memorystore.v1.Instance.IInstanceEndpoint>|null} [endpoints] Instance endpoints * @property {google.cloud.memorystore.v1.Instance.Mode|null} [mode] Instance mode */ /** * Constructs a new Instance. * @memberof google.cloud.memorystore.v1 * @classdesc Represents an Instance. * @implements IInstance * @constructor * @param {google.cloud.memorystore.v1.IInstance=} [properties] Properties to set */ function Instance(properties) { this.labels = {}; this.discoveryEndpoints = []; this.engineConfigs = {}; this.pscAutoConnections = []; this.endpoints = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]]; } /** * Instance name. * @member {string} name * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.name = ""; /** * Instance createTime. * @member {google.protobuf.ITimestamp|null|undefined} createTime * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.createTime = null; /** * Instance updateTime. * @member {google.protobuf.ITimestamp|null|undefined} updateTime * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.updateTime = null; /** * Instance labels. * @member {Object.<string,string>} labels * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.labels = $util.emptyObject; /** * Instance state. * @member {google.cloud.memorystore.v1.Instance.State} state * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.state = 0; /** * Instance stateInfo. * @member {google.cloud.memorystore.v1.Instance.IStateInfo|null|undefined} stateInfo * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.stateInfo = null; /** * Instance uid. * @member {string} uid * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.uid = ""; /** * Instance replicaCount. * @member {number|null|undefined} replicaCount * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.replicaCount = null; /** * Instance authorizationMode. * @member {google.cloud.memorystore.v1.Instance.AuthorizationMode} authorizationMode * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.authorizationMode = 0; /** * Instance transitEncryptionMode. * @member {google.cloud.memorystore.v1.Instance.TransitEncryptionMode} transitEncryptionMode * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.transitEncryptionMode = 0; /** * Instance shardCount. * @member {number} shardCount * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.shardCount = 0; /** * Instance discoveryEndpoints. * @member {Array.<google.cloud.memorystore.v1.IDiscoveryEndpoint>} discoveryEndpoints * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.discoveryEndpoints = $util.emptyArray; /** * Instance nodeType. * @member {google.cloud.memorystore.v1.Instance.NodeType} nodeType * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.nodeType = 0; /** * Instance persistenceConfig. * @member {google.cloud.memorystore.v1.IPersistenceConfig|null|undefined} persistenceConfig * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.persistenceConfig = null; /** * Instance engineVersion. * @member {string} engineVersion * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.engineVersion = ""; /** * Instance engineConfigs. * @member {Object.<string,string>} engineConfigs * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.engineConfigs = $util.emptyObject; /** * Instance nodeConfig. * @member {google.cloud.memorystore.v1.INodeConfig|null|undefined} nodeConfig * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.nodeConfig = null; /** * Instance zoneDistributionConfig. * @member {google.cloud.memorystore.v1.IZoneDistributionConfig|null|undefined} zoneDistributionConfig * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.zoneDistributionConfig = null; /** * Instance deletionProtectionEnabled. * @member {boolean|null|undefined} deletionProtectionEnabled * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.deletionProtectionEnabled = null; /** * Instance pscAutoConnections. * @member {Array.<google.cloud.memorystore.v1.IPscAutoConnection>} pscAutoConnections * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.pscAutoConnections = $util.emptyArray; /** * Instance endpoints. * @member {Array.<google.cloud.memorystore.v1.Instance.IInstanceEndpoint>} endpoints * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.endpoints = $util.emptyArray; /** * Instance mode. * @member {google.cloud.memorystore.v1.Instance.Mode} mode * @memberof google.cloud.memorystore.v1.Instance * @instance */ Instance.prototype.mode = 0; // OneOf field names bound to virtual getters and setters var $oneOfFields; /** * Instance _replicaCount. * @member {"replicaCount"|undefined} _replicaCount * @memberof google.cloud.memorystore.v1.Instance * @instance */ Object.defineProperty(Instance.prototype, "_replicaCount", { get: $util.oneOfGetter($oneOfFields = ["replicaCount"]), set: $util.oneOfSetter($oneOfFields) }); /** * Instance _deletionProtectionEnabled. * @member {"deletionProtectionEnabled"|undefined} _deletionProtectionEnabled * @memberof google.cloud.memorystore.v1.Instance * @instance */ Object.defineProperty(Instance.prototype, "_deletionProtectionEnabled", { get: $util.oneOfGetter($oneOfFields = ["deletionProtectionEnabled"]), set: $util.oneOfSetter($oneOfFields) }); /** * Creates a new Instance instance using the specified properties. * @function create * @memberof google.cloud.memorystore.v1.Instance * @static * @param {google.cloud.memorystore.v1.IInstance=} [properties] Properties to set * @returns {google.cloud.memorystore.v1.Instance} Instance instance */ Instance.create = function create(properties) { return new Instance(properties); }; /** * Encodes the specified Instance message. Does not implicitly {@link google.cloud.memorystore.v1.Instance.verify|verify} messages. * @function encode * @memberof google.cloud.memorystore.v1.Instance * @static * @param {google.cloud.memorystore.v1.IInstance} message Instance message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ Instance.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.name != null && Object.hasOwnProperty.call(message, "name")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); if (message.labels != null && Object.hasOwnProperty.call(message, "labels")) for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i) writer.uint32(/* id 4, wireType 2 =*/34).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim(); if (message.state != null && Object.hasOwnProperty.call(message, "state")) writer.uint32(/* id 5, wireType 0 =*/40).int32(message.state); if (message.stateInfo != null && Object.hasOwnProperty.call(message, "stateInfo")) $root.google.cloud.memorystore.v1.Instance.StateInfo.encode(message.stateInfo, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); if (message.uid != null && Object.hasOwnProperty.call(message, "uid")) writer.uint32(/* id 7, wireType 2 =*/58).string(message.uid); if (message.replicaCount != null && Object.hasOwnProperty.call(message, "replicaCount")) writer.uint32(/* id 8, wireType 0 =*/64).int32(message.replicaCount); if (message.authorizationMode != null && Object.hasOwnProperty.call(message, "authorizationMode")) writer.uint32(/* id 9, wireType 0 =*/72).int32(message.authorizationMode); if (message.transitEncryptionMode != null && Object.hasOwnProperty.call(message, "transitEncryptionMode")) writer.uint32(/* id 10, wireType 0 =*/80).int32(message.transitEncryptionMode); if (message.shardCount != null && Object.hasOwnProperty.call(message, "shardCount")) writer.uint32(/* id 11, wireType 0 =*/88).int32(message.shardCount); if (message.discoveryEndpoints != null && message.discoveryEndpoints.length) for (var i = 0; i < message.discoveryEndpoints.length; ++i) $root.google.cloud.memorystore.v1.DiscoveryEndpoint.encode(message.discoveryEndpoints[i], writer.uint32(/* id 12, wireType 2 =*/98).fork()).ldelim(); if (message.nodeType != null && Object.hasOwnProperty.call(message, "nodeType")) writer.uint32(/* id 13, wireType 0 =*/104).int32(message.nodeType); if (message.persistenceConfig != null && Object.hasOwnProperty.call(message, "persistenceConfig")) $root.google.cloud.memorystore.v1.PersistenceConfig.encode(message.persistenceConfig, writer.uint32(/* id 14, wireType 2 =*/114).fork()).ldelim(); if (message.engineVersion != null && Object.hasOwnProperty.call(message, "engineVersion")) writer.uint32(/* id 15, wireType 2 =*/122).string(message.engineVersion); if (message.engineConfigs != null && Object.hasOwnProperty.call(message, "engineConfigs")) for (var keys = Object.keys(message.engineConfigs), i = 0; i < keys.length; ++i) writer.uint32(/* id 16, wireType 2 =*/130).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.engineConfigs[keys[i]]).ldelim(); if (message.nodeConfig != null && Object.hasOwnProperty.call(message, "nodeConfig")) $root.google.cloud.memorystore.v1.NodeConfig.encode(message.nodeConfig, writer.uint32(/* id 17, wireType 2 =*/138).fork()).ldelim(); if (message.zoneDistributionConfig != null && Object.hasOwnProperty.call(message, "zoneDistributionConfig")) $root.google.cloud.memorystore.v1.ZoneDistributionConfig.encode(message.zoneDistributionConfig, writer.uint32(/* id 18, wireType 2 =*/146).fork()).ldelim(); if (message.deletionProtectionEnabled != null && Object.hasOwnProperty.call(message, "deletionProtectionEnabled")) writer.uint32(/* id 19, wireType 0 =*/152).bool(message.deletionProtectionEnabled); if (message.pscAutoConnections != null && message.pscAutoConnections.length) for (var i = 0; i < message.pscAutoConnections.length; ++i) $root.google.cloud.memorystore.v1.PscAutoConnection.encode(message.pscAutoConnections[i], writer.uint32(/* id 20, wireType 2 =*/162).fork()).ldelim(); if (message.endpoints != null && message.endpoints.length) for (var i = 0; i < message.endpoints.length; ++i) $root.google.cloud.memorystore.v1.Instance.InstanceEndpoint.encode(message.endpoints[i], writer.uint32(/* id 25, wireType 2 =*/202).fork()).ldelim(); if (message.mode != null && Object.hasOwnProperty.call(message, "mode")) writer.uint32(/* id 26, wireType 0 =*/208).int32(message.mode); return writer; }; /** * Encodes the specified Instance message, length delimited. Does not implicitly {@link google.cloud.memorystore.v1.Instance.verify|verify} messages. * @function encodeDelimited * @memberof google.cloud.memorystore.v1.Instance * @static * @param {google.cloud.memorystore.v1.IInstance} message Instance message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ Instance.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** * Decodes an Instance message from the specified reader or buffer. * @function decode * @memberof google.cloud.memorystore.v1.Instance * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand * @returns {google.cloud.memorystore.v1.Instance} Instance * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ Instance.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.memorystore.v1.Instance(), key, value; while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: { message.name = reader.string(); break; } case 2: { message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); break; } case 3: { message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); break; } case 4: { if (message.labels === $util.emptyObject) message.labels = {}; var end2 = reader.uint32() + reader.pos; key = ""; value = ""; while (reader.pos < end2) { var tag2 = reader.uint32(); switch (tag2 >>> 3) { case 1: key = reader.string(); break; case 2: value = reader.string(); break; default: reader.skipType(tag2 & 7); break; } } message.labels[key] = value; break; } case 5: { message.state = reader.int32(); break; } case 6: { message.stateInfo = $root.google.cloud.memorystore.v1.Instance.StateInfo.decode(reader, reader.uint32()); break; } case 7: { message.uid = reader.string(); break; } case 8: { message.replicaCount = reader.int32(); break; } case 9: { message.authorizationMode = reader.int32(); break; } case 10: { message.transitEncryptionMode = reader.int32(); break; } case 11: { message.shardCount = reader.int32(); break; } case 12: { if (!(message.discoveryEndpoints && message.discoveryEndpoints.length)) message.discoveryEndpoints = []; message.discoveryEndpoints.push($root.google.cloud.memorystore.v1.DiscoveryEndpoint.decode(reader, reader.uint32())); break; } case 13: { message.nodeType = reader.int32(); break; } case 14: { message.persistenceConfig = $root.google.cloud.memorystore.v1.PersistenceConfig.decode(reader, reader.uint32()); break; } case 15: { message.engineVersion = reader.string(); break; } case 16: { if (message.engineConfigs === $util.emptyObject) message.engineConfigs = {}; var end2 = reader.uint32() + reader.pos; key = ""; value = ""; while (reader.pos < end2) { var tag2 = reader.uint32(); switch (tag2 >>> 3) { case 1: key = reader.string(); break; case 2: value = reader.string(); break; default: reader.skipType(tag2 & 7); break; } } message.engineConfigs[key] = value; break; } case 17: { message.nodeConfig = $root.google.cloud.memorystore.v1.NodeConfig.decode(reader, reader.uint32()); break; } case 18: { message.zoneDistributionConfig = $root.google.cloud.memorystore.v1.ZoneDistributionConfig.decode(reader, reader.uint32()); break; } case 19: { message.deletionProtectionEnabled = reader.bool(); break; } case 20: { if (!(message.pscAutoConnections && message.pscAutoConnections.length)) message.pscAutoConnections = []; message.pscAutoConnections.push($root.google.cloud.memorystore.v1.PscAutoConnection.decode(reader, reader.uint32())); break; }