Package com.exonum.binding.proxy
Class NativeHandle
- java.lang.Object
 - 
- com.exonum.binding.proxy.NativeHandle
 
 
- 
- All Implemented Interfaces:
 java.lang.AutoCloseable
public final class NativeHandle extends java.lang.Object implements java.lang.AutoCloseableAn implementation-specific handle to the native object. Once closed, can no longer be accessed. 
- 
- 
Field Summary
Fields Modifier and Type Field Description static longINVALID_NATIVE_HANDLEA reserved value for an invalid native handle, equal tonullptrin C++. 
- 
Constructor Summary
Constructors Constructor Description NativeHandle(long nativeHandle)Creates new native handle. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()longget()Returns a native implementation-specific handle if it may be safely used to access the native object.java.lang.StringtoString() 
 - 
 
- 
- 
Field Detail
- 
INVALID_NATIVE_HANDLE
public static final long INVALID_NATIVE_HANDLE
A reserved value for an invalid native handle, equal tonullptrin C++.- See Also:
 - Constant Field Values
 
 
 - 
 
- 
Method Detail
- 
get
public long get()
Returns a native implementation-specific handle if it may be safely used to access the native object.The returned value shall only be passed as an argument to native methods.
Warning: do not cache the return value, as you won't be able to catch use-after-free.
- Throws:
 java.lang.IllegalStateException- if this native handle is invalid (closed or nullptr)
 
- 
close
public void close()
- Specified by:
 closein interfacejava.lang.AutoCloseable
 
- 
toString
public java.lang.String toString()
- Overrides:
 toStringin classjava.lang.Object
 
 - 
 
 -