com.ionoscloud.s3.RemoveObjectsArgs Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of ionos-cloud-sdk-s3 Show documentation
Show all versions of ionos-cloud-sdk-s3 Show documentation
IONOS Java SDK for Amazon S3 Compatible Cloud Storage
The newest version!
package com.ionoscloud.s3;
import com.ionoscloud.s3.messages.DeleteObject;
import java.util.LinkedList;
import java.util.Objects;
/** Argument class of {@link ApiAsyncClient#removeObjects} and {@link ApiClient#removeObjects}. */
public class RemoveObjectsArgs extends BucketArgs {
private boolean bypassGovernanceMode;
private Iterable objects = new LinkedList<>();
public boolean bypassGovernanceMode() {
return bypassGovernanceMode;
}
public Iterable objects() {
return objects;
}
public static Builder builder() {
return new Builder();
}
/** Argument builder of {@link RemoveObjectsArgs}. */
public static final class Builder extends BucketArgs.Builder {
public Builder bypassGovernanceMode(boolean flag) {
operations.add(args -> args.bypassGovernanceMode = flag);
return this;
}
public Builder objects(Iterable objects) {
validateNotNull(objects, "objects");
operations.add(args -> args.objects = objects);
return this;
}
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof RemoveObjectsArgs)) return false;
if (!super.equals(o)) return false;
RemoveObjectsArgs that = (RemoveObjectsArgs) o;
return bypassGovernanceMode == that.bypassGovernanceMode
&& Objects.equals(objects, that.objects);
}
@Override
public int hashCode() {
return Objects.hash(super.hashCode(), bypassGovernanceMode, objects);
}
}