hydra.langs.parquet.format.AesGcmV1 Maven / Gradle / Ivy
package hydra.langs.parquet.format;
import java.io.Serializable;
public class AesGcmV1 implements Serializable {
public static final hydra.core.Name NAME = new hydra.core.Name("hydra/langs/parquet/format.AesGcmV1");
public final java.util.Optional aadPrefix;
public final java.util.Optional aadFileUnique;
/**
* In files encrypted with AAD prefix without storing it, readers must supply the prefix
*/
public final java.util.Optional supplyAadPrefix;
public AesGcmV1 (java.util.Optional aadPrefix, java.util.Optional aadFileUnique, java.util.Optional supplyAadPrefix) {
this.aadPrefix = aadPrefix;
this.aadFileUnique = aadFileUnique;
this.supplyAadPrefix = supplyAadPrefix;
}
@Override
public boolean equals(Object other) {
if (!(other instanceof AesGcmV1)) {
return false;
}
AesGcmV1 o = (AesGcmV1) (other);
return aadPrefix.equals(o.aadPrefix) && aadFileUnique.equals(o.aadFileUnique) && supplyAadPrefix.equals(o.supplyAadPrefix);
}
@Override
public int hashCode() {
return 2 * aadPrefix.hashCode() + 3 * aadFileUnique.hashCode() + 5 * supplyAadPrefix.hashCode();
}
public AesGcmV1 withAadPrefix(java.util.Optional aadPrefix) {
return new AesGcmV1(aadPrefix, aadFileUnique, supplyAadPrefix);
}
public AesGcmV1 withAadFileUnique(java.util.Optional aadFileUnique) {
return new AesGcmV1(aadPrefix, aadFileUnique, supplyAadPrefix);
}
public AesGcmV1 withSupplyAadPrefix(java.util.Optional supplyAadPrefix) {
return new AesGcmV1(aadPrefix, aadFileUnique, supplyAadPrefix);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy