com.ironcorelabs.sdk.GroupCreateResult Maven / Gradle / Ivy
// Automatically generated by rust_swig
package com.ironcorelabs.sdk;
/**
* Group information from creation.
*/
public final class GroupCreateResult {
private GroupCreateResult() {}
/**
* get the unique id of the group
*/
public final GroupId getId() {
long ret = do_getId(mNativeObj);
GroupId convRet = new GroupId(InternalPointerMarker.RAW_PTR, ret);
return convRet;
}
private static native long do_getId(long self);
/**
* null if the group has no name, else the group's name
*/
public final java.util.Optional getName() {
long ret = do_getName(mNativeObj);
java.util.Optional convRet;
if (ret != 0) {
convRet = java.util.Optional.of(new GroupName(InternalPointerMarker.RAW_PTR, ret));
} else {
convRet = java.util.Optional.empty();
}
return convRet;
}
private static native long do_getName(long self);
/**
* public key for encrypting to the group
*/
public final PublicKey getGroupMasterPublicKey() {
long ret = do_getGroupMasterPublicKey(mNativeObj);
PublicKey convRet = new PublicKey(InternalPointerMarker.RAW_PTR, ret);
return convRet;
}
private static native long do_getGroupMasterPublicKey(long self);
/**
* true if the calling user is a group admin
*/
public final boolean isAdmin() {
boolean ret = do_isAdmin(mNativeObj);
return ret;
}
private static native boolean do_isAdmin(long self);
/**
* true if the calling user is a group member
*/
public final boolean isMember() {
boolean ret = do_isMember(mNativeObj);
return ret;
}
private static native boolean do_isMember(long self);
/**
* owner of the group
*/
public final UserId getOwner() {
long ret = do_getOwner(mNativeObj);
UserId convRet = new UserId(InternalPointerMarker.RAW_PTR, ret);
return convRet;
}
private static native long do_getOwner(long self);
/**
* a GroupUserList of group admins. Group admins can change group membership.
*/
public final GroupUserList getAdminList() {
long ret = do_getAdminList(mNativeObj);
GroupUserList convRet = new GroupUserList(InternalPointerMarker.RAW_PTR, ret);
return convRet;
}
private static native long do_getAdminList(long self);
/**
* a GroupUserList of group members. Members of a group can decrypt values encrypted to the group.
*/
public final GroupUserList getMemberList() {
long ret = do_getMemberList(mNativeObj);
GroupUserList convRet = new GroupUserList(InternalPointerMarker.RAW_PTR, ret);
return convRet;
}
private static native long do_getMemberList(long self);
/**
* date and time that the group was created
*/
public final java.util.Date getCreated() {
long ret = do_getCreated(mNativeObj);
java.util.Date convRet = new java.util.Date(ret);
return convRet;
}
private static native long do_getCreated(long self);
/**
* date and time that the group was last updated
*/
public final java.util.Date getLastUpdated() {
long ret = do_getLastUpdated(mNativeObj);
java.util.Date convRet = new java.util.Date(ret);
return convRet;
}
private static native long do_getLastUpdated(long self);
/**
* null if the calling user is not a group admin, else a NullableBoolean of if the group private key needs rotation
*/
public final java.util.Optional getNeedsRotation() {
long ret = do_getNeedsRotation(mNativeObj);
java.util.Optional convRet;
if (ret != 0) {
convRet = java.util.Optional.of(new NullableBoolean(InternalPointerMarker.RAW_PTR, ret));
} else {
convRet = java.util.Optional.empty();
}
return convRet;
}
private static native long do_getNeedsRotation(long self);
public final int hashCode() {
int ret = do_hashCode(mNativeObj);
return ret;
}
private static native int do_hashCode(long self);
private final boolean rustEq(GroupCreateResult o) {
long a0 = o.mNativeObj;
boolean ret = do_rustEq(mNativeObj, a0);
JNIReachabilityFence.reachabilityFence1(o);
return ret;
}
private static native boolean do_rustEq(long self, long o);
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*/ GroupCreateResult(InternalPointerMarker marker, long ptr) {
assert marker == InternalPointerMarker.RAW_PTR;
this.mNativeObj = ptr;
}
/*package*/ long mNativeObj;
public boolean equals(Object obj) {
if(obj instanceof GroupCreateResult){
GroupCreateResult other = (GroupCreateResult) obj;
return other.rustEq(this);
}
return false;
}
}