public object Execute(ExecutorContext context) { var cmdletContext = context as CmdletContext; // create request var request = new Amazon.ElastiCache.Model.ModifyCacheClusterRequest(); if (cmdletContext.ApplyImmediately != null) { request.ApplyImmediately = cmdletContext.ApplyImmediately.Value; } if (cmdletContext.AuthToken != null) { request.AuthToken = cmdletContext.AuthToken; } if (cmdletContext.AuthTokenUpdateStrategy != null) { request.AuthTokenUpdateStrategy = cmdletContext.AuthTokenUpdateStrategy; } if (cmdletContext.AutoMinorVersionUpgrade != null) { request.AutoMinorVersionUpgrade = cmdletContext.AutoMinorVersionUpgrade.Value; } if (cmdletContext.AZMode != null) { request.AZMode = cmdletContext.AZMode; } if (cmdletContext.CacheClusterId != null) { request.CacheClusterId = cmdletContext.CacheClusterId; } if (cmdletContext.CacheNodeIdsToRemove != null) { request.CacheNodeIdsToRemove = cmdletContext.CacheNodeIdsToRemove; } if (cmdletContext.CacheNodeType != null) { request.CacheNodeType = cmdletContext.CacheNodeType; } if (cmdletContext.CacheParameterGroupName != null) { request.CacheParameterGroupName = cmdletContext.CacheParameterGroupName; } if (cmdletContext.CacheSecurityGroupName != null) { request.CacheSecurityGroupNames = cmdletContext.CacheSecurityGroupName; } if (cmdletContext.EngineVersion != null) { request.EngineVersion = cmdletContext.EngineVersion; } if (cmdletContext.LogDeliveryConfiguration != null) { request.LogDeliveryConfigurations = cmdletContext.LogDeliveryConfiguration; } if (cmdletContext.NewAvailabilityZone != null) { request.NewAvailabilityZones = cmdletContext.NewAvailabilityZone; } if (cmdletContext.NotificationTopicArn != null) { request.NotificationTopicArn = cmdletContext.NotificationTopicArn; } if (cmdletContext.NotificationTopicStatus != null) { request.NotificationTopicStatus = cmdletContext.NotificationTopicStatus; } if (cmdletContext.NumCacheNode != null) { request.NumCacheNodes = cmdletContext.NumCacheNode.Value; } if (cmdletContext.PreferredMaintenanceWindow != null) { request.PreferredMaintenanceWindow = cmdletContext.PreferredMaintenanceWindow; } if (cmdletContext.SecurityGroupId != null) { request.SecurityGroupIds = cmdletContext.SecurityGroupId; } if (cmdletContext.SnapshotRetentionLimit != null) { request.SnapshotRetentionLimit = cmdletContext.SnapshotRetentionLimit.Value; } if (cmdletContext.SnapshotWindow != null) { request.SnapshotWindow = cmdletContext.SnapshotWindow; } CmdletOutput output; // issue call var client = Client ?? CreateClient(_CurrentCredentials, _RegionEndpoint); try { var response = CallAWSServiceOperation(client, request); object pipelineOutput = null; pipelineOutput = cmdletContext.Select(response, this); output = new CmdletOutput { PipelineOutput = pipelineOutput, ServiceResponse = response }; } catch (Exception e) { output = new CmdletOutput { ErrorResponse = e }; } return(output); }
private Amazon.ElastiCache.Model.ModifyCacheClusterResponse CallAWSServiceOperation(IAmazonElastiCache client, Amazon.ElastiCache.Model.ModifyCacheClusterRequest request) { Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "Amazon ElastiCache", "ModifyCacheCluster"); try { #if DESKTOP return(client.ModifyCacheCluster(request)); #elif CORECLR return(client.ModifyCacheClusterAsync(request).GetAwaiter().GetResult()); #else #error "Unknown build edition" #endif } catch (AmazonServiceException exc) { var webException = exc.InnerException as System.Net.WebException; if (webException != null) { throw new Exception(Utils.Common.FormatNameResolutionFailureMessage(client.Config, webException.Message), webException); } throw; } }
/// <summary> /// The <i>ModifyCacheCluster</i> operation modifies the settings for a cache cluster. /// You can use this operation to change one or more cluster configuration parameters /// by specifying the parameters and the new values. /// </summary> /// <param name="request">Container for the necessary parameters to execute the ModifyCacheCluster service method.</param> /// /// <returns>The response from the ModifyCacheCluster service method, as returned by ElastiCache.</returns> /// <exception cref="Amazon.ElastiCache.Model.CacheClusterNotFoundException"> /// The requested cache cluster ID does not refer to an existing cache cluster. /// </exception> /// <exception cref="Amazon.ElastiCache.Model.CacheParameterGroupNotFoundException"> /// The requested cache parameter group name does not refer to an existing cache parameter /// group. /// </exception> /// <exception cref="Amazon.ElastiCache.Model.CacheSecurityGroupNotFoundException"> /// The requested cache security group name does not refer to an existing cache security /// group. /// </exception> /// <exception cref="Amazon.ElastiCache.Model.InsufficientCacheClusterCapacityException"> /// The requested cache node type is not available in the specified Availability Zone. /// </exception> /// <exception cref="Amazon.ElastiCache.Model.InvalidCacheClusterStateException"> /// The requested cache cluster is not in the <i>available</i> state. /// </exception> /// <exception cref="Amazon.ElastiCache.Model.InvalidCacheSecurityGroupStateException"> /// The current state of the cache security group does not allow deletion. /// </exception> /// <exception cref="Amazon.ElastiCache.Model.InvalidParameterCombinationException"> /// Two or more incompatible parameters were specified. /// </exception> /// <exception cref="Amazon.ElastiCache.Model.InvalidParameterValueException"> /// The value for a parameter is invalid. /// </exception> /// <exception cref="Amazon.ElastiCache.Model.InvalidVPCNetworkStateException"> /// The VPC network is in an invalid state. /// </exception> /// <exception cref="Amazon.ElastiCache.Model.NodeQuotaForClusterExceededException"> /// The request cannot be processed because it would exceed the allowed number of cache /// nodes in a single cache cluster. /// </exception> /// <exception cref="Amazon.ElastiCache.Model.NodeQuotaForCustomerExceededException"> /// The request cannot be processed because it would exceed the allowed number of cache /// nodes per customer. /// </exception> public ModifyCacheClusterResponse ModifyCacheCluster(ModifyCacheClusterRequest request) { var marshaller = new ModifyCacheClusterRequestMarshaller(); var unmarshaller = ModifyCacheClusterResponseUnmarshaller.Instance; return Invoke<ModifyCacheClusterRequest,ModifyCacheClusterResponse>(request, marshaller, unmarshaller); }
/// <summary> /// Initiates the asynchronous execution of the ModifyCacheCluster operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the ModifyCacheCluster operation.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns>The task object representing the asynchronous operation.</returns> public Task<ModifyCacheClusterResponse> ModifyCacheClusterAsync(ModifyCacheClusterRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new ModifyCacheClusterRequestMarshaller(); var unmarshaller = ModifyCacheClusterResponseUnmarshaller.Instance; return InvokeAsync<ModifyCacheClusterRequest,ModifyCacheClusterResponse>(request, marshaller, unmarshaller, cancellationToken); }
/// <summary> /// Initiates the asynchronous execution of the ModifyCacheCluster operation. /// <seealso cref="Amazon.ElastiCache.IAmazonElastiCache.ModifyCacheCluster"/> /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the ModifyCacheCluster operation.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns>The task object representing the asynchronous operation.</returns> public Task<ModifyCacheClusterResponse> ModifyCacheClusterAsync(ModifyCacheClusterRequest request, CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new ModifyCacheClusterRequestMarshaller(); var unmarshaller = ModifyCacheClusterResponseUnmarshaller.GetInstance(); return Invoke<IRequest, ModifyCacheClusterRequest, ModifyCacheClusterResponse>(request, marshaller, unmarshaller, signer, cancellationToken); }
/// <summary> /// Initiates the asynchronous execution of the ModifyCacheCluster operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the ModifyCacheCluster operation on AmazonElastiCacheClient.</param> /// <param name="callback">An AsyncCallback delegate that is invoked when the operation completes.</param> /// <param name="state">A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property.</param> /// /// <returns>An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndModifyCacheCluster /// operation.</returns> public IAsyncResult BeginModifyCacheCluster(ModifyCacheClusterRequest request, AsyncCallback callback, object state) { var marshaller = new ModifyCacheClusterRequestMarshaller(); var unmarshaller = ModifyCacheClusterResponseUnmarshaller.Instance; return BeginInvoke<ModifyCacheClusterRequest>(request, marshaller, unmarshaller, callback, state); }
IAsyncResult invokeModifyCacheCluster(ModifyCacheClusterRequest modifyCacheClusterRequest, AsyncCallback callback, object state, bool synchronized) { IRequest irequest = new ModifyCacheClusterRequestMarshaller().Marshall(modifyCacheClusterRequest); var unmarshaller = ModifyCacheClusterResponseUnmarshaller.GetInstance(); AsyncResult result = new AsyncResult(irequest, callback, state, synchronized, signer, unmarshaller); Invoke(result); return result; }
/// <summary> /// <para>The <i>ModifyCacheCluster</i> operation modifies the settings for a cache cluster. You can use this operation to change one or more /// cluster configuration parameters by specifying the parameters and the new values.</para> /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the ModifyCacheCluster service method on /// AmazonElastiCache.</param> /// /// <returns>The response from the ModifyCacheCluster service method, as returned by AmazonElastiCache.</returns> /// /// <exception cref="T:Amazon.ElastiCache.Model.NodeQuotaForCustomerExceededException" /> /// <exception cref="T:Amazon.ElastiCache.Model.NodeQuotaForClusterExceededException" /> /// <exception cref="T:Amazon.ElastiCache.Model.InvalidParameterValueException" /> /// <exception cref="T:Amazon.ElastiCache.Model.InvalidCacheSecurityGroupStateException" /> /// <exception cref="T:Amazon.ElastiCache.Model.InvalidVPCNetworkStateException" /> /// <exception cref="T:Amazon.ElastiCache.Model.CacheClusterNotFoundException" /> /// <exception cref="T:Amazon.ElastiCache.Model.InvalidParameterCombinationException" /> /// <exception cref="T:Amazon.ElastiCache.Model.CacheParameterGroupNotFoundException" /> /// <exception cref="T:Amazon.ElastiCache.Model.InvalidCacheClusterStateException" /> /// <exception cref="T:Amazon.ElastiCache.Model.CacheSecurityGroupNotFoundException" /> public ModifyCacheClusterResponse ModifyCacheCluster(ModifyCacheClusterRequest request) { var task = ModifyCacheClusterAsync(request); try { return task.Result; } catch(AggregateException e) { ExceptionDispatchInfo.Capture(e.InnerException).Throw(); return null; } }
/// <summary> /// Initiates the asynchronous execution of the ModifyCacheCluster operation. /// <seealso cref="Amazon.ElastiCache.IAmazonElastiCache.ModifyCacheCluster"/> /// </summary> /// /// <param name="modifyCacheClusterRequest">Container for the necessary parameters to execute the ModifyCacheCluster operation on /// AmazonElastiCache.</param> /// <param name="callback">An AsyncCallback delegate that is invoked when the operation completes.</param> /// <param name="state">A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property.</param> /// /// <returns>An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking /// EndModifyCacheCluster operation.</returns> public IAsyncResult BeginModifyCacheCluster(ModifyCacheClusterRequest modifyCacheClusterRequest, AsyncCallback callback, object state) { return invokeModifyCacheCluster(modifyCacheClusterRequest, callback, state, false); }
/// <summary> /// <para>The <i>ModifyCacheCluster</i> operation modifies the settings for a cache cluster. You can use this operation to change one or more /// cluster configuration parameters by specifying the parameters and the new values.</para> /// </summary> /// /// <param name="modifyCacheClusterRequest">Container for the necessary parameters to execute the ModifyCacheCluster service method on /// AmazonElastiCache.</param> /// /// <returns>The response from the ModifyCacheCluster service method, as returned by AmazonElastiCache.</returns> /// /// <exception cref="NodeQuotaForCustomerExceededException"/> /// <exception cref="NodeQuotaForClusterExceededException"/> /// <exception cref="InvalidParameterValueException"/> /// <exception cref="InvalidCacheSecurityGroupStateException"/> /// <exception cref="InvalidVPCNetworkStateException"/> /// <exception cref="CacheClusterNotFoundException"/> /// <exception cref="InvalidParameterCombinationException"/> /// <exception cref="CacheParameterGroupNotFoundException"/> /// <exception cref="InvalidCacheClusterStateException"/> /// <exception cref="CacheSecurityGroupNotFoundException"/> public ModifyCacheClusterResponse ModifyCacheCluster(ModifyCacheClusterRequest modifyCacheClusterRequest) { IAsyncResult asyncResult = invokeModifyCacheCluster(modifyCacheClusterRequest, null, null, true); return EndModifyCacheCluster(asyncResult); }
/// <summary> /// <para>The <i>ModifyCacheCluster</i> operation modifies the settings for a cache cluster. You can use this operation to change one or more /// cluster configuration parameters by specifying the parameters and the new values.</para> /// </summary> /// /// <param name="modifyCacheClusterRequest">Container for the necessary parameters to execute the ModifyCacheCluster service method on /// AmazonElastiCache.</param> /// /// <returns>The response from the ModifyCacheCluster service method, as returned by AmazonElastiCache.</returns> /// /// <exception cref="T:Amazon.ElastiCache.Model.NodeQuotaForCustomerExceededException" /> /// <exception cref="T:Amazon.ElastiCache.Model.NodeQuotaForClusterExceededException" /> /// <exception cref="T:Amazon.ElastiCache.Model.InvalidParameterValueException" /> /// <exception cref="T:Amazon.ElastiCache.Model.InvalidCacheSecurityGroupStateException" /> /// <exception cref="T:Amazon.ElastiCache.Model.InvalidVPCNetworkStateException" /> /// <exception cref="T:Amazon.ElastiCache.Model.CacheClusterNotFoundException" /> /// <exception cref="T:Amazon.ElastiCache.Model.InvalidParameterCombinationException" /> /// <exception cref="T:Amazon.ElastiCache.Model.CacheParameterGroupNotFoundException" /> /// <exception cref="T:Amazon.ElastiCache.Model.InvalidCacheClusterStateException" /> /// <exception cref="T:Amazon.ElastiCache.Model.CacheSecurityGroupNotFoundException" /> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> public async Task<ModifyCacheClusterResponse> ModifyCacheClusterAsync(ModifyCacheClusterRequest modifyCacheClusterRequest, CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new ModifyCacheClusterRequestMarshaller(); var unmarshaller = ModifyCacheClusterResponseUnmarshaller.GetInstance(); var response = await Invoke<IRequest, ModifyCacheClusterRequest, ModifyCacheClusterResponse>(modifyCacheClusterRequest, marshaller, unmarshaller, signer, cancellationToken) .ConfigureAwait(continueOnCapturedContext: false); return response; }
internal ModifyCacheClusterResponse ModifyCacheCluster(ModifyCacheClusterRequest request) { var task = ModifyCacheClusterAsync(request); try { return task.Result; } catch(AggregateException e) { throw e.InnerException; } }
/// <summary> /// <para> Modifies the Cache Cluster settings. You can change one or more Cache Cluster configuration parameters by specifying the parameters /// and the new values in the request. </para> /// </summary> /// /// <param name="modifyCacheClusterRequest">Container for the necessary parameters to execute the ModifyCacheCluster service method on /// AmazonElastiCache.</param> /// /// <returns>The response from the ModifyCacheCluster service method, as returned by AmazonElastiCache.</returns> /// /// <exception cref="NodeQuotaForCustomerExceededException"/> /// <exception cref="NodeQuotaForClusterExceededException"/> /// <exception cref="InvalidParameterValueException"/> /// <exception cref="InvalidCacheSecurityGroupStateException"/> /// <exception cref="CacheClusterNotFoundException"/> /// <exception cref="InvalidParameterCombinationException"/> /// <exception cref="CacheParameterGroupNotFoundException"/> /// <exception cref="InvalidCacheClusterStateException"/> /// <exception cref="CacheSecurityGroupNotFoundException"/> public ModifyCacheClusterResponse ModifyCacheCluster(ModifyCacheClusterRequest modifyCacheClusterRequest) { IRequest<ModifyCacheClusterRequest> request = new ModifyCacheClusterRequestMarshaller().Marshall(modifyCacheClusterRequest); ModifyCacheClusterResponse response = Invoke<ModifyCacheClusterRequest, ModifyCacheClusterResponse> (request, this.signer, ModifyCacheClusterResponseUnmarshaller.GetInstance()); return response; }