com.ironcorelabs.sdk.PublicKey Maven / Gradle / Ivy
// Automatically generated by rust_swig
package com.ironcorelabs.sdk;
/**
* Represents an asymmetric public key that wraps the underlying bytes
* of the key.
*/
public final class PublicKey {
private PublicKey() {}
public static PublicKey validate(byte [] bytes) throws Exception {
long ret = do_validate(bytes);
PublicKey convRet = new PublicKey(InternalPointerMarker.RAW_PTR, ret);
return convRet;
}
private static native long do_validate(byte [] bytes) throws Exception;
public final byte [] asBytes() {
byte [] ret = do_asBytes(mNativeObj);
return ret;
}
private static native byte [] do_asBytes(long self);
public synchronized void delete() {
if (mNativeObj != 0) {
do_delete(mNativeObj);
mNativeObj = 0;
}
}
@Override
protected void finalize() throws Throwable {
try {
delete();
}
finally {
super.finalize();
}
}
private static native void do_delete(long me);
/*package*/ PublicKey(InternalPointerMarker marker, long ptr) {
assert marker == InternalPointerMarker.RAW_PTR;
this.mNativeObj = ptr;
}
/*package*/ long mNativeObj;
}