/// <summary>
        /// <para> Suspends Auto Scaling processes for an Auto Scaling group. To suspend specific process types, specify them by name with the
        /// <c>ScalingProcesses.member.N</c> parameter. To suspend all process types, omit the <c>ScalingProcesses.member.N</c> parameter. </para>
        /// <para><b>IMPORTANT:</b> Suspending either of the two primary process types, Launch or Terminate, can prevent other process types from
        /// functioning properly. For more information about processes and their dependencies, see ProcessType. </para> <para> To resume processes that
        /// have been suspended, use ResumeProcesses. </para>
        /// </summary>
        ///
        /// <param name="suspendProcessesRequest">Container for the necessary parameters to execute the SuspendProcesses service method on
        ///           AmazonAutoScaling.</param>
        ///
        public SuspendProcessesResponse SuspendProcesses(SuspendProcessesRequest suspendProcessesRequest)
        {
            IRequest <SuspendProcessesRequest> request  = new SuspendProcessesRequestMarshaller().Marshall(suspendProcessesRequest);
            SuspendProcessesResponse           response = Invoke <SuspendProcessesRequest, SuspendProcessesResponse> (request, this.signer, SuspendProcessesResponseUnmarshaller.GetInstance());

            return(response);
        }
 public override SuspendProcessesResponse GetResponse(UnmarshallerContext unmarshallerContext)
 {
     return(SuspendProcessesResponseUnmarshaller.Unmarshall(unmarshallerContext));
 }