com.google.api.services.osconfig.v1.model.OSPolicyAssignment Maven / Gradle / Ivy
The newest version!
/*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
*/
/*
* This code was generated by https://github.com/googleapis/google-api-java-client-services/
* Modify at your own risk.
*/
package com.google.api.services.osconfig.v1.model;
/**
* OS policy assignment is an API resource that is used to apply a set of OS policies to a
* dynamically targeted group of Compute Engine VM instances. An OS policy is used to define the
* desired state configuration for a Compute Engine VM instance through a set of configuration
* resources that provide capabilities such as installing or removing software packages, or
* executing a script. For more information about the OS policy resource definitions and examples,
* see [OS policy and OS policy assignment](https://cloud.google.com/compute/docs/os-configuration-
* management/working-with-os-policies).
*
* This is the Java data model class that specifies how to parse/serialize into the JSON that is
* transmitted over HTTP when working with the OS Config API. For a detailed explanation see:
* https://developers.google.com/api-client-library/java/google-http-java-client/json
*
*
* @author Google, Inc.
*/
@SuppressWarnings("javadoc")
public final class OSPolicyAssignment extends com.google.api.client.json.GenericJson {
/**
* Output only. Indicates that this revision has been successfully rolled out in this zone and new
* VMs will be assigned OS policies from this revision. For a given OS policy assignment, there is
* only one revision with a value of `true` for this field.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Boolean baseline;
/**
* Output only. Indicates that this revision deletes the OS policy assignment.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Boolean deleted;
/**
* OS policy assignment description. Length of the description is limited to 1024 characters.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String description;
/**
* The etag for this OS policy assignment. If this is provided on update, it must match the
* server's etag.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String etag;
/**
* Required. Filter to select VMs.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private OSPolicyAssignmentInstanceFilter instanceFilter;
/**
* Resource name. Format:
* `projects/{project_number}/locations/{location}/osPolicyAssignments/{os_policy_assignment_id}`
* This field is ignored when you create an OS policy assignment.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String name;
/**
* Required. List of OS policies to be applied to the VMs.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.util.List osPolicies;
static {
// hack to force ProGuard to consider OSPolicy used, since otherwise it would be stripped out
// see https://github.com/google/google-api-java-client/issues/543
com.google.api.client.util.Data.nullOf(OSPolicy.class);
}
/**
* Output only. Indicates that reconciliation is in progress for the revision. This value is
* `true` when the `rollout_state` is one of: * IN_PROGRESS * CANCELLING
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Boolean reconciling;
/**
* Output only. The timestamp that the revision was created.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private String revisionCreateTime;
/**
* Output only. The assignment revision ID A new revision is committed whenever a rollout is
* triggered for a OS policy assignment
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String revisionId;
/**
* Required. Rollout to deploy the OS policy assignment. A rollout is triggered in the following
* situations: 1) OSPolicyAssignment is created. 2) OSPolicyAssignment is updated and the update
* contains changes to one of the following fields: - instance_filter - os_policies 3)
* OSPolicyAssignment is deleted.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private OSPolicyAssignmentRollout rollout;
/**
* Output only. OS policy assignment rollout state
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String rolloutState;
/**
* Output only. Server generated unique id for the OS policy assignment resource.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String uid;
/**
* Output only. Indicates that this revision has been successfully rolled out in this zone and new
* VMs will be assigned OS policies from this revision. For a given OS policy assignment, there is
* only one revision with a value of `true` for this field.
* @return value or {@code null} for none
*/
public java.lang.Boolean getBaseline() {
return baseline;
}
/**
* Output only. Indicates that this revision has been successfully rolled out in this zone and new
* VMs will be assigned OS policies from this revision. For a given OS policy assignment, there is
* only one revision with a value of `true` for this field.
* @param baseline baseline or {@code null} for none
*/
public OSPolicyAssignment setBaseline(java.lang.Boolean baseline) {
this.baseline = baseline;
return this;
}
/**
* Output only. Indicates that this revision deletes the OS policy assignment.
* @return value or {@code null} for none
*/
public java.lang.Boolean getDeleted() {
return deleted;
}
/**
* Output only. Indicates that this revision deletes the OS policy assignment.
* @param deleted deleted or {@code null} for none
*/
public OSPolicyAssignment setDeleted(java.lang.Boolean deleted) {
this.deleted = deleted;
return this;
}
/**
* OS policy assignment description. Length of the description is limited to 1024 characters.
* @return value or {@code null} for none
*/
public java.lang.String getDescription() {
return description;
}
/**
* OS policy assignment description. Length of the description is limited to 1024 characters.
* @param description description or {@code null} for none
*/
public OSPolicyAssignment setDescription(java.lang.String description) {
this.description = description;
return this;
}
/**
* The etag for this OS policy assignment. If this is provided on update, it must match the
* server's etag.
* @return value or {@code null} for none
*/
public java.lang.String getEtag() {
return etag;
}
/**
* The etag for this OS policy assignment. If this is provided on update, it must match the
* server's etag.
* @param etag etag or {@code null} for none
*/
public OSPolicyAssignment setEtag(java.lang.String etag) {
this.etag = etag;
return this;
}
/**
* Required. Filter to select VMs.
* @return value or {@code null} for none
*/
public OSPolicyAssignmentInstanceFilter getInstanceFilter() {
return instanceFilter;
}
/**
* Required. Filter to select VMs.
* @param instanceFilter instanceFilter or {@code null} for none
*/
public OSPolicyAssignment setInstanceFilter(OSPolicyAssignmentInstanceFilter instanceFilter) {
this.instanceFilter = instanceFilter;
return this;
}
/**
* Resource name. Format:
* `projects/{project_number}/locations/{location}/osPolicyAssignments/{os_policy_assignment_id}`
* This field is ignored when you create an OS policy assignment.
* @return value or {@code null} for none
*/
public java.lang.String getName() {
return name;
}
/**
* Resource name. Format:
* `projects/{project_number}/locations/{location}/osPolicyAssignments/{os_policy_assignment_id}`
* This field is ignored when you create an OS policy assignment.
* @param name name or {@code null} for none
*/
public OSPolicyAssignment setName(java.lang.String name) {
this.name = name;
return this;
}
/**
* Required. List of OS policies to be applied to the VMs.
* @return value or {@code null} for none
*/
public java.util.List getOsPolicies() {
return osPolicies;
}
/**
* Required. List of OS policies to be applied to the VMs.
* @param osPolicies osPolicies or {@code null} for none
*/
public OSPolicyAssignment setOsPolicies(java.util.List osPolicies) {
this.osPolicies = osPolicies;
return this;
}
/**
* Output only. Indicates that reconciliation is in progress for the revision. This value is
* `true` when the `rollout_state` is one of: * IN_PROGRESS * CANCELLING
* @return value or {@code null} for none
*/
public java.lang.Boolean getReconciling() {
return reconciling;
}
/**
* Output only. Indicates that reconciliation is in progress for the revision. This value is
* `true` when the `rollout_state` is one of: * IN_PROGRESS * CANCELLING
* @param reconciling reconciling or {@code null} for none
*/
public OSPolicyAssignment setReconciling(java.lang.Boolean reconciling) {
this.reconciling = reconciling;
return this;
}
/**
* Output only. The timestamp that the revision was created.
* @return value or {@code null} for none
*/
public String getRevisionCreateTime() {
return revisionCreateTime;
}
/**
* Output only. The timestamp that the revision was created.
* @param revisionCreateTime revisionCreateTime or {@code null} for none
*/
public OSPolicyAssignment setRevisionCreateTime(String revisionCreateTime) {
this.revisionCreateTime = revisionCreateTime;
return this;
}
/**
* Output only. The assignment revision ID A new revision is committed whenever a rollout is
* triggered for a OS policy assignment
* @return value or {@code null} for none
*/
public java.lang.String getRevisionId() {
return revisionId;
}
/**
* Output only. The assignment revision ID A new revision is committed whenever a rollout is
* triggered for a OS policy assignment
* @param revisionId revisionId or {@code null} for none
*/
public OSPolicyAssignment setRevisionId(java.lang.String revisionId) {
this.revisionId = revisionId;
return this;
}
/**
* Required. Rollout to deploy the OS policy assignment. A rollout is triggered in the following
* situations: 1) OSPolicyAssignment is created. 2) OSPolicyAssignment is updated and the update
* contains changes to one of the following fields: - instance_filter - os_policies 3)
* OSPolicyAssignment is deleted.
* @return value or {@code null} for none
*/
public OSPolicyAssignmentRollout getRollout() {
return rollout;
}
/**
* Required. Rollout to deploy the OS policy assignment. A rollout is triggered in the following
* situations: 1) OSPolicyAssignment is created. 2) OSPolicyAssignment is updated and the update
* contains changes to one of the following fields: - instance_filter - os_policies 3)
* OSPolicyAssignment is deleted.
* @param rollout rollout or {@code null} for none
*/
public OSPolicyAssignment setRollout(OSPolicyAssignmentRollout rollout) {
this.rollout = rollout;
return this;
}
/**
* Output only. OS policy assignment rollout state
* @return value or {@code null} for none
*/
public java.lang.String getRolloutState() {
return rolloutState;
}
/**
* Output only. OS policy assignment rollout state
* @param rolloutState rolloutState or {@code null} for none
*/
public OSPolicyAssignment setRolloutState(java.lang.String rolloutState) {
this.rolloutState = rolloutState;
return this;
}
/**
* Output only. Server generated unique id for the OS policy assignment resource.
* @return value or {@code null} for none
*/
public java.lang.String getUid() {
return uid;
}
/**
* Output only. Server generated unique id for the OS policy assignment resource.
* @param uid uid or {@code null} for none
*/
public OSPolicyAssignment setUid(java.lang.String uid) {
this.uid = uid;
return this;
}
@Override
public OSPolicyAssignment set(String fieldName, Object value) {
return (OSPolicyAssignment) super.set(fieldName, value);
}
@Override
public OSPolicyAssignment clone() {
return (OSPolicyAssignment) super.clone();
}
}