public static void CaptureRole(this IServiceManagement proxy, string subscriptionId, string serviceName, string deploymentName, string roleInstanceName, string targetImageName, string targetImageLabel, PostCaptureAction postCaptureAction, ProvisioningConfigurationSet provisioningConfiguration)
        {
            CaptureRoleOperation captureRoleOperation = new CaptureRoleOperation();

            captureRoleOperation.PostCaptureAction         = postCaptureAction.ToString();
            captureRoleOperation.ProvisioningConfiguration = provisioningConfiguration;
            captureRoleOperation.TargetImageName           = targetImageName;
            captureRoleOperation.TargetImageLabel          = targetImageLabel;
            proxy.EndExecuteRoleOperation(proxy.BeginExecuteRoleOperation(subscriptionId, serviceName, deploymentName, roleInstanceName, captureRoleOperation, null, null));
        }
 public static void RestartRole(this IServiceManagement proxy,
                                string subscriptionId,
                                string serviceName,
                                string deploymentName,
                                string roleInstanceName)
 {
     proxy.EndExecuteRoleOperation(proxy.BeginExecuteRoleOperation(
                                       subscriptionId,
                                       serviceName,
                                       deploymentName,
                                       roleInstanceName,
                                       new RestartRoleOperation(),
                                       null,
                                       null));
 }
 public static void ShutdownRole(this IServiceManagement proxy,
                                 string subscriptionId,
                                 string serviceName,
                                 string deploymentName,
                                 string roleInstanceName,
                                 PostShutdownAction?shutdownAction)
 {
     proxy.EndExecuteRoleOperation(proxy.BeginExecuteRoleOperation(
                                       subscriptionId,
                                       serviceName,
                                       deploymentName,
                                       roleInstanceName,
                                       new ShutdownRoleOperation {
         PostShutdownAction = shutdownAction
     },
                                       null,
                                       null));
 }