Class DefaultOpenSslCredential
java.lang.Object
io.netty.util.AbstractReferenceCounted
io.netty.handler.ssl.DefaultOpenSslCredential
- All Implemented Interfaces:
OpenSslCredential, OpenSslCredentialPointer, ReferenceCounted
final class DefaultOpenSslCredential
extends AbstractReferenceCounted
implements OpenSslCredentialPointer
Default implementation of
OpenSslCredential.
This class manages the lifecycle of a native BoringSSL SSL_CREDENTIAL object.
-
Nested Class Summary
Nested classes/interfaces inherited from interface OpenSslCredential
OpenSslCredential.CredentialType -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate longprivate final ResourceLeakTracker<DefaultOpenSslCredential> private static final ResourceLeakDetector<DefaultOpenSslCredential> private final OpenSslCredential.CredentialType -
Constructor Summary
ConstructorsConstructorDescriptionDefaultOpenSslCredential(long credential, OpenSslCredential.CredentialType type) Creates a new credential instance. -
Method Summary
Modifier and TypeMethodDescriptionlongReturns the nativeSSL_CREDENTIALpointer address.protected voidCalled onceAbstractReferenceCounted.refCnt()is equals 0.booleanrelease()Decreases the reference count by1and deallocates this object if the reference count reaches at0.booleanrelease(int decrement) Decreases the reference count by the specifieddecrementand deallocates this object if the reference count reaches at0.retain()Increases the reference count by1.retain(int increment) Increases the reference count by the specifiedincrement.touch()Records the current access location of this object for debugging purposes.Records the current access location of this object with an additional arbitrary information for debugging purposes.type()Returns the type of this credential.Methods inherited from class AbstractReferenceCounted
refCnt, setRefCntMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ReferenceCounted
refCnt
-
Field Details
-
leakDetector
-
leak
-
type
-
credential
private long credential
-
-
Constructor Details
-
DefaultOpenSslCredential
DefaultOpenSslCredential(long credential, OpenSslCredential.CredentialType type) Creates a new credential instance.- Parameters:
credential- the native SSL_CREDENTIAL pointertype- the credential type
-
-
Method Details
-
credentialAddress
public long credentialAddress()Description copied from interface:OpenSslCredentialPointerReturns the nativeSSL_CREDENTIALpointer address.- Specified by:
credentialAddressin interfaceOpenSslCredentialPointer- Returns:
- the native pointer address
-
type
Description copied from interface:OpenSslCredentialReturns the type of this credential.- Specified by:
typein interfaceOpenSslCredential- Returns:
- the credential type
-
deallocate
protected void deallocate()Description copied from class:AbstractReferenceCountedCalled onceAbstractReferenceCounted.refCnt()is equals 0.- Specified by:
deallocatein classAbstractReferenceCounted
-
retain
Description copied from interface:ReferenceCountedIncreases the reference count by1.- Specified by:
retainin interfaceOpenSslCredential- Specified by:
retainin interfaceReferenceCounted- Overrides:
retainin classAbstractReferenceCounted
-
retain
Description copied from interface:ReferenceCountedIncreases the reference count by the specifiedincrement.- Specified by:
retainin interfaceOpenSslCredential- Specified by:
retainin interfaceReferenceCounted- Overrides:
retainin classAbstractReferenceCounted
-
touch
Description copied from interface:ReferenceCountedRecords the current access location of this object for debugging purposes. If this object is determined to be leaked, the information recorded by this operation will be provided to you viaResourceLeakDetector. This method is a shortcut totouch(null).- Specified by:
touchin interfaceOpenSslCredential- Specified by:
touchin interfaceReferenceCounted- Overrides:
touchin classAbstractReferenceCounted
-
touch
Description copied from interface:ReferenceCountedRecords the current access location of this object with an additional arbitrary information for debugging purposes. If this object is determined to be leaked, the information recorded by this operation will be provided to you viaResourceLeakDetector.- Specified by:
touchin interfaceOpenSslCredential- Specified by:
touchin interfaceReferenceCounted
-
release
public boolean release()Description copied from interface:ReferenceCountedDecreases the reference count by1and deallocates this object if the reference count reaches at0.- Specified by:
releasein interfaceReferenceCounted- Overrides:
releasein classAbstractReferenceCounted- Returns:
trueif and only if the reference count became0and this object has been deallocated
-
release
public boolean release(int decrement) Description copied from interface:ReferenceCountedDecreases the reference count by the specifieddecrementand deallocates this object if the reference count reaches at0.- Specified by:
releasein interfaceReferenceCounted- Overrides:
releasein classAbstractReferenceCounted- Returns:
trueif and only if the reference count became0and this object has been deallocated
-