Package io.grpc.xds.internal.security
Class DynamicSslContextProvider
java.lang.Object
io.grpc.xds.internal.security.SslContextProvider
io.grpc.xds.internal.security.DynamicSslContextProvider
- All Implemented Interfaces:
Closeable,Closeable,AutoCloseable
- Direct Known Subclasses:
CertProviderSslContextProvider
Base class for dynamic
SslContextProviders.-
Nested Class Summary
Nested classes/interfaces inherited from class io.grpc.xds.internal.security.SslContextProvider
SslContextProvider.Callback, SslContextProvider.SslContextGetter -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final List<SslContextProvider.Callback> protected io.netty.handler.ssl.SslContextprotected final CertificateValidationContextFields inherited from class io.grpc.xds.internal.security.SslContextProvider
tlsContext -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedDynamicSslContextProvider(EnvoyServerProtoData.BaseTlsContext tlsContext, CertificateValidationContext staticCertValidationContext) -
Method Summary
Modifier and TypeMethodDescriptionfinal voidaddCallback(SslContextProvider.Callback callback) Registers a callback on the given executor.protected final voidcallPerformCallback(SslContextProvider.Callback callback, io.netty.handler.ssl.SslContext sslContextCopy) private List<SslContextProvider.Callback> protected abstract CertificateValidationContextio.netty.handler.ssl.SslContextprotected abstract io.netty.handler.ssl.SslContextBuildergetSslContextBuilder(CertificateValidationContext certificateValidationContext) Gets a server or client side SslContextBuilder.private final voidmakePendingCallbacks(io.netty.handler.ssl.SslContext sslContextCopy, List<SslContextProvider.Callback> pendingCallbacksCopy) final voidonError(io.grpc.Status error) Propagates error to all the callback receivers.protected final voidMethods inherited from class io.grpc.xds.internal.security.SslContextProvider
close, getCommonTlsContext, getDownstreamTlsContext, getUpstreamTlsContext, performCallback, setClientAuthValues
-
Field Details
-
pendingCallbacks
-
staticCertificateValidationContext
-
sslContext
-
-
Constructor Details
-
DynamicSslContextProvider
protected DynamicSslContextProvider(EnvoyServerProtoData.BaseTlsContext tlsContext, CertificateValidationContext staticCertValidationContext)
-
-
Method Details
-
getSslContext
-
generateCertificateValidationContext
-
getSslContextBuilder
protected abstract io.netty.handler.ssl.SslContextBuilder getSslContextBuilder(CertificateValidationContext certificateValidationContext) throws CertificateException, IOException, CertStoreException Gets a server or client side SslContextBuilder. -
updateSslContext
protected final void updateSslContext() -
callPerformCallback
protected final void callPerformCallback(SslContextProvider.Callback callback, io.netty.handler.ssl.SslContext sslContextCopy) -
addCallback
Description copied from class:SslContextProviderRegisters a callback on the given executor. The callback will run when SslContext becomes available or immediately if the result is already available.- Specified by:
addCallbackin classSslContextProvider
-
makePendingCallbacks
private final void makePendingCallbacks(io.netty.handler.ssl.SslContext sslContextCopy, List<SslContextProvider.Callback> pendingCallbacksCopy) -
onError
public final void onError(io.grpc.Status error) Propagates error to all the callback receivers. -
clonePendingCallbacksAndClear
-