Class SecretManagerConfigDataLocationResolver
java.lang.Object
com.google.cloud.spring.autoconfigure.secretmanager.SecretManagerConfigDataLocationResolver
- All Implemented Interfaces:
org.springframework.boot.context.config.ConfigDataLocationResolver<SecretManagerConfigDataResource>
public class SecretManagerConfigDataLocationResolver
extends Object
implements org.springframework.boot.context.config.ConfigDataLocationResolver<SecretManagerConfigDataResource>
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanisResolvable(org.springframework.boot.context.config.ConfigDataLocationResolverContext context, org.springframework.boot.context.config.ConfigDataLocation location) Checks if the property can be resolved by the Secret Manager resolver.resolve(org.springframework.boot.context.config.ConfigDataLocationResolverContext context, org.springframework.boot.context.config.ConfigDataLocation location) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.boot.context.config.ConfigDataLocationResolver
resolveProfileSpecific
-
Constructor Details
-
SecretManagerConfigDataLocationResolver
public SecretManagerConfigDataLocationResolver()
-
-
Method Details
-
isResolvable
public boolean isResolvable(org.springframework.boot.context.config.ConfigDataLocationResolverContext context, org.springframework.boot.context.config.ConfigDataLocation location) Checks if the property can be resolved by the Secret Manager resolver. For the check, we rely on the presence of the SecretManagerSyntaxUtils class, which is an optional dependency. Since optional dependencies may not be present at runtime, we explicitly check for its existence before resolving the property. If it's not present, it means this config resolver is not meant to be used.- Specified by:
isResolvablein interfaceorg.springframework.boot.context.config.ConfigDataLocationResolver<SecretManagerConfigDataResource>- Returns:
- true if it contains the expected `sm@` or `sm://` prefix, false otherwise.
-
resolve
public List<SecretManagerConfigDataResource> resolve(org.springframework.boot.context.config.ConfigDataLocationResolverContext context, org.springframework.boot.context.config.ConfigDataLocation location) throws org.springframework.boot.context.config.ConfigDataLocationNotFoundException, org.springframework.boot.context.config.ConfigDataResourceNotFoundException - Specified by:
resolvein interfaceorg.springframework.boot.context.config.ConfigDataLocationResolver<SecretManagerConfigDataResource>- Throws:
org.springframework.boot.context.config.ConfigDataLocationNotFoundExceptionorg.springframework.boot.context.config.ConfigDataResourceNotFoundException
-