com.azure.resourcemanager.automation.models.Schedule Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-resourcemanager-automation Show documentation
Show all versions of azure-resourcemanager-automation Show documentation
This package contains Microsoft Azure SDK for Automation Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Automation Client. Package tag package-2022-02-22.
The newest version!
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.
package com.azure.resourcemanager.automation.models;
import com.azure.core.util.Context;
import com.azure.resourcemanager.automation.fluent.models.ScheduleInner;
import java.time.OffsetDateTime;
/**
* An immutable client-side representation of Schedule.
*/
public interface Schedule {
/**
* Gets the id property: Fully qualified resource Id for the resource.
*
* @return the id value.
*/
String id();
/**
* Gets the name property: The name of the resource.
*
* @return the name value.
*/
String name();
/**
* Gets the type property: The type of the resource.
*
* @return the type value.
*/
String type();
/**
* Gets the startTime property: Gets or sets the start time of the schedule.
*
* @return the startTime value.
*/
OffsetDateTime startTime();
/**
* Gets the startTimeOffsetMinutes property: Gets the start time's offset in minutes.
*
* @return the startTimeOffsetMinutes value.
*/
Double startTimeOffsetMinutes();
/**
* Gets the expiryTime property: Gets or sets the end time of the schedule.
*
* @return the expiryTime value.
*/
OffsetDateTime expiryTime();
/**
* Gets the expiryTimeOffsetMinutes property: Gets or sets the expiry time's offset in minutes.
*
* @return the expiryTimeOffsetMinutes value.
*/
Double expiryTimeOffsetMinutes();
/**
* Gets the isEnabled property: Gets or sets a value indicating whether this schedule is enabled.
*
* @return the isEnabled value.
*/
Boolean isEnabled();
/**
* Gets the nextRun property: Gets or sets the next run time of the schedule.
*
* @return the nextRun value.
*/
OffsetDateTime nextRun();
/**
* Gets the nextRunOffsetMinutes property: Gets or sets the next run time's offset in minutes.
*
* @return the nextRunOffsetMinutes value.
*/
Double nextRunOffsetMinutes();
/**
* Gets the interval property: Gets or sets the interval of the schedule.
*
* @return the interval value.
*/
Object interval();
/**
* Gets the frequency property: Gets or sets the frequency of the schedule.
*
* @return the frequency value.
*/
ScheduleFrequency frequency();
/**
* Gets the timeZone property: Gets or sets the time zone of the schedule.
*
* @return the timeZone value.
*/
String timeZone();
/**
* Gets the advancedSchedule property: Gets or sets the advanced schedule.
*
* @return the advancedSchedule value.
*/
AdvancedSchedule advancedSchedule();
/**
* Gets the creationTime property: Gets or sets the creation time.
*
* @return the creationTime value.
*/
OffsetDateTime creationTime();
/**
* Gets the lastModifiedTime property: Gets or sets the last modified time.
*
* @return the lastModifiedTime value.
*/
OffsetDateTime lastModifiedTime();
/**
* Gets the description property: Gets or sets the description.
*
* @return the description value.
*/
String description();
/**
* Gets the name of the resource group.
*
* @return the name of the resource group.
*/
String resourceGroupName();
/**
* Gets the inner com.azure.resourcemanager.automation.fluent.models.ScheduleInner object.
*
* @return the inner object.
*/
ScheduleInner innerModel();
/**
* The entirety of the Schedule definition.
*/
interface Definition extends DefinitionStages.Blank, DefinitionStages.WithParentResource, DefinitionStages.WithName,
DefinitionStages.WithStartTime, DefinitionStages.WithFrequency, DefinitionStages.WithCreate {
}
/**
* The Schedule definition stages.
*/
interface DefinitionStages {
/**
* The first stage of the Schedule definition.
*/
interface Blank extends WithParentResource {
}
/**
* The stage of the Schedule definition allowing to specify parent resource.
*/
interface WithParentResource {
/**
* Specifies resourceGroupName, automationAccountName.
*
* @param resourceGroupName Name of an Azure Resource group.
* @param automationAccountName The name of the automation account.
* @return the next definition stage.
*/
WithName withExistingAutomationAccount(String resourceGroupName, String automationAccountName);
}
/**
* The stage of the Schedule definition allowing to specify name.
*/
interface WithName {
/**
* Specifies the name property: Gets or sets the name of the Schedule..
*
* @param name Gets or sets the name of the Schedule.
* @return the next definition stage.
*/
WithStartTime withName(String name);
}
/**
* The stage of the Schedule definition allowing to specify startTime.
*/
interface WithStartTime {
/**
* Specifies the startTime property: Gets or sets the start time of the schedule..
*
* @param startTime Gets or sets the start time of the schedule.
* @return the next definition stage.
*/
WithFrequency withStartTime(OffsetDateTime startTime);
}
/**
* The stage of the Schedule definition allowing to specify frequency.
*/
interface WithFrequency {
/**
* Specifies the frequency property: Gets or sets the frequency of the schedule..
*
* @param frequency Gets or sets the frequency of the schedule.
* @return the next definition stage.
*/
WithCreate withFrequency(ScheduleFrequency frequency);
}
/**
* The stage of the Schedule definition which contains all the minimum required properties for the resource to
* be created, but also allows for any other optional properties to be specified.
*/
interface WithCreate extends DefinitionStages.WithDescription, DefinitionStages.WithExpiryTime,
DefinitionStages.WithInterval, DefinitionStages.WithTimeZone, DefinitionStages.WithAdvancedSchedule {
/**
* Executes the create request.
*
* @return the created resource.
*/
Schedule create();
/**
* Executes the create request.
*
* @param context The context to associate with this operation.
* @return the created resource.
*/
Schedule create(Context context);
}
/**
* The stage of the Schedule definition allowing to specify description.
*/
interface WithDescription {
/**
* Specifies the description property: Gets or sets the description of the schedule..
*
* @param description Gets or sets the description of the schedule.
* @return the next definition stage.
*/
WithCreate withDescription(String description);
}
/**
* The stage of the Schedule definition allowing to specify expiryTime.
*/
interface WithExpiryTime {
/**
* Specifies the expiryTime property: Gets or sets the end time of the schedule..
*
* @param expiryTime Gets or sets the end time of the schedule.
* @return the next definition stage.
*/
WithCreate withExpiryTime(OffsetDateTime expiryTime);
}
/**
* The stage of the Schedule definition allowing to specify interval.
*/
interface WithInterval {
/**
* Specifies the interval property: Gets or sets the interval of the schedule..
*
* @param interval Gets or sets the interval of the schedule.
* @return the next definition stage.
*/
WithCreate withInterval(Object interval);
}
/**
* The stage of the Schedule definition allowing to specify timeZone.
*/
interface WithTimeZone {
/**
* Specifies the timeZone property: Gets or sets the time zone of the schedule..
*
* @param timeZone Gets or sets the time zone of the schedule.
* @return the next definition stage.
*/
WithCreate withTimeZone(String timeZone);
}
/**
* The stage of the Schedule definition allowing to specify advancedSchedule.
*/
interface WithAdvancedSchedule {
/**
* Specifies the advancedSchedule property: Gets or sets the AdvancedSchedule..
*
* @param advancedSchedule Gets or sets the AdvancedSchedule.
* @return the next definition stage.
*/
WithCreate withAdvancedSchedule(AdvancedSchedule advancedSchedule);
}
}
/**
* Begins update for the Schedule resource.
*
* @return the stage of resource update.
*/
Schedule.Update update();
/**
* The template for Schedule update.
*/
interface Update extends UpdateStages.WithName, UpdateStages.WithDescription, UpdateStages.WithIsEnabled {
/**
* Executes the update request.
*
* @return the updated resource.
*/
Schedule apply();
/**
* Executes the update request.
*
* @param context The context to associate with this operation.
* @return the updated resource.
*/
Schedule apply(Context context);
}
/**
* The Schedule update stages.
*/
interface UpdateStages {
/**
* The stage of the Schedule update allowing to specify name.
*/
interface WithName {
/**
* Specifies the name property: Gets or sets the name of the Schedule..
*
* @param name Gets or sets the name of the Schedule.
* @return the next definition stage.
*/
Update withName(String name);
}
/**
* The stage of the Schedule update allowing to specify description.
*/
interface WithDescription {
/**
* Specifies the description property: Gets or sets the description of the schedule..
*
* @param description Gets or sets the description of the schedule.
* @return the next definition stage.
*/
Update withDescription(String description);
}
/**
* The stage of the Schedule update allowing to specify isEnabled.
*/
interface WithIsEnabled {
/**
* Specifies the isEnabled property: Gets or sets a value indicating whether this schedule is enabled..
*
* @param isEnabled Gets or sets a value indicating whether this schedule is enabled.
* @return the next definition stage.
*/
Update withIsEnabled(Boolean isEnabled);
}
}
/**
* Refreshes the resource to sync with Azure.
*
* @return the refreshed resource.
*/
Schedule refresh();
/**
* Refreshes the resource to sync with Azure.
*
* @param context The context to associate with this operation.
* @return the refreshed resource.
*/
Schedule refresh(Context context);
}