/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file 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. */ package com.amazonaws.services.s3control.model; import java.io.Serializable; import javax.annotation.Generated; /** *

* A container for the request parameters associated with an asynchronous request. *

* * @see AWS * API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AsyncRequestParameters implements Serializable, Cloneable { /** *

* A container of the parameters for a CreateMultiRegionAccessPoint request. *

*/ private CreateMultiRegionAccessPointInput createMultiRegionAccessPointRequest; /** *

* A container of the parameters for a DeleteMultiRegionAccessPoint request. *

*/ private DeleteMultiRegionAccessPointInput deleteMultiRegionAccessPointRequest; /** *

* A container of the parameters for a PutMultiRegionAccessPoint request. *

*/ private PutMultiRegionAccessPointPolicyInput putMultiRegionAccessPointPolicyRequest; /** *

* A container of the parameters for a CreateMultiRegionAccessPoint request. *

* * @param createMultiRegionAccessPointRequest * A container of the parameters for a CreateMultiRegionAccessPoint request. */ public void setCreateMultiRegionAccessPointRequest(CreateMultiRegionAccessPointInput createMultiRegionAccessPointRequest) { this.createMultiRegionAccessPointRequest = createMultiRegionAccessPointRequest; } /** *

* A container of the parameters for a CreateMultiRegionAccessPoint request. *

* * @return A container of the parameters for a CreateMultiRegionAccessPoint request. */ public CreateMultiRegionAccessPointInput getCreateMultiRegionAccessPointRequest() { return this.createMultiRegionAccessPointRequest; } /** *

* A container of the parameters for a CreateMultiRegionAccessPoint request. *

* * @param createMultiRegionAccessPointRequest * A container of the parameters for a CreateMultiRegionAccessPoint request. * @return Returns a reference to this object so that method calls can be chained together. */ public AsyncRequestParameters withCreateMultiRegionAccessPointRequest(CreateMultiRegionAccessPointInput createMultiRegionAccessPointRequest) { setCreateMultiRegionAccessPointRequest(createMultiRegionAccessPointRequest); return this; } /** *

* A container of the parameters for a DeleteMultiRegionAccessPoint request. *

* * @param deleteMultiRegionAccessPointRequest * A container of the parameters for a DeleteMultiRegionAccessPoint request. */ public void setDeleteMultiRegionAccessPointRequest(DeleteMultiRegionAccessPointInput deleteMultiRegionAccessPointRequest) { this.deleteMultiRegionAccessPointRequest = deleteMultiRegionAccessPointRequest; } /** *

* A container of the parameters for a DeleteMultiRegionAccessPoint request. *

* * @return A container of the parameters for a DeleteMultiRegionAccessPoint request. */ public DeleteMultiRegionAccessPointInput getDeleteMultiRegionAccessPointRequest() { return this.deleteMultiRegionAccessPointRequest; } /** *

* A container of the parameters for a DeleteMultiRegionAccessPoint request. *

* * @param deleteMultiRegionAccessPointRequest * A container of the parameters for a DeleteMultiRegionAccessPoint request. * @return Returns a reference to this object so that method calls can be chained together. */ public AsyncRequestParameters withDeleteMultiRegionAccessPointRequest(DeleteMultiRegionAccessPointInput deleteMultiRegionAccessPointRequest) { setDeleteMultiRegionAccessPointRequest(deleteMultiRegionAccessPointRequest); return this; } /** *

* A container of the parameters for a PutMultiRegionAccessPoint request. *

* * @param putMultiRegionAccessPointPolicyRequest * A container of the parameters for a PutMultiRegionAccessPoint request. */ public void setPutMultiRegionAccessPointPolicyRequest(PutMultiRegionAccessPointPolicyInput putMultiRegionAccessPointPolicyRequest) { this.putMultiRegionAccessPointPolicyRequest = putMultiRegionAccessPointPolicyRequest; } /** *

* A container of the parameters for a PutMultiRegionAccessPoint request. *

* * @return A container of the parameters for a PutMultiRegionAccessPoint request. */ public PutMultiRegionAccessPointPolicyInput getPutMultiRegionAccessPointPolicyRequest() { return this.putMultiRegionAccessPointPolicyRequest; } /** *

* A container of the parameters for a PutMultiRegionAccessPoint request. *

* * @param putMultiRegionAccessPointPolicyRequest * A container of the parameters for a PutMultiRegionAccessPoint request. * @return Returns a reference to this object so that method calls can be chained together. */ public AsyncRequestParameters withPutMultiRegionAccessPointPolicyRequest(PutMultiRegionAccessPointPolicyInput putMultiRegionAccessPointPolicyRequest) { setPutMultiRegionAccessPointPolicyRequest(putMultiRegionAccessPointPolicyRequest); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getCreateMultiRegionAccessPointRequest() != null) sb.append("CreateMultiRegionAccessPointRequest: ").append(getCreateMultiRegionAccessPointRequest()).append(","); if (getDeleteMultiRegionAccessPointRequest() != null) sb.append("DeleteMultiRegionAccessPointRequest: ").append(getDeleteMultiRegionAccessPointRequest()).append(","); if (getPutMultiRegionAccessPointPolicyRequest() != null) sb.append("PutMultiRegionAccessPointPolicyRequest: ").append(getPutMultiRegionAccessPointPolicyRequest()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof AsyncRequestParameters == false) return false; AsyncRequestParameters other = (AsyncRequestParameters) obj; if (other.getCreateMultiRegionAccessPointRequest() == null ^ this.getCreateMultiRegionAccessPointRequest() == null) return false; if (other.getCreateMultiRegionAccessPointRequest() != null && other.getCreateMultiRegionAccessPointRequest().equals(this.getCreateMultiRegionAccessPointRequest()) == false) return false; if (other.getDeleteMultiRegionAccessPointRequest() == null ^ this.getDeleteMultiRegionAccessPointRequest() == null) return false; if (other.getDeleteMultiRegionAccessPointRequest() != null && other.getDeleteMultiRegionAccessPointRequest().equals(this.getDeleteMultiRegionAccessPointRequest()) == false) return false; if (other.getPutMultiRegionAccessPointPolicyRequest() == null ^ this.getPutMultiRegionAccessPointPolicyRequest() == null) return false; if (other.getPutMultiRegionAccessPointPolicyRequest() != null && other.getPutMultiRegionAccessPointPolicyRequest().equals(this.getPutMultiRegionAccessPointPolicyRequest()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getCreateMultiRegionAccessPointRequest() == null) ? 0 : getCreateMultiRegionAccessPointRequest().hashCode()); hashCode = prime * hashCode + ((getDeleteMultiRegionAccessPointRequest() == null) ? 0 : getDeleteMultiRegionAccessPointRequest().hashCode()); hashCode = prime * hashCode + ((getPutMultiRegionAccessPointPolicyRequest() == null) ? 0 : getPutMultiRegionAccessPointPolicyRequest().hashCode()); return hashCode; } @Override public AsyncRequestParameters clone() { try { return (AsyncRequestParameters) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }