![JAR search and dependency download from the Maven repository](/logo.png)
com.oracle.bmc.dataintegration.model.Schedule Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of oci-java-sdk-shaded-full Show documentation
Show all versions of oci-java-sdk-shaded-full Show documentation
This project contains the SDK distribution used for Oracle Cloud Infrastructure, and all the dependencies that can be shaded. It also has Maven dependencies that cannot be shaded. Therefore, use this module to depend on the shaded distribution via Maven -- it will shade everything that can be shaded, and automatically pull in the other dependencies.
/**
* Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
* This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
*/
package com.oracle.bmc.dataintegration.model;
/**
* The schedule object
* Note: Objects should always be created or deserialized using the {@link Builder}. This model
* distinguishes fields that are {@code null} because they are unset from fields that are explicitly
* set to {@code null}. This is done in the setter methods of the {@link Builder}, which maintain a
* set of all explicitly set fields called {@link Builder#__explicitlySet__}. The {@link
* #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set
* fields into account. The constructor, on the other hand, does not take the explicitly set fields
* into account (since the constructor cannot distinguish explicit {@code null} from unset {@code
* null}).
*/
@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20200430")
@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = Schedule.Builder.class)
@com.fasterxml.jackson.annotation.JsonFilter(
com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME)
public final class Schedule extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel {
@Deprecated
@java.beans.ConstructorProperties({
"key",
"modelVersion",
"modelType",
"parentRef",
"name",
"description",
"objectVersion",
"objectStatus",
"identifier",
"frequencyDetails",
"timezone",
"isDaylightAdjustmentEnabled",
"metadata"
})
public Schedule(
String key,
String modelVersion,
String modelType,
ParentReference parentRef,
String name,
String description,
Integer objectVersion,
Integer objectStatus,
String identifier,
AbstractFrequencyDetails frequencyDetails,
String timezone,
Boolean isDaylightAdjustmentEnabled,
ObjectMetadata metadata) {
super();
this.key = key;
this.modelVersion = modelVersion;
this.modelType = modelType;
this.parentRef = parentRef;
this.name = name;
this.description = description;
this.objectVersion = objectVersion;
this.objectStatus = objectStatus;
this.identifier = identifier;
this.frequencyDetails = frequencyDetails;
this.timezone = timezone;
this.isDaylightAdjustmentEnabled = isDaylightAdjustmentEnabled;
this.metadata = metadata;
}
@com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "")
public static class Builder {
/**
* Generated key that can be used in API calls to identify schedule. On scenarios where
* reference to the schedule is needed, a value can be passed in create.
*/
@com.fasterxml.jackson.annotation.JsonProperty("key")
private String key;
/**
* Generated key that can be used in API calls to identify schedule. On scenarios where
* reference to the schedule is needed, a value can be passed in create.
*
* @param key the value to set
* @return this builder
*/
public Builder key(String key) {
this.key = key;
this.__explicitlySet__.add("key");
return this;
}
/**
* This is a version number that is used by the service to upgrade objects if needed through
* releases of the service.
*/
@com.fasterxml.jackson.annotation.JsonProperty("modelVersion")
private String modelVersion;
/**
* This is a version number that is used by the service to upgrade objects if needed through
* releases of the service.
*
* @param modelVersion the value to set
* @return this builder
*/
public Builder modelVersion(String modelVersion) {
this.modelVersion = modelVersion;
this.__explicitlySet__.add("modelVersion");
return this;
}
/** The type of the object. */
@com.fasterxml.jackson.annotation.JsonProperty("modelType")
private String modelType;
/**
* The type of the object.
*
* @param modelType the value to set
* @return this builder
*/
public Builder modelType(String modelType) {
this.modelType = modelType;
this.__explicitlySet__.add("modelType");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("parentRef")
private ParentReference parentRef;
public Builder parentRef(ParentReference parentRef) {
this.parentRef = parentRef;
this.__explicitlySet__.add("parentRef");
return this;
}
/**
* Free form text without any restriction on permitted characters. Name can have letters,
* numbers, and special characters. The value is editable and is restricted to 1000
* characters.
*/
@com.fasterxml.jackson.annotation.JsonProperty("name")
private String name;
/**
* Free form text without any restriction on permitted characters. Name can have letters,
* numbers, and special characters. The value is editable and is restricted to 1000
* characters.
*
* @param name the value to set
* @return this builder
*/
public Builder name(String name) {
this.name = name;
this.__explicitlySet__.add("name");
return this;
}
/** Detailed description for the object. */
@com.fasterxml.jackson.annotation.JsonProperty("description")
private String description;
/**
* Detailed description for the object.
*
* @param description the value to set
* @return this builder
*/
public Builder description(String description) {
this.description = description;
this.__explicitlySet__.add("description");
return this;
}
/**
* This is used by the service for optimistic locking of the object, to prevent multiple
* users from simultaneously updating the object.
*/
@com.fasterxml.jackson.annotation.JsonProperty("objectVersion")
private Integer objectVersion;
/**
* This is used by the service for optimistic locking of the object, to prevent multiple
* users from simultaneously updating the object.
*
* @param objectVersion the value to set
* @return this builder
*/
public Builder objectVersion(Integer objectVersion) {
this.objectVersion = objectVersion;
this.__explicitlySet__.add("objectVersion");
return this;
}
/**
* The status of an object that can be set to value 1 for shallow references across objects,
* other values reserved.
*/
@com.fasterxml.jackson.annotation.JsonProperty("objectStatus")
private Integer objectStatus;
/**
* The status of an object that can be set to value 1 for shallow references across objects,
* other values reserved.
*
* @param objectStatus the value to set
* @return this builder
*/
public Builder objectStatus(Integer objectStatus) {
this.objectStatus = objectStatus;
this.__explicitlySet__.add("objectStatus");
return this;
}
/**
* Value can only contain upper case letters, underscore, and numbers. It should begin with
* upper case letter or underscore. The value can be modified.
*/
@com.fasterxml.jackson.annotation.JsonProperty("identifier")
private String identifier;
/**
* Value can only contain upper case letters, underscore, and numbers. It should begin with
* upper case letter or underscore. The value can be modified.
*
* @param identifier the value to set
* @return this builder
*/
public Builder identifier(String identifier) {
this.identifier = identifier;
this.__explicitlySet__.add("identifier");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("frequencyDetails")
private AbstractFrequencyDetails frequencyDetails;
public Builder frequencyDetails(AbstractFrequencyDetails frequencyDetails) {
this.frequencyDetails = frequencyDetails;
this.__explicitlySet__.add("frequencyDetails");
return this;
}
/** The timezone for the schedule. */
@com.fasterxml.jackson.annotation.JsonProperty("timezone")
private String timezone;
/**
* The timezone for the schedule.
*
* @param timezone the value to set
* @return this builder
*/
public Builder timezone(String timezone) {
this.timezone = timezone;
this.__explicitlySet__.add("timezone");
return this;
}
/** A flag to indicate daylight saving. */
@com.fasterxml.jackson.annotation.JsonProperty("isDaylightAdjustmentEnabled")
private Boolean isDaylightAdjustmentEnabled;
/**
* A flag to indicate daylight saving.
*
* @param isDaylightAdjustmentEnabled the value to set
* @return this builder
*/
public Builder isDaylightAdjustmentEnabled(Boolean isDaylightAdjustmentEnabled) {
this.isDaylightAdjustmentEnabled = isDaylightAdjustmentEnabled;
this.__explicitlySet__.add("isDaylightAdjustmentEnabled");
return this;
}
@com.fasterxml.jackson.annotation.JsonProperty("metadata")
private ObjectMetadata metadata;
public Builder metadata(ObjectMetadata metadata) {
this.metadata = metadata;
this.__explicitlySet__.add("metadata");
return this;
}
@com.fasterxml.jackson.annotation.JsonIgnore
private final java.util.Set __explicitlySet__ = new java.util.HashSet();
public Schedule build() {
Schedule model =
new Schedule(
this.key,
this.modelVersion,
this.modelType,
this.parentRef,
this.name,
this.description,
this.objectVersion,
this.objectStatus,
this.identifier,
this.frequencyDetails,
this.timezone,
this.isDaylightAdjustmentEnabled,
this.metadata);
for (String explicitlySetProperty : this.__explicitlySet__) {
model.markPropertyAsExplicitlySet(explicitlySetProperty);
}
return model;
}
@com.fasterxml.jackson.annotation.JsonIgnore
public Builder copy(Schedule model) {
if (model.wasPropertyExplicitlySet("key")) {
this.key(model.getKey());
}
if (model.wasPropertyExplicitlySet("modelVersion")) {
this.modelVersion(model.getModelVersion());
}
if (model.wasPropertyExplicitlySet("modelType")) {
this.modelType(model.getModelType());
}
if (model.wasPropertyExplicitlySet("parentRef")) {
this.parentRef(model.getParentRef());
}
if (model.wasPropertyExplicitlySet("name")) {
this.name(model.getName());
}
if (model.wasPropertyExplicitlySet("description")) {
this.description(model.getDescription());
}
if (model.wasPropertyExplicitlySet("objectVersion")) {
this.objectVersion(model.getObjectVersion());
}
if (model.wasPropertyExplicitlySet("objectStatus")) {
this.objectStatus(model.getObjectStatus());
}
if (model.wasPropertyExplicitlySet("identifier")) {
this.identifier(model.getIdentifier());
}
if (model.wasPropertyExplicitlySet("frequencyDetails")) {
this.frequencyDetails(model.getFrequencyDetails());
}
if (model.wasPropertyExplicitlySet("timezone")) {
this.timezone(model.getTimezone());
}
if (model.wasPropertyExplicitlySet("isDaylightAdjustmentEnabled")) {
this.isDaylightAdjustmentEnabled(model.getIsDaylightAdjustmentEnabled());
}
if (model.wasPropertyExplicitlySet("metadata")) {
this.metadata(model.getMetadata());
}
return this;
}
}
/** Create a new builder. */
public static Builder builder() {
return new Builder();
}
public Builder toBuilder() {
return new Builder().copy(this);
}
/**
* Generated key that can be used in API calls to identify schedule. On scenarios where
* reference to the schedule is needed, a value can be passed in create.
*/
@com.fasterxml.jackson.annotation.JsonProperty("key")
private final String key;
/**
* Generated key that can be used in API calls to identify schedule. On scenarios where
* reference to the schedule is needed, a value can be passed in create.
*
* @return the value
*/
public String getKey() {
return key;
}
/**
* This is a version number that is used by the service to upgrade objects if needed through
* releases of the service.
*/
@com.fasterxml.jackson.annotation.JsonProperty("modelVersion")
private final String modelVersion;
/**
* This is a version number that is used by the service to upgrade objects if needed through
* releases of the service.
*
* @return the value
*/
public String getModelVersion() {
return modelVersion;
}
/** The type of the object. */
@com.fasterxml.jackson.annotation.JsonProperty("modelType")
private final String modelType;
/**
* The type of the object.
*
* @return the value
*/
public String getModelType() {
return modelType;
}
@com.fasterxml.jackson.annotation.JsonProperty("parentRef")
private final ParentReference parentRef;
public ParentReference getParentRef() {
return parentRef;
}
/**
* Free form text without any restriction on permitted characters. Name can have letters,
* numbers, and special characters. The value is editable and is restricted to 1000 characters.
*/
@com.fasterxml.jackson.annotation.JsonProperty("name")
private final String name;
/**
* Free form text without any restriction on permitted characters. Name can have letters,
* numbers, and special characters. The value is editable and is restricted to 1000 characters.
*
* @return the value
*/
public String getName() {
return name;
}
/** Detailed description for the object. */
@com.fasterxml.jackson.annotation.JsonProperty("description")
private final String description;
/**
* Detailed description for the object.
*
* @return the value
*/
public String getDescription() {
return description;
}
/**
* This is used by the service for optimistic locking of the object, to prevent multiple users
* from simultaneously updating the object.
*/
@com.fasterxml.jackson.annotation.JsonProperty("objectVersion")
private final Integer objectVersion;
/**
* This is used by the service for optimistic locking of the object, to prevent multiple users
* from simultaneously updating the object.
*
* @return the value
*/
public Integer getObjectVersion() {
return objectVersion;
}
/**
* The status of an object that can be set to value 1 for shallow references across objects,
* other values reserved.
*/
@com.fasterxml.jackson.annotation.JsonProperty("objectStatus")
private final Integer objectStatus;
/**
* The status of an object that can be set to value 1 for shallow references across objects,
* other values reserved.
*
* @return the value
*/
public Integer getObjectStatus() {
return objectStatus;
}
/**
* Value can only contain upper case letters, underscore, and numbers. It should begin with
* upper case letter or underscore. The value can be modified.
*/
@com.fasterxml.jackson.annotation.JsonProperty("identifier")
private final String identifier;
/**
* Value can only contain upper case letters, underscore, and numbers. It should begin with
* upper case letter or underscore. The value can be modified.
*
* @return the value
*/
public String getIdentifier() {
return identifier;
}
@com.fasterxml.jackson.annotation.JsonProperty("frequencyDetails")
private final AbstractFrequencyDetails frequencyDetails;
public AbstractFrequencyDetails getFrequencyDetails() {
return frequencyDetails;
}
/** The timezone for the schedule. */
@com.fasterxml.jackson.annotation.JsonProperty("timezone")
private final String timezone;
/**
* The timezone for the schedule.
*
* @return the value
*/
public String getTimezone() {
return timezone;
}
/** A flag to indicate daylight saving. */
@com.fasterxml.jackson.annotation.JsonProperty("isDaylightAdjustmentEnabled")
private final Boolean isDaylightAdjustmentEnabled;
/**
* A flag to indicate daylight saving.
*
* @return the value
*/
public Boolean getIsDaylightAdjustmentEnabled() {
return isDaylightAdjustmentEnabled;
}
@com.fasterxml.jackson.annotation.JsonProperty("metadata")
private final ObjectMetadata metadata;
public ObjectMetadata getMetadata() {
return metadata;
}
@Override
public String toString() {
return this.toString(true);
}
/**
* Return a string representation of the object.
*
* @param includeByteArrayContents true to include the full contents of byte arrays
* @return string representation
*/
public String toString(boolean includeByteArrayContents) {
java.lang.StringBuilder sb = new java.lang.StringBuilder();
sb.append("Schedule(");
sb.append("super=").append(super.toString());
sb.append("key=").append(String.valueOf(this.key));
sb.append(", modelVersion=").append(String.valueOf(this.modelVersion));
sb.append(", modelType=").append(String.valueOf(this.modelType));
sb.append(", parentRef=").append(String.valueOf(this.parentRef));
sb.append(", name=").append(String.valueOf(this.name));
sb.append(", description=").append(String.valueOf(this.description));
sb.append(", objectVersion=").append(String.valueOf(this.objectVersion));
sb.append(", objectStatus=").append(String.valueOf(this.objectStatus));
sb.append(", identifier=").append(String.valueOf(this.identifier));
sb.append(", frequencyDetails=").append(String.valueOf(this.frequencyDetails));
sb.append(", timezone=").append(String.valueOf(this.timezone));
sb.append(", isDaylightAdjustmentEnabled=")
.append(String.valueOf(this.isDaylightAdjustmentEnabled));
sb.append(", metadata=").append(String.valueOf(this.metadata));
sb.append(")");
return sb.toString();
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (!(o instanceof Schedule)) {
return false;
}
Schedule other = (Schedule) o;
return java.util.Objects.equals(this.key, other.key)
&& java.util.Objects.equals(this.modelVersion, other.modelVersion)
&& java.util.Objects.equals(this.modelType, other.modelType)
&& java.util.Objects.equals(this.parentRef, other.parentRef)
&& java.util.Objects.equals(this.name, other.name)
&& java.util.Objects.equals(this.description, other.description)
&& java.util.Objects.equals(this.objectVersion, other.objectVersion)
&& java.util.Objects.equals(this.objectStatus, other.objectStatus)
&& java.util.Objects.equals(this.identifier, other.identifier)
&& java.util.Objects.equals(this.frequencyDetails, other.frequencyDetails)
&& java.util.Objects.equals(this.timezone, other.timezone)
&& java.util.Objects.equals(
this.isDaylightAdjustmentEnabled, other.isDaylightAdjustmentEnabled)
&& java.util.Objects.equals(this.metadata, other.metadata)
&& super.equals(other);
}
@Override
public int hashCode() {
final int PRIME = 59;
int result = 1;
result = (result * PRIME) + (this.key == null ? 43 : this.key.hashCode());
result = (result * PRIME) + (this.modelVersion == null ? 43 : this.modelVersion.hashCode());
result = (result * PRIME) + (this.modelType == null ? 43 : this.modelType.hashCode());
result = (result * PRIME) + (this.parentRef == null ? 43 : this.parentRef.hashCode());
result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode());
result = (result * PRIME) + (this.description == null ? 43 : this.description.hashCode());
result =
(result * PRIME)
+ (this.objectVersion == null ? 43 : this.objectVersion.hashCode());
result = (result * PRIME) + (this.objectStatus == null ? 43 : this.objectStatus.hashCode());
result = (result * PRIME) + (this.identifier == null ? 43 : this.identifier.hashCode());
result =
(result * PRIME)
+ (this.frequencyDetails == null ? 43 : this.frequencyDetails.hashCode());
result = (result * PRIME) + (this.timezone == null ? 43 : this.timezone.hashCode());
result =
(result * PRIME)
+ (this.isDaylightAdjustmentEnabled == null
? 43
: this.isDaylightAdjustmentEnabled.hashCode());
result = (result * PRIME) + (this.metadata == null ? 43 : this.metadata.hashCode());
result = (result * PRIME) + super.hashCode();
return result;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy