Class OciExtension
io.helidon.integrations.oci.sdk.cdi.OciExtension instead. This
 integration will follow the same terminology and usage pattern as specified
 for Helidon MP integration. The implementation strategy, however, is
 different between the two. Please take a moment to familiarize yourself to the
 terminology and general approach before continuing further.
 This module enables the injection of any service interface, service client, service client builder, asynchronous service interface, asynchronous service client, or asynchronous service client builder from the Oracle Cloud Infrastructure Java SDK.
 Additionally, this module enables the injection
 of the AbstractAuthenticationDetailsProvider,
 which allows the corresponding service client to authenticate with the service.
 
In all cases, user-supplied configuration will be preferred over any
 default configuration. Please refer to ociConfig() for details.
 
Basic Usage
To use this extension, make sure it is on your project's runtime classpath. Also be sure the helidon-integrations-oci-codegen is on your APT. To inject a service interface namedcom.oracle.bmc.cloudexample.CloudExample
 (or an analogous asynchronous service interface), you will also
 need to ensure that its containing artifact is on your compile
 classpath (e.g. oci-java-sdk-cloudexample-$VERSION.jar,
 where $VERSION should be replaced by a suitable version
 number).
 Advanced Usage
In the course of providing injection support for a service interface or an asynchronous
 service interface, this extension will
 create service client builder and asynchronous service client
 builder instances by invoking the static builder()
 method that is present on all OCI service client classes, and will then
 provide those instances as regular Injection/Injectable services.  The resulting service client or
 asynchronous service client will be built by that builder's build(AbstractAuthenticationDetailsProvider) method and will
 itself be provided as a service instance.
A user may wish to customize this builder so that the resulting service client or asynchronous service client reflects the customization. She has two options:
- She may provide her own instance with the service client builder
 type (or asynchronous client builder type).  In this case, the user
 should supply an overriding (i.e., higher weighted) service provider
 implementation than the one provided by OciAuthenticationDetailsProvider.
- She may customize the service client builder (or asynchronous
 service client builder) supplied by this OciAuthenticationDetailsProvider. To do this, she must supply a custom configuration viaociConfig().
Configuration
This extension uses theOciConfig for configuration. Refer to it
 for details.- See Also:
- 
Method SummaryModifier and TypeMethodDescriptionDeprecated, for removal: This API element is subject to removal in a future version.The supplier for the raw config-backed by the OCI config source(s).static voidconfigSupplier(Supplier<Config> configSupplier) Deprecated, for removal: This API element is subject to removal in a future version.Establishes the supplier for the raw config-backed by the OCI config source(s).static Class<? extends com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider> configuredAuthenticationDetailsProvider(boolean verifyIsAvailable) Deprecated, for removal: This API element is subject to removal in a future version.The configured authentication provider strategy type name.static voidfallbackConfigSupplier(Supplier<Config> configSupplier) Deprecated, for removal: This API element is subject to removal in a future version.Establishes the fallback config supplier used only when theDEFAULT_OCI_GLOBAL_CONFIG_FILEis not physically present, and there has been no config supplier explicitly established viaconfigSupplier(Supplier).static booleanisSufficientlyConfigured(Config config) Deprecated, for removal: This API element is subject to removal in a future version.Returnstrueif the given config is sufficiently configured in order to identity an OCI authentication strategy.static Supplier<? extends com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider> Deprecated, for removal: This API element is subject to removal in a future version.The supplier for the globally configured OCI authentication provider.static OciConfigDeprecated, for removal: This API element is subject to removal in a future version.Returns the globalOciConfigbean that is currently defined in the bootstrap environment.
- 
Method Details- 
configuredAuthenticationDetailsProviderpublic static Class<? extends com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider> configuredAuthenticationDetailsProvider(boolean verifyIsAvailable) Deprecated, for removal: This API element is subject to removal in a future version.The configured authentication provider strategy type name. Note, however, that the authentication strategy returned may not necessarily be available. The configured authentication provider merely returns what is configured via "auth-strategy" and/or "auth-strategies". In order to additionally check if the provider is available, theverifyIsAvailableargument should betrue.- Parameters:
- verifyIsAvailable- flag to indicate whether the provider should be checked for availability
- Returns:
- the configured authentication type name
 
- 
ociConfigDeprecated, for removal: This API element is subject to removal in a future version.Returns the globalOciConfigbean that is currently defined in the bootstrap environment.The implementation will first look for an oci.yamlfile, and if found will use that file to establish the global oci-specific bootstrapConfigSource.If the implementation is unable to find this file, then a fallback mechanism will be used to find it in the configuration based on GlobalConfig, using a top-level attribute key named "oci".The final fallback mechanism will use an autoauthentication strategy - seeOciConfigBlueprintfor details.- Returns:
- the bootstrap oci config bean
- See Also:
 
- 
ociAuthenticationProviderpublic static Supplier<? extends com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider> ociAuthenticationProvider()Deprecated, for removal: This API element is subject to removal in a future version.The supplier for the globally configured OCI authentication provider.- Returns:
- the supplier for the globally configured authentication provider
- See Also:
 
- 
configSupplierDeprecated, for removal: This API element is subject to removal in a future version.The supplier for the raw config-backed by the OCI config source(s).- Returns:
- the supplier for the raw config-backed by the OCI config source(s)
- See Also:
 
- 
configSupplierDeprecated, for removal: This API element is subject to removal in a future version.Establishes the supplier for the raw config-backed by the OCI config source(s). Setting this will override the usage of theDEFAULT_OCI_GLOBAL_CONFIG_FILEas the backing configuration file.- Parameters:
- configSupplier- the config supplier
- See Also:
 
- 
fallbackConfigSupplierDeprecated, for removal: This API element is subject to removal in a future version.Establishes the fallback config supplier used only when theDEFAULT_OCI_GLOBAL_CONFIG_FILEis not physically present, and there has been no config supplier explicitly established viaconfigSupplier(Supplier).This method is typically used when running in CDI in order to allow for the fallback of using microprofile configuration. - Parameters:
- configSupplier- the fallback config supplier
- See Also:
 
- 
isSufficientlyConfiguredDeprecated, for removal: This API element is subject to removal in a future version.Returnstrueif the given config is sufficiently configured in order to identity an OCI authentication strategy. IffalsethenOciAuthenticationDetailsProvider.AuthStrategy.AUTOwill be applied.- Parameters:
- config- the config
- Returns:
- true if the given config can be used to identify an OCI authentication strategy
 
 
-