com.ironcorelabs.sdk.DocumentDecryptUnmanagedResult Maven / Gradle / Ivy
// Automatically generated by rust_swig
package com.ironcorelabs.sdk;
/**
* Result of decrypting an unmanaged document. Includes the id and the decrypted bytes.
*/
public final class DocumentDecryptUnmanagedResult {
private DocumentDecryptUnmanagedResult() {}
/**
* Unique (within the segment) id of the document
*/
public final DocumentId getId() {
long ret = do_getId(mNativeObj);
DocumentId convRet = new DocumentId(InternalPointerMarker.RAW_PTR, ret);
return convRet;
}
private static native long do_getId(long self);
/**
* Get the bytes of the decrypted document
*/
public final byte [] getDecryptedData() {
byte [] ret = do_getDecryptedData(mNativeObj);
return ret;
}
private static native byte [] do_getDecryptedData(long self);
/**
* User/Group that granted access to the encrypted data. More specifically,
* this is the user/group associated with the edek that was chosen and transformed by the webservice.
*/
public final UserOrGroupId getAccessViaUserOrGroup() {
long ret = do_getAccessViaUserOrGroup(mNativeObj);
UserOrGroupId convRet = new UserOrGroupId(InternalPointerMarker.RAW_PTR, ret);
return convRet;
}
private static native long do_getAccessViaUserOrGroup(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*/ DocumentDecryptUnmanagedResult(InternalPointerMarker marker, long ptr) {
assert marker == InternalPointerMarker.RAW_PTR;
this.mNativeObj = ptr;
}
/*package*/ long mNativeObj;
}