/// <summary>
 /// Adds a Job Schedule to the specified Account.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='cloudJobSchedule'>
 /// The Job Schedule to be added.
 /// </param>
 /// <param name='jobScheduleAddOptions'>
 /// Additional parameters for the operation
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <JobScheduleAddHeaders> AddAsync(this IJobScheduleOperations operations, JobScheduleAddParameter cloudJobSchedule, JobScheduleAddOptions jobScheduleAddOptions = default(JobScheduleAddOptions), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.AddWithHttpMessagesAsync(cloudJobSchedule, jobScheduleAddOptions, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Headers);
     }
 }
 /// <summary>
 /// Adds a Job Schedule to the specified Account.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='cloudJobSchedule'>
 /// The Job Schedule to be added.
 /// </param>
 /// <param name='jobScheduleAddOptions'>
 /// Additional parameters for the operation
 /// </param>
 public static JobScheduleAddHeaders Add(this IJobScheduleOperations operations, JobScheduleAddParameter cloudJobSchedule, JobScheduleAddOptions jobScheduleAddOptions = default(JobScheduleAddOptions))
 {
     return(operations.AddAsync(cloudJobSchedule, jobScheduleAddOptions).GetAwaiter().GetResult());
 }
Ejemplo n.º 3
0
 public virtual Response Add(JobScheduleAddParameter cloudJobSchedule, JobScheduleAddOptions jobScheduleAddOptions, CancellationToken cancellationToken = default)
 {
     return(RestClient.Add(cloudJobSchedule, jobScheduleAddOptions, cancellationToken).GetRawResponse());
 }
Ejemplo n.º 4
0
 public virtual async Task <Response> AddAsync(JobScheduleAddParameter cloudJobSchedule, JobScheduleAddOptions jobScheduleAddOptions, CancellationToken cancellationToken = default)
 {
     return((await RestClient.AddAsync(cloudJobSchedule, jobScheduleAddOptions, cancellationToken).ConfigureAwait(false)).GetRawResponse());
 }
        public void NewBatchJobScheduleParametersGetPassedToRequestTest()
        {
            BatchAccountContext context = BatchTestHelpers.CreateBatchContextWithKeys();

            cmdlet.BatchContext = context;

            cmdlet.Id          = "testJobSchedule";
            cmdlet.DisplayName = "display name";
            Models.PSJobSpecification jobSpec = new Models.PSJobSpecification()
            {
                DisplayName = "job display name",
                CommonEnvironmentSettings = new List <Models.PSEnvironmentSetting>()
                {
                    new Models.PSEnvironmentSetting("common1", "val1"),
                    new Models.PSEnvironmentSetting("common2", "val2")
                },
                JobManagerTask     = new Models.PSJobManagerTask("job manager", "cmd /c echo job manager"),
                JobPreparationTask = new Models.PSJobPreparationTask("cmd /c echo job prep"),
                JobReleaseTask     = new Models.PSJobReleaseTask("cmd /c echo job release"),
                PoolInformation    = new Models.PSPoolInformation()
                {
                    PoolId = "myPool"
                }
            };
            cmdlet.JobSpecification = jobSpec;
            Models.PSSchedule schedule = new Models.PSSchedule()
            {
                DoNotRunAfter      = DateTime.Now.AddYears(1),
                DoNotRunUntil      = DateTime.Now.AddDays(1),
                RecurrenceInterval = TimeSpan.FromDays(1),
                StartWindow        = TimeSpan.FromHours(1)
            };
            cmdlet.Schedule = schedule;
            cmdlet.Metadata = new Dictionary <string, string>();
            cmdlet.Metadata.Add("meta1", "value1");
            cmdlet.Metadata.Add("meta2", "value2");

            JobScheduleAddParameter requestParameters = null;

            // Store the request parameters
            RequestInterceptor interceptor = BatchTestHelpers.CreateFakeServiceResponseInterceptor <
                JobScheduleAddParameter,
                JobScheduleAddOptions,
                AzureOperationHeaderResponse <JobScheduleAddHeaders> >(requestAction: (r) =>
            {
                requestParameters = r.Parameters;
            });

            cmdlet.AdditionalBehaviors = new List <BatchClientBehavior>()
            {
                interceptor
            };
            cmdlet.ExecuteCmdlet();

            // Verify the request parameters match the cmdlet parameters
            Assert.Equal(cmdlet.DisplayName, requestParameters.DisplayName);
            Assert.Equal(jobSpec.CommonEnvironmentSettings.Count, requestParameters.JobSpecification.CommonEnvironmentSettings.Count);
            Assert.Equal(jobSpec.CommonEnvironmentSettings[0].Name, requestParameters.JobSpecification.CommonEnvironmentSettings[0].Name);
            Assert.Equal(jobSpec.CommonEnvironmentSettings[0].Value, requestParameters.JobSpecification.CommonEnvironmentSettings[0].Value);
            Assert.Equal(jobSpec.CommonEnvironmentSettings[1].Name, requestParameters.JobSpecification.CommonEnvironmentSettings[1].Name);
            Assert.Equal(jobSpec.CommonEnvironmentSettings[1].Value, requestParameters.JobSpecification.CommonEnvironmentSettings[1].Value);
            Assert.Equal(jobSpec.JobManagerTask.Id, requestParameters.JobSpecification.JobManagerTask.Id);
            Assert.Equal(jobSpec.JobPreparationTask.CommandLine, requestParameters.JobSpecification.JobPreparationTask.CommandLine);
            Assert.Equal(jobSpec.JobReleaseTask.CommandLine, requestParameters.JobSpecification.JobReleaseTask.CommandLine);
            Assert.Equal(jobSpec.PoolInformation.PoolId, requestParameters.JobSpecification.PoolInfo.PoolId);
            Assert.Equal(schedule.DoNotRunAfter, requestParameters.Schedule.DoNotRunAfter);
            Assert.Equal(schedule.DoNotRunUntil, requestParameters.Schedule.DoNotRunUntil);
            Assert.Equal(schedule.RecurrenceInterval, requestParameters.Schedule.RecurrenceInterval);
            Assert.Equal(schedule.StartWindow, requestParameters.Schedule.StartWindow);
            Assert.Equal(cmdlet.Metadata.Count, requestParameters.Metadata.Count);
            Assert.Equal(cmdlet.Metadata[requestParameters.Metadata[0].Name], requestParameters.Metadata[0].Value);
            Assert.Equal(cmdlet.Metadata[requestParameters.Metadata[1].Name], requestParameters.Metadata[1].Value);
        }
 /// <summary>
 /// Adds a job schedule to the specified account.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='cloudJobSchedule'>
 /// The job schedule to be added.
 /// </param>
 /// <param name='jobScheduleAddOptions'>
 /// Additional parameters for the operation
 /// </param>
 public static JobScheduleAddHeaders Add(this IJobScheduleOperations operations, JobScheduleAddParameter cloudJobSchedule, JobScheduleAddOptions jobScheduleAddOptions = default(JobScheduleAddOptions))
 {
     return(System.Threading.Tasks.Task.Factory.StartNew(s => ((IJobScheduleOperations)s).AddAsync(cloudJobSchedule, jobScheduleAddOptions), operations, System.Threading.CancellationToken.None, System.Threading.Tasks.TaskCreationOptions.None, System.Threading.Tasks.TaskScheduler.Default).Unwrap().GetAwaiter().GetResult());
 }