@Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }

        final PublicAccessBlockConfiguration that = (PublicAccessBlockConfiguration) o;

        if (blockPublicAcls != null ? !blockPublicAcls.equals(that.blockPublicAcls) : that.blockPublicAcls != null) {
            return false;
        }
        if (ignorePublicAcls != null ? !ignorePublicAcls.equals(that.ignorePublicAcls) : that.ignorePublicAcls != null) {
            return false;
        }
        if (blockPublicPolicy != null ? !blockPublicPolicy.equals(that.blockPublicPolicy) : that.blockPublicPolicy != null) {
            return false;
        }
        return restrictPublicBuckets != null ? restrictPublicBuckets.equals(that.restrictPublicBuckets) : that.restrictPublicBuckets == null;
    }
<p>
Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to
<code>TRUE</code> restricts access to this bucket to only Amazon Web Services service principals and authorized users within this
account if the bucket has a public policy.
</p>
<p>
Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account
access within any public bucket policy, including non-public delegation to specific accounts, is blocked.
</p>
aws-java-sdk-s3/src/main/java/com/amazonaws/services/s3/model/PublicAccessBlockConfiguration.java