All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.oracle.bmc.identity.requests.UpdatePolicyRequest Maven / Gradle / Ivy

/**
 * 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.identity.requests;

import com.oracle.bmc.identity.model.*;
/**
 * Example: Click here to see how to use UpdatePolicyRequest.
 */
@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
public class UpdatePolicyRequest
        extends com.oracle.bmc.requests.BmcRequest<
                com.oracle.bmc.identity.model.UpdatePolicyDetails> {

    /** The OCID of the policy. */
    private String policyId;

    /** The OCID of the policy. */
    public String getPolicyId() {
        return policyId;
    }
    /** Request object for updating a policy. */
    private com.oracle.bmc.identity.model.UpdatePolicyDetails updatePolicyDetails;

    /** Request object for updating a policy. */
    public com.oracle.bmc.identity.model.UpdatePolicyDetails getUpdatePolicyDetails() {
        return updatePolicyDetails;
    }
    /**
     * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code
     * if-match} parameter to the value of the etag from a previous GET or POST response for that
     * resource. The resource will be updated or deleted only if the etag you provide matches the
     * resource's current etag value.
     */
    private String ifMatch;

    /**
     * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code
     * if-match} parameter to the value of the etag from a previous GET or POST response for that
     * resource. The resource will be updated or deleted only if the etag you provide matches the
     * resource's current etag value.
     */
    public String getIfMatch() {
        return ifMatch;
    }

    /**
     * Alternative accessor for the body parameter.
     *
     * @return body parameter
     */
    @Override
    @com.oracle.bmc.InternalSdk
    public com.oracle.bmc.identity.model.UpdatePolicyDetails getBody$() {
        return updatePolicyDetails;
    }

    public static class Builder
            implements com.oracle.bmc.requests.BmcRequest.Builder<
                    UpdatePolicyRequest, com.oracle.bmc.identity.model.UpdatePolicyDetails> {
        private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null;
        private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null;

        /** The OCID of the policy. */
        private String policyId = null;

        /**
         * The OCID of the policy.
         *
         * @param policyId the value to set
         * @return this builder instance
         */
        public Builder policyId(String policyId) {
            this.policyId = policyId;
            return this;
        }

        /** Request object for updating a policy. */
        private com.oracle.bmc.identity.model.UpdatePolicyDetails updatePolicyDetails = null;

        /**
         * Request object for updating a policy.
         *
         * @param updatePolicyDetails the value to set
         * @return this builder instance
         */
        public Builder updatePolicyDetails(
                com.oracle.bmc.identity.model.UpdatePolicyDetails updatePolicyDetails) {
            this.updatePolicyDetails = updatePolicyDetails;
            return this;
        }

        /**
         * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the
         * {@code if-match} parameter to the value of the etag from a previous GET or POST response
         * for that resource. The resource will be updated or deleted only if the etag you provide
         * matches the resource's current etag value.
         */
        private String ifMatch = null;

        /**
         * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the
         * {@code if-match} parameter to the value of the etag from a previous GET or POST response
         * for that resource. The resource will be updated or deleted only if the etag you provide
         * matches the resource's current etag value.
         *
         * @param ifMatch the value to set
         * @return this builder instance
         */
        public Builder ifMatch(String ifMatch) {
            this.ifMatch = ifMatch;
            return this;
        }

        /**
         * Set the invocation callback for the request to be built.
         *
         * @param invocationCallback the invocation callback to be set for the request
         * @return this builder instance
         */
        public Builder invocationCallback(
                com.oracle.bmc.http.client.RequestInterceptor invocationCallback) {
            this.invocationCallback = invocationCallback;
            return this;
        }

        /**
         * Set the retry configuration for the request to be built.
         *
         * @param retryConfiguration the retry configuration to be used for the request
         * @return this builder instance
         */
        public Builder retryConfiguration(
                com.oracle.bmc.retrier.RetryConfiguration retryConfiguration) {
            this.retryConfiguration = retryConfiguration;
            return this;
        }

        /**
         * Copy method to populate the builder with values from the given instance.
         *
         * @return this builder instance
         */
        public Builder copy(UpdatePolicyRequest o) {
            policyId(o.getPolicyId());
            updatePolicyDetails(o.getUpdatePolicyDetails());
            ifMatch(o.getIfMatch());
            invocationCallback(o.getInvocationCallback());
            retryConfiguration(o.getRetryConfiguration());
            return this;
        }

        /**
         * Build the instance of UpdatePolicyRequest as configured by this builder
         *
         * 

Note that this method takes calls to {@link * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, * while the method {@link Builder#buildWithoutInvocationCallback} does not. * *

This is the preferred method to build an instance. * * @return instance of UpdatePolicyRequest */ public UpdatePolicyRequest build() { UpdatePolicyRequest request = buildWithoutInvocationCallback(); request.setInvocationCallback(invocationCallback); request.setRetryConfiguration(retryConfiguration); return request; } /** * Alternative setter for the body parameter. * * @param body the body parameter * @return this builder instance */ @com.oracle.bmc.InternalSdk public Builder body$(com.oracle.bmc.identity.model.UpdatePolicyDetails body) { updatePolicyDetails(body); return this; } /** * Build the instance of UpdatePolicyRequest as configured by this builder * *

Note that this method does not take calls to {@link * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, * while the method {@link Builder#build} does * * @return instance of UpdatePolicyRequest */ public UpdatePolicyRequest buildWithoutInvocationCallback() { UpdatePolicyRequest request = new UpdatePolicyRequest(); request.policyId = policyId; request.updatePolicyDetails = updatePolicyDetails; request.ifMatch = ifMatch; return request; // new UpdatePolicyRequest(policyId, updatePolicyDetails, ifMatch); } } /** * Return an instance of {@link Builder} that allows you to modify request properties. * * @return instance of {@link Builder} that allows you to modify request properties. */ public Builder toBuilder() { return new Builder() .policyId(policyId) .updatePolicyDetails(updatePolicyDetails) .ifMatch(ifMatch); } /** * Return a new builder for this request object. * * @return builder for the request object */ public static Builder builder() { return new Builder(); } @Override public String toString() { java.lang.StringBuilder sb = new java.lang.StringBuilder(); sb.append("("); sb.append("super=").append(super.toString()); sb.append(",policyId=").append(String.valueOf(this.policyId)); sb.append(",updatePolicyDetails=").append(String.valueOf(this.updatePolicyDetails)); sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); sb.append(")"); return sb.toString(); } @Override public boolean equals(Object o) { if (this == o) { return true; } if (!(o instanceof UpdatePolicyRequest)) { return false; } UpdatePolicyRequest other = (UpdatePolicyRequest) o; return super.equals(o) && java.util.Objects.equals(this.policyId, other.policyId) && java.util.Objects.equals(this.updatePolicyDetails, other.updatePolicyDetails) && java.util.Objects.equals(this.ifMatch, other.ifMatch); } @Override public int hashCode() { final int PRIME = 59; int result = super.hashCode(); result = (result * PRIME) + (this.policyId == null ? 43 : this.policyId.hashCode()); result = (result * PRIME) + (this.updatePolicyDetails == null ? 43 : this.updatePolicyDetails.hashCode()); result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); return result; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy