Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
grpc_core::CertificateProviderStore Class Reference

#include <certificate_provider_store.h>

Inheritance diagram for grpc_core::CertificateProviderStore:
Inheritance graph
[legend]

Classes

class  CertificateProviderWrapper
 
struct  PluginDefinition
 

Public Types

typedef std::map< std::string, PluginDefinitionPluginDefinitionMap
 

Public Member Functions

 CertificateProviderStore (PluginDefinitionMap plugin_config_map)
 
RefCountedPtr< grpc_tls_certificate_providerCreateOrGetCertificateProvider (absl::string_view key)
 
void Orphan () override
 
- Public Member Functions inherited from grpc_core::InternallyRefCounted< CertificateProviderStore >
 InternallyRefCounted (const InternallyRefCounted &)=delete
 
InternallyRefCountedoperator= (const InternallyRefCounted &)=delete
 
- Public Member Functions inherited from grpc_core::Orphanable
Orphanableoperator= (const Orphanable &)=delete
 
 Orphanable (const Orphanable &)=delete
 

Private Member Functions

std::map< absl::string_view, CertificateProviderWrapper * > certificate_providers_map_ ABSL_GUARDED_BY (mu_)
 
RefCountedPtr< CertificateProviderWrapperCreateCertificateProviderLocked (absl::string_view key) ABSL_EXCLUSIVE_LOCKS_REQUIRED(mu_)
 
void ReleaseCertificateProvider (absl::string_view key, CertificateProviderWrapper *wrapper)
 

Private Attributes

Mutex mu_
 
const PluginDefinitionMap plugin_config_map_
 

Additional Inherited Members

- Protected Member Functions inherited from grpc_core::InternallyRefCounted< CertificateProviderStore >
 InternallyRefCounted (const char *trace=nullptr, intptr_t initial_refcount=1)
 
RefCountedPtr< CertificateProviderStoreRef () GRPC_MUST_USE_RESULT
 
RefCountedPtr< CertificateProviderStoreRef (const DebugLocation &location, const char *reason) GRPC_MUST_USE_RESULT
 
void Unref ()
 
void Unref (const DebugLocation &location, const char *reason)
 
 ~InternallyRefCounted () override=default
 
- Protected Member Functions inherited from grpc_core::Orphanable
 Orphanable ()
 
virtual ~Orphanable ()
 

Detailed Description

Definition at line 46 of file certificate_provider_store.h.

Member Typedef Documentation

◆ PluginDefinitionMap

Definition at line 55 of file certificate_provider_store.h.

Constructor & Destructor Documentation

◆ CertificateProviderStore()

grpc_core::CertificateProviderStore::CertificateProviderStore ( PluginDefinitionMap  plugin_config_map)
inlineexplicit

Definition at line 57 of file certificate_provider_store.h.

Member Function Documentation

◆ ABSL_GUARDED_BY()

std::map<absl::string_view, CertificateProviderWrapper*> certificate_providers_map_ grpc_core::CertificateProviderStore::ABSL_GUARDED_BY ( mu_  )
private

◆ CreateCertificateProviderLocked()

RefCountedPtr< CertificateProviderStore::CertificateProviderWrapper > grpc_core::CertificateProviderStore::CreateCertificateProviderLocked ( absl::string_view  key)
private

Definition at line 66 of file certificate_provider_store.cc.

◆ CreateOrGetCertificateProvider()

RefCountedPtr< grpc_tls_certificate_provider > grpc_core::CertificateProviderStore::CreateOrGetCertificateProvider ( absl::string_view  key)

Definition at line 45 of file certificate_provider_store.cc.

◆ Orphan()

void grpc_core::CertificateProviderStore::Orphan ( )
inlineoverridevirtual

Implements grpc_core::Orphanable.

Definition at line 68 of file certificate_provider_store.h.

◆ ReleaseCertificateProvider()

void grpc_core::CertificateProviderStore::ReleaseCertificateProvider ( absl::string_view  key,
CertificateProviderWrapper wrapper 
)
private

Definition at line 88 of file certificate_provider_store.cc.

Member Data Documentation

◆ mu_

Mutex grpc_core::CertificateProviderStore::mu_
private

Definition at line 120 of file certificate_provider_store.h.

◆ plugin_config_map_

const PluginDefinitionMap grpc_core::CertificateProviderStore::plugin_config_map_
private

Definition at line 122 of file certificate_provider_store.h.


The documentation for this class was generated from the following files:


grpc
Author(s):
autogenerated on Fri May 16 2025 03:03:35