
odata.msgraph.client.complex.AccessPackageAssignmentRequestRequirements Maven / Gradle / Ivy
package odata.msgraph.client.complex;
import com.fasterxml.jackson.annotation.JacksonInject;
import com.fasterxml.jackson.annotation.JsonAnyGetter;
import com.fasterxml.jackson.annotation.JsonAnySetter;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.github.davidmoten.odata.client.ContextPath;
import com.github.davidmoten.odata.client.ODataType;
import com.github.davidmoten.odata.client.UnmappedFields;
import com.github.davidmoten.odata.client.Util;
import com.github.davidmoten.odata.client.annotation.Property;
import com.github.davidmoten.odata.client.internal.ChangedFields;
import com.github.davidmoten.odata.client.internal.UnmappedFieldsImpl;
import java.lang.Boolean;
import java.lang.Object;
import java.lang.Override;
import java.lang.String;
import java.lang.StringBuilder;
import java.util.Optional;
@JsonPropertyOrder({
"@odata.type",
"allowCustomAssignmentSchedule",
"isApprovalRequiredForAdd",
"isApprovalRequiredForUpdate",
"policyDescription",
"policyDisplayName",
"policyId",
"schedule"})
@JsonInclude(Include.NON_NULL)
public class AccessPackageAssignmentRequestRequirements implements ODataType {
@JacksonInject
@JsonIgnore
protected ContextPath contextPath;
@JacksonInject
@JsonIgnore
protected UnmappedFieldsImpl unmappedFields;
@JsonProperty("@odata.type")
protected String odataType;
@JsonProperty("allowCustomAssignmentSchedule")
protected Boolean allowCustomAssignmentSchedule;
@JsonProperty("isApprovalRequiredForAdd")
protected Boolean isApprovalRequiredForAdd;
@JsonProperty("isApprovalRequiredForUpdate")
protected Boolean isApprovalRequiredForUpdate;
@JsonProperty("policyDescription")
protected String policyDescription;
@JsonProperty("policyDisplayName")
protected String policyDisplayName;
@JsonProperty("policyId")
protected String policyId;
@JsonProperty("schedule")
protected EntitlementManagementSchedule schedule;
protected AccessPackageAssignmentRequestRequirements() {
}
@Override
public String odataTypeName() {
return "microsoft.graph.accessPackageAssignmentRequestRequirements";
}
@Property(name="allowCustomAssignmentSchedule")
@JsonIgnore
public Optional getAllowCustomAssignmentSchedule() {
return Optional.ofNullable(allowCustomAssignmentSchedule);
}
public AccessPackageAssignmentRequestRequirements withAllowCustomAssignmentSchedule(Boolean allowCustomAssignmentSchedule) {
AccessPackageAssignmentRequestRequirements _x = _copy();
_x.odataType = Util.nvl(odataType, "microsoft.graph.accessPackageAssignmentRequestRequirements");
_x.allowCustomAssignmentSchedule = allowCustomAssignmentSchedule;
return _x;
}
@Property(name="isApprovalRequiredForAdd")
@JsonIgnore
public Optional getIsApprovalRequiredForAdd() {
return Optional.ofNullable(isApprovalRequiredForAdd);
}
public AccessPackageAssignmentRequestRequirements withIsApprovalRequiredForAdd(Boolean isApprovalRequiredForAdd) {
AccessPackageAssignmentRequestRequirements _x = _copy();
_x.odataType = Util.nvl(odataType, "microsoft.graph.accessPackageAssignmentRequestRequirements");
_x.isApprovalRequiredForAdd = isApprovalRequiredForAdd;
return _x;
}
@Property(name="isApprovalRequiredForUpdate")
@JsonIgnore
public Optional getIsApprovalRequiredForUpdate() {
return Optional.ofNullable(isApprovalRequiredForUpdate);
}
public AccessPackageAssignmentRequestRequirements withIsApprovalRequiredForUpdate(Boolean isApprovalRequiredForUpdate) {
AccessPackageAssignmentRequestRequirements _x = _copy();
_x.odataType = Util.nvl(odataType, "microsoft.graph.accessPackageAssignmentRequestRequirements");
_x.isApprovalRequiredForUpdate = isApprovalRequiredForUpdate;
return _x;
}
@Property(name="policyDescription")
@JsonIgnore
public Optional getPolicyDescription() {
return Optional.ofNullable(policyDescription);
}
public AccessPackageAssignmentRequestRequirements withPolicyDescription(String policyDescription) {
AccessPackageAssignmentRequestRequirements _x = _copy();
_x.odataType = Util.nvl(odataType, "microsoft.graph.accessPackageAssignmentRequestRequirements");
_x.policyDescription = policyDescription;
return _x;
}
@Property(name="policyDisplayName")
@JsonIgnore
public Optional getPolicyDisplayName() {
return Optional.ofNullable(policyDisplayName);
}
public AccessPackageAssignmentRequestRequirements withPolicyDisplayName(String policyDisplayName) {
AccessPackageAssignmentRequestRequirements _x = _copy();
_x.odataType = Util.nvl(odataType, "microsoft.graph.accessPackageAssignmentRequestRequirements");
_x.policyDisplayName = policyDisplayName;
return _x;
}
@Property(name="policyId")
@JsonIgnore
public Optional getPolicyId() {
return Optional.ofNullable(policyId);
}
public AccessPackageAssignmentRequestRequirements withPolicyId(String policyId) {
AccessPackageAssignmentRequestRequirements _x = _copy();
_x.odataType = Util.nvl(odataType, "microsoft.graph.accessPackageAssignmentRequestRequirements");
_x.policyId = policyId;
return _x;
}
@Property(name="schedule")
@JsonIgnore
public Optional getSchedule() {
return Optional.ofNullable(schedule);
}
public AccessPackageAssignmentRequestRequirements withSchedule(EntitlementManagementSchedule schedule) {
AccessPackageAssignmentRequestRequirements _x = _copy();
_x.odataType = Util.nvl(odataType, "microsoft.graph.accessPackageAssignmentRequestRequirements");
_x.schedule = schedule;
return _x;
}
public AccessPackageAssignmentRequestRequirements withUnmappedField(String name, String value) {
AccessPackageAssignmentRequestRequirements _x = _copy();
_x.setUnmappedField(name, value);
return _x;
}
@JsonAnySetter
private void setUnmappedField(String name, Object value) {
if (unmappedFields == null) {
unmappedFields = new UnmappedFieldsImpl();
}
unmappedFields.put(name, value);
}
@JsonAnyGetter
private UnmappedFieldsImpl unmappedFields() {
return unmappedFields == null ? UnmappedFieldsImpl.EMPTY : unmappedFields;
}
@Override
public UnmappedFields getUnmappedFields() {
return unmappedFields();
}
@Override
public void postInject(boolean addKeysToContextPath) {
// do nothing;
}
/**
* Returns a builder which is used to create a new
* instance of this class (given that this class is immutable).
*
* @return a new Builder for this class
*/
// Suffix used on builder factory method to differentiate the method
// from static builder methods on superclasses
public static Builder builder() {
return new Builder();
}
public static final class Builder {
private Boolean allowCustomAssignmentSchedule;
private Boolean isApprovalRequiredForAdd;
private Boolean isApprovalRequiredForUpdate;
private String policyDescription;
private String policyDisplayName;
private String policyId;
private EntitlementManagementSchedule schedule;
private ChangedFields changedFields = ChangedFields.EMPTY;
Builder() {
// prevent instantiation
}
public Builder allowCustomAssignmentSchedule(Boolean allowCustomAssignmentSchedule) {
this.allowCustomAssignmentSchedule = allowCustomAssignmentSchedule;
this.changedFields = changedFields.add("allowCustomAssignmentSchedule");
return this;
}
public Builder isApprovalRequiredForAdd(Boolean isApprovalRequiredForAdd) {
this.isApprovalRequiredForAdd = isApprovalRequiredForAdd;
this.changedFields = changedFields.add("isApprovalRequiredForAdd");
return this;
}
public Builder isApprovalRequiredForUpdate(Boolean isApprovalRequiredForUpdate) {
this.isApprovalRequiredForUpdate = isApprovalRequiredForUpdate;
this.changedFields = changedFields.add("isApprovalRequiredForUpdate");
return this;
}
public Builder policyDescription(String policyDescription) {
this.policyDescription = policyDescription;
this.changedFields = changedFields.add("policyDescription");
return this;
}
public Builder policyDisplayName(String policyDisplayName) {
this.policyDisplayName = policyDisplayName;
this.changedFields = changedFields.add("policyDisplayName");
return this;
}
public Builder policyId(String policyId) {
this.policyId = policyId;
this.changedFields = changedFields.add("policyId");
return this;
}
public Builder schedule(EntitlementManagementSchedule schedule) {
this.schedule = schedule;
this.changedFields = changedFields.add("schedule");
return this;
}
public AccessPackageAssignmentRequestRequirements build() {
AccessPackageAssignmentRequestRequirements _x = new AccessPackageAssignmentRequestRequirements();
_x.contextPath = null;
_x.unmappedFields = new UnmappedFieldsImpl();
_x.odataType = "microsoft.graph.accessPackageAssignmentRequestRequirements";
_x.allowCustomAssignmentSchedule = allowCustomAssignmentSchedule;
_x.isApprovalRequiredForAdd = isApprovalRequiredForAdd;
_x.isApprovalRequiredForUpdate = isApprovalRequiredForUpdate;
_x.policyDescription = policyDescription;
_x.policyDisplayName = policyDisplayName;
_x.policyId = policyId;
_x.schedule = schedule;
return _x;
}
}
private AccessPackageAssignmentRequestRequirements _copy() {
AccessPackageAssignmentRequestRequirements _x = new AccessPackageAssignmentRequestRequirements();
_x.contextPath = contextPath;
_x.unmappedFields = unmappedFields.copy();
_x.odataType = odataType;
_x.allowCustomAssignmentSchedule = allowCustomAssignmentSchedule;
_x.isApprovalRequiredForAdd = isApprovalRequiredForAdd;
_x.isApprovalRequiredForUpdate = isApprovalRequiredForUpdate;
_x.policyDescription = policyDescription;
_x.policyDisplayName = policyDisplayName;
_x.policyId = policyId;
_x.schedule = schedule;
return _x;
}
@Override
public String toString() {
StringBuilder b = new StringBuilder();
b.append("AccessPackageAssignmentRequestRequirements[");
b.append("allowCustomAssignmentSchedule=");
b.append(this.allowCustomAssignmentSchedule);
b.append(", ");
b.append("isApprovalRequiredForAdd=");
b.append(this.isApprovalRequiredForAdd);
b.append(", ");
b.append("isApprovalRequiredForUpdate=");
b.append(this.isApprovalRequiredForUpdate);
b.append(", ");
b.append("policyDescription=");
b.append(this.policyDescription);
b.append(", ");
b.append("policyDisplayName=");
b.append(this.policyDisplayName);
b.append(", ");
b.append("policyId=");
b.append(this.policyId);
b.append(", ");
b.append("schedule=");
b.append(this.schedule);
b.append("]");
b.append(",unmappedFields=");
b.append(unmappedFields);
b.append(",odataType=");
b.append(odataType);
return b.toString();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy