
com.amazonaws.services.clouddirectory.model.BatchWriteOperation Maven / Gradle / Ivy
Show all versions of aws-java-sdk-clouddirectory Show documentation
/*
* Copyright 2020-2025 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.clouddirectory.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;
/**
*
* Represents the output of a BatchWrite
operation.
*
*
* @see AWS
* API Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class BatchWriteOperation implements Serializable, Cloneable, StructuredPojo {
/**
*
* Creates an object.
*
*/
private BatchCreateObject createObject;
/**
*
* Attaches an object to a Directory.
*
*/
private BatchAttachObject attachObject;
/**
*
* Detaches an object from a Directory.
*
*/
private BatchDetachObject detachObject;
/**
*
* Updates a given object's attributes.
*
*/
private BatchUpdateObjectAttributes updateObjectAttributes;
/**
*
* Deletes an object in a Directory.
*
*/
private BatchDeleteObject deleteObject;
/**
*
* A batch operation that adds a facet to an object.
*
*/
private BatchAddFacetToObject addFacetToObject;
/**
*
* A batch operation that removes a facet from an object.
*
*/
private BatchRemoveFacetFromObject removeFacetFromObject;
/**
*
* Attaches a policy object to a regular object. An object can have a limited number of attached policies.
*
*/
private BatchAttachPolicy attachPolicy;
/**
*
* Detaches a policy from a Directory.
*
*/
private BatchDetachPolicy detachPolicy;
/**
*
* Creates an index object. See Indexing and
* search for more information.
*
*/
private BatchCreateIndex createIndex;
/**
*
* Attaches the specified object to the specified index.
*
*/
private BatchAttachToIndex attachToIndex;
/**
*
* Detaches the specified object from the specified index.
*
*/
private BatchDetachFromIndex detachFromIndex;
/**
*
* Attaches a typed link to a specified source and target object. For more information, see Typed Links.
*
*/
private BatchAttachTypedLink attachTypedLink;
/**
*
* Detaches a typed link from a specified source and target object. For more information, see Typed Links.
*
*/
private BatchDetachTypedLink detachTypedLink;
/**
*
* Updates a given object's attributes.
*
*/
private BatchUpdateLinkAttributes updateLinkAttributes;
/**
*
* Creates an object.
*
*
* @param createObject
* Creates an object.
*/
public void setCreateObject(BatchCreateObject createObject) {
this.createObject = createObject;
}
/**
*
* Creates an object.
*
*
* @return Creates an object.
*/
public BatchCreateObject getCreateObject() {
return this.createObject;
}
/**
*
* Creates an object.
*
*
* @param createObject
* Creates an object.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withCreateObject(BatchCreateObject createObject) {
setCreateObject(createObject);
return this;
}
/**
*
* Attaches an object to a Directory.
*
*
* @param attachObject
* Attaches an object to a Directory.
*/
public void setAttachObject(BatchAttachObject attachObject) {
this.attachObject = attachObject;
}
/**
*
* Attaches an object to a Directory.
*
*
* @return Attaches an object to a Directory.
*/
public BatchAttachObject getAttachObject() {
return this.attachObject;
}
/**
*
* Attaches an object to a Directory.
*
*
* @param attachObject
* Attaches an object to a Directory.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withAttachObject(BatchAttachObject attachObject) {
setAttachObject(attachObject);
return this;
}
/**
*
* Detaches an object from a Directory.
*
*
* @param detachObject
* Detaches an object from a Directory.
*/
public void setDetachObject(BatchDetachObject detachObject) {
this.detachObject = detachObject;
}
/**
*
* Detaches an object from a Directory.
*
*
* @return Detaches an object from a Directory.
*/
public BatchDetachObject getDetachObject() {
return this.detachObject;
}
/**
*
* Detaches an object from a Directory.
*
*
* @param detachObject
* Detaches an object from a Directory.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withDetachObject(BatchDetachObject detachObject) {
setDetachObject(detachObject);
return this;
}
/**
*
* Updates a given object's attributes.
*
*
* @param updateObjectAttributes
* Updates a given object's attributes.
*/
public void setUpdateObjectAttributes(BatchUpdateObjectAttributes updateObjectAttributes) {
this.updateObjectAttributes = updateObjectAttributes;
}
/**
*
* Updates a given object's attributes.
*
*
* @return Updates a given object's attributes.
*/
public BatchUpdateObjectAttributes getUpdateObjectAttributes() {
return this.updateObjectAttributes;
}
/**
*
* Updates a given object's attributes.
*
*
* @param updateObjectAttributes
* Updates a given object's attributes.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withUpdateObjectAttributes(BatchUpdateObjectAttributes updateObjectAttributes) {
setUpdateObjectAttributes(updateObjectAttributes);
return this;
}
/**
*
* Deletes an object in a Directory.
*
*
* @param deleteObject
* Deletes an object in a Directory.
*/
public void setDeleteObject(BatchDeleteObject deleteObject) {
this.deleteObject = deleteObject;
}
/**
*
* Deletes an object in a Directory.
*
*
* @return Deletes an object in a Directory.
*/
public BatchDeleteObject getDeleteObject() {
return this.deleteObject;
}
/**
*
* Deletes an object in a Directory.
*
*
* @param deleteObject
* Deletes an object in a Directory.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withDeleteObject(BatchDeleteObject deleteObject) {
setDeleteObject(deleteObject);
return this;
}
/**
*
* A batch operation that adds a facet to an object.
*
*
* @param addFacetToObject
* A batch operation that adds a facet to an object.
*/
public void setAddFacetToObject(BatchAddFacetToObject addFacetToObject) {
this.addFacetToObject = addFacetToObject;
}
/**
*
* A batch operation that adds a facet to an object.
*
*
* @return A batch operation that adds a facet to an object.
*/
public BatchAddFacetToObject getAddFacetToObject() {
return this.addFacetToObject;
}
/**
*
* A batch operation that adds a facet to an object.
*
*
* @param addFacetToObject
* A batch operation that adds a facet to an object.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withAddFacetToObject(BatchAddFacetToObject addFacetToObject) {
setAddFacetToObject(addFacetToObject);
return this;
}
/**
*
* A batch operation that removes a facet from an object.
*
*
* @param removeFacetFromObject
* A batch operation that removes a facet from an object.
*/
public void setRemoveFacetFromObject(BatchRemoveFacetFromObject removeFacetFromObject) {
this.removeFacetFromObject = removeFacetFromObject;
}
/**
*
* A batch operation that removes a facet from an object.
*
*
* @return A batch operation that removes a facet from an object.
*/
public BatchRemoveFacetFromObject getRemoveFacetFromObject() {
return this.removeFacetFromObject;
}
/**
*
* A batch operation that removes a facet from an object.
*
*
* @param removeFacetFromObject
* A batch operation that removes a facet from an object.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withRemoveFacetFromObject(BatchRemoveFacetFromObject removeFacetFromObject) {
setRemoveFacetFromObject(removeFacetFromObject);
return this;
}
/**
*
* Attaches a policy object to a regular object. An object can have a limited number of attached policies.
*
*
* @param attachPolicy
* Attaches a policy object to a regular object. An object can have a limited number of attached policies.
*/
public void setAttachPolicy(BatchAttachPolicy attachPolicy) {
this.attachPolicy = attachPolicy;
}
/**
*
* Attaches a policy object to a regular object. An object can have a limited number of attached policies.
*
*
* @return Attaches a policy object to a regular object. An object can have a limited number of attached policies.
*/
public BatchAttachPolicy getAttachPolicy() {
return this.attachPolicy;
}
/**
*
* Attaches a policy object to a regular object. An object can have a limited number of attached policies.
*
*
* @param attachPolicy
* Attaches a policy object to a regular object. An object can have a limited number of attached policies.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withAttachPolicy(BatchAttachPolicy attachPolicy) {
setAttachPolicy(attachPolicy);
return this;
}
/**
*
* Detaches a policy from a Directory.
*
*
* @param detachPolicy
* Detaches a policy from a Directory.
*/
public void setDetachPolicy(BatchDetachPolicy detachPolicy) {
this.detachPolicy = detachPolicy;
}
/**
*
* Detaches a policy from a Directory.
*
*
* @return Detaches a policy from a Directory.
*/
public BatchDetachPolicy getDetachPolicy() {
return this.detachPolicy;
}
/**
*
* Detaches a policy from a Directory.
*
*
* @param detachPolicy
* Detaches a policy from a Directory.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withDetachPolicy(BatchDetachPolicy detachPolicy) {
setDetachPolicy(detachPolicy);
return this;
}
/**
*
* Creates an index object. See Indexing and
* search for more information.
*
*
* @param createIndex
* Creates an index object. See Indexing and
* search for more information.
*/
public void setCreateIndex(BatchCreateIndex createIndex) {
this.createIndex = createIndex;
}
/**
*
* Creates an index object. See Indexing and
* search for more information.
*
*
* @return Creates an index object. See Indexing and
* search for more information.
*/
public BatchCreateIndex getCreateIndex() {
return this.createIndex;
}
/**
*
* Creates an index object. See Indexing and
* search for more information.
*
*
* @param createIndex
* Creates an index object. See Indexing and
* search for more information.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withCreateIndex(BatchCreateIndex createIndex) {
setCreateIndex(createIndex);
return this;
}
/**
*
* Attaches the specified object to the specified index.
*
*
* @param attachToIndex
* Attaches the specified object to the specified index.
*/
public void setAttachToIndex(BatchAttachToIndex attachToIndex) {
this.attachToIndex = attachToIndex;
}
/**
*
* Attaches the specified object to the specified index.
*
*
* @return Attaches the specified object to the specified index.
*/
public BatchAttachToIndex getAttachToIndex() {
return this.attachToIndex;
}
/**
*
* Attaches the specified object to the specified index.
*
*
* @param attachToIndex
* Attaches the specified object to the specified index.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withAttachToIndex(BatchAttachToIndex attachToIndex) {
setAttachToIndex(attachToIndex);
return this;
}
/**
*
* Detaches the specified object from the specified index.
*
*
* @param detachFromIndex
* Detaches the specified object from the specified index.
*/
public void setDetachFromIndex(BatchDetachFromIndex detachFromIndex) {
this.detachFromIndex = detachFromIndex;
}
/**
*
* Detaches the specified object from the specified index.
*
*
* @return Detaches the specified object from the specified index.
*/
public BatchDetachFromIndex getDetachFromIndex() {
return this.detachFromIndex;
}
/**
*
* Detaches the specified object from the specified index.
*
*
* @param detachFromIndex
* Detaches the specified object from the specified index.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withDetachFromIndex(BatchDetachFromIndex detachFromIndex) {
setDetachFromIndex(detachFromIndex);
return this;
}
/**
*
* Attaches a typed link to a specified source and target object. For more information, see Typed Links.
*
*
* @param attachTypedLink
* Attaches a typed link to a specified source and target object. For more information, see Typed Links.
*/
public void setAttachTypedLink(BatchAttachTypedLink attachTypedLink) {
this.attachTypedLink = attachTypedLink;
}
/**
*
* Attaches a typed link to a specified source and target object. For more information, see Typed Links.
*
*
* @return Attaches a typed link to a specified source and target object. For more information, see Typed Links.
*/
public BatchAttachTypedLink getAttachTypedLink() {
return this.attachTypedLink;
}
/**
*
* Attaches a typed link to a specified source and target object. For more information, see Typed Links.
*
*
* @param attachTypedLink
* Attaches a typed link to a specified source and target object. For more information, see Typed Links.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withAttachTypedLink(BatchAttachTypedLink attachTypedLink) {
setAttachTypedLink(attachTypedLink);
return this;
}
/**
*
* Detaches a typed link from a specified source and target object. For more information, see Typed Links.
*
*
* @param detachTypedLink
* Detaches a typed link from a specified source and target object. For more information, see Typed Links.
*/
public void setDetachTypedLink(BatchDetachTypedLink detachTypedLink) {
this.detachTypedLink = detachTypedLink;
}
/**
*
* Detaches a typed link from a specified source and target object. For more information, see Typed Links.
*
*
* @return Detaches a typed link from a specified source and target object. For more information, see Typed Links.
*/
public BatchDetachTypedLink getDetachTypedLink() {
return this.detachTypedLink;
}
/**
*
* Detaches a typed link from a specified source and target object. For more information, see Typed Links.
*
*
* @param detachTypedLink
* Detaches a typed link from a specified source and target object. For more information, see Typed Links.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withDetachTypedLink(BatchDetachTypedLink detachTypedLink) {
setDetachTypedLink(detachTypedLink);
return this;
}
/**
*
* Updates a given object's attributes.
*
*
* @param updateLinkAttributes
* Updates a given object's attributes.
*/
public void setUpdateLinkAttributes(BatchUpdateLinkAttributes updateLinkAttributes) {
this.updateLinkAttributes = updateLinkAttributes;
}
/**
*
* Updates a given object's attributes.
*
*
* @return Updates a given object's attributes.
*/
public BatchUpdateLinkAttributes getUpdateLinkAttributes() {
return this.updateLinkAttributes;
}
/**
*
* Updates a given object's attributes.
*
*
* @param updateLinkAttributes
* Updates a given object's attributes.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public BatchWriteOperation withUpdateLinkAttributes(BatchUpdateLinkAttributes updateLinkAttributes) {
setUpdateLinkAttributes(updateLinkAttributes);
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 (getCreateObject() != null)
sb.append("CreateObject: ").append(getCreateObject()).append(",");
if (getAttachObject() != null)
sb.append("AttachObject: ").append(getAttachObject()).append(",");
if (getDetachObject() != null)
sb.append("DetachObject: ").append(getDetachObject()).append(",");
if (getUpdateObjectAttributes() != null)
sb.append("UpdateObjectAttributes: ").append(getUpdateObjectAttributes()).append(",");
if (getDeleteObject() != null)
sb.append("DeleteObject: ").append(getDeleteObject()).append(",");
if (getAddFacetToObject() != null)
sb.append("AddFacetToObject: ").append(getAddFacetToObject()).append(",");
if (getRemoveFacetFromObject() != null)
sb.append("RemoveFacetFromObject: ").append(getRemoveFacetFromObject()).append(",");
if (getAttachPolicy() != null)
sb.append("AttachPolicy: ").append(getAttachPolicy()).append(",");
if (getDetachPolicy() != null)
sb.append("DetachPolicy: ").append(getDetachPolicy()).append(",");
if (getCreateIndex() != null)
sb.append("CreateIndex: ").append(getCreateIndex()).append(",");
if (getAttachToIndex() != null)
sb.append("AttachToIndex: ").append(getAttachToIndex()).append(",");
if (getDetachFromIndex() != null)
sb.append("DetachFromIndex: ").append(getDetachFromIndex()).append(",");
if (getAttachTypedLink() != null)
sb.append("AttachTypedLink: ").append(getAttachTypedLink()).append(",");
if (getDetachTypedLink() != null)
sb.append("DetachTypedLink: ").append(getDetachTypedLink()).append(",");
if (getUpdateLinkAttributes() != null)
sb.append("UpdateLinkAttributes: ").append(getUpdateLinkAttributes());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof BatchWriteOperation == false)
return false;
BatchWriteOperation other = (BatchWriteOperation) obj;
if (other.getCreateObject() == null ^ this.getCreateObject() == null)
return false;
if (other.getCreateObject() != null && other.getCreateObject().equals(this.getCreateObject()) == false)
return false;
if (other.getAttachObject() == null ^ this.getAttachObject() == null)
return false;
if (other.getAttachObject() != null && other.getAttachObject().equals(this.getAttachObject()) == false)
return false;
if (other.getDetachObject() == null ^ this.getDetachObject() == null)
return false;
if (other.getDetachObject() != null && other.getDetachObject().equals(this.getDetachObject()) == false)
return false;
if (other.getUpdateObjectAttributes() == null ^ this.getUpdateObjectAttributes() == null)
return false;
if (other.getUpdateObjectAttributes() != null && other.getUpdateObjectAttributes().equals(this.getUpdateObjectAttributes()) == false)
return false;
if (other.getDeleteObject() == null ^ this.getDeleteObject() == null)
return false;
if (other.getDeleteObject() != null && other.getDeleteObject().equals(this.getDeleteObject()) == false)
return false;
if (other.getAddFacetToObject() == null ^ this.getAddFacetToObject() == null)
return false;
if (other.getAddFacetToObject() != null && other.getAddFacetToObject().equals(this.getAddFacetToObject()) == false)
return false;
if (other.getRemoveFacetFromObject() == null ^ this.getRemoveFacetFromObject() == null)
return false;
if (other.getRemoveFacetFromObject() != null && other.getRemoveFacetFromObject().equals(this.getRemoveFacetFromObject()) == false)
return false;
if (other.getAttachPolicy() == null ^ this.getAttachPolicy() == null)
return false;
if (other.getAttachPolicy() != null && other.getAttachPolicy().equals(this.getAttachPolicy()) == false)
return false;
if (other.getDetachPolicy() == null ^ this.getDetachPolicy() == null)
return false;
if (other.getDetachPolicy() != null && other.getDetachPolicy().equals(this.getDetachPolicy()) == false)
return false;
if (other.getCreateIndex() == null ^ this.getCreateIndex() == null)
return false;
if (other.getCreateIndex() != null && other.getCreateIndex().equals(this.getCreateIndex()) == false)
return false;
if (other.getAttachToIndex() == null ^ this.getAttachToIndex() == null)
return false;
if (other.getAttachToIndex() != null && other.getAttachToIndex().equals(this.getAttachToIndex()) == false)
return false;
if (other.getDetachFromIndex() == null ^ this.getDetachFromIndex() == null)
return false;
if (other.getDetachFromIndex() != null && other.getDetachFromIndex().equals(this.getDetachFromIndex()) == false)
return false;
if (other.getAttachTypedLink() == null ^ this.getAttachTypedLink() == null)
return false;
if (other.getAttachTypedLink() != null && other.getAttachTypedLink().equals(this.getAttachTypedLink()) == false)
return false;
if (other.getDetachTypedLink() == null ^ this.getDetachTypedLink() == null)
return false;
if (other.getDetachTypedLink() != null && other.getDetachTypedLink().equals(this.getDetachTypedLink()) == false)
return false;
if (other.getUpdateLinkAttributes() == null ^ this.getUpdateLinkAttributes() == null)
return false;
if (other.getUpdateLinkAttributes() != null && other.getUpdateLinkAttributes().equals(this.getUpdateLinkAttributes()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getCreateObject() == null) ? 0 : getCreateObject().hashCode());
hashCode = prime * hashCode + ((getAttachObject() == null) ? 0 : getAttachObject().hashCode());
hashCode = prime * hashCode + ((getDetachObject() == null) ? 0 : getDetachObject().hashCode());
hashCode = prime * hashCode + ((getUpdateObjectAttributes() == null) ? 0 : getUpdateObjectAttributes().hashCode());
hashCode = prime * hashCode + ((getDeleteObject() == null) ? 0 : getDeleteObject().hashCode());
hashCode = prime * hashCode + ((getAddFacetToObject() == null) ? 0 : getAddFacetToObject().hashCode());
hashCode = prime * hashCode + ((getRemoveFacetFromObject() == null) ? 0 : getRemoveFacetFromObject().hashCode());
hashCode = prime * hashCode + ((getAttachPolicy() == null) ? 0 : getAttachPolicy().hashCode());
hashCode = prime * hashCode + ((getDetachPolicy() == null) ? 0 : getDetachPolicy().hashCode());
hashCode = prime * hashCode + ((getCreateIndex() == null) ? 0 : getCreateIndex().hashCode());
hashCode = prime * hashCode + ((getAttachToIndex() == null) ? 0 : getAttachToIndex().hashCode());
hashCode = prime * hashCode + ((getDetachFromIndex() == null) ? 0 : getDetachFromIndex().hashCode());
hashCode = prime * hashCode + ((getAttachTypedLink() == null) ? 0 : getAttachTypedLink().hashCode());
hashCode = prime * hashCode + ((getDetachTypedLink() == null) ? 0 : getDetachTypedLink().hashCode());
hashCode = prime * hashCode + ((getUpdateLinkAttributes() == null) ? 0 : getUpdateLinkAttributes().hashCode());
return hashCode;
}
@Override
public BatchWriteOperation clone() {
try {
return (BatchWriteOperation) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
@com.amazonaws.annotation.SdkInternalApi
@Override
public void marshall(ProtocolMarshaller protocolMarshaller) {
com.amazonaws.services.clouddirectory.model.transform.BatchWriteOperationMarshaller.getInstance().marshall(this, protocolMarshaller);
}
}