Class GoogleCloudRawFunction
java.lang.Object
io.micronaut.starter.feature.function.AbstractFunctionFeature
io.micronaut.starter.feature.function.gcp.AbstractGoogleCloudFunction
io.micronaut.starter.feature.function.gcp.GoogleCloudRawFunction
- All Implemented Interfaces:
io.micronaut.core.naming.Described, io.micronaut.core.naming.Named, io.micronaut.core.order.Ordered, Feature, CloudFeature, FunctionFeature, GcpCloudFeature, GcpMicronautRuntimeFeature, MicronautRuntimeFeature
@Requires(property="micronaut.starter.feature.google.cloud.function.enabled",
value="true",
defaultValue="true")
@Singleton
public class GoogleCloudRawFunction
extends AbstractGoogleCloudFunction
Feature that adds support for deploying raw functions to Google Cloud Functions in a Micronaut project.
Provides integration with Google Cloud's Functions Framework and sets up the necessary templates, dependencies, and configuration for function-based applications.
-
Field Summary
FieldsFields inherited from class AbstractGoogleCloudFunction
GCP_FUNCTIONS_FRAMEWORK_APIFields inherited from interface MicronautRuntimeFeature
PROPERTY_MICRONAUT_RUNTIMEFields inherited from interface io.micronaut.core.order.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE -
Constructor Summary
ConstructorsConstructorDescriptionGoogleCloudRawFunction(GoogleCloudFunction googleCloudFunction, ShadePlugin shadePlugin, JacksonDatabindFeature jacksonDatabindFeature) -
Method Summary
Modifier and TypeMethodDescriptionvoidapply(GeneratorContext generatorContext) If this method is called for a given feature that means the feature was explicitly selected, included by default as a result ofDefaultFeature.shouldApply(io.micronaut.starter.options.Options, java.util.Set), or added explicitly by another feature throughFeatureContext.addFeature(Feature).protected voidapplyTestTemplate(GeneratorContext generatorContext, Project project, String name) Applies the test templates to the module.protected StringgetBuildCommand(BuildTool buildTool) getFrameworkDocumentation(GeneratorContext generatorContext) @NonNull StringgetName()The name of the feature.protected StringgetRunCommand(BuildTool buildTool) getTitle()protected com.fizzed.rocker.RockerModelgroovyJUnitTemplate(Project project) protected com.fizzed.rocker.RockerModeljavaJUnitTemplate(Project project) protected com.fizzed.rocker.RockerModelkoTestTemplate(Project project) protected com.fizzed.rocker.RockerModelkotlinJUnitTemplate(Project project) voidprocessSelectedFeatures(FeatureContext featureContext) If this method is called for a given feature then that feature was explicitly selected or was included by default as a result ofDefaultFeature.shouldApply(io.micronaut.starter.options.Options, java.util.Set).protected Optional<com.fizzed.rocker.RockerModel> readmeTemplate(GeneratorContext generatorContext, Project project, BuildTool buildTool) Returns the README template for this function feature, if any.com.fizzed.rocker.RockerModelspockTemplate(Project project) Methods inherited from class AbstractFunctionFeature
applyFunction, getTestSuffix, groovyControllerTemplate, javaControllerTemplate, kotlinControllerTemplateMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.micronaut.core.naming.Described
getDescriptionMethods inherited from interface Feature
getOrder, getThirdPartyDocumentation, isCommunity, isPreview, isVisibleMethods inherited from interface FunctionFeature
getCategory, supportsMethods inherited from interface GcpCloudFeature
getCloudMethods inherited from interface GcpMicronautRuntimeFeature
resolveMicronautRuntimeMethods inherited from interface MicronautRuntimeFeature
addMicronautRuntimeBuildProperty
-
Field Details
-
NAME
- See Also:
-
-
Constructor Details
-
GoogleCloudRawFunction
public GoogleCloudRawFunction(GoogleCloudFunction googleCloudFunction, ShadePlugin shadePlugin, JacksonDatabindFeature jacksonDatabindFeature)
-
-
Method Details
-
getName
-
apply
Description copied from interface:FeatureIf this method is called for a given feature that means the feature was explicitly selected, included by default as a result ofDefaultFeature.shouldApply(io.micronaut.starter.options.Options, java.util.Set), or added explicitly by another feature throughFeatureContext.addFeature(Feature). At this point the feature list is set and cannot change.- Specified by:
applyin interfaceFeature- Overrides:
applyin classAbstractGoogleCloudFunction- Parameters:
generatorContext- THe generator context
-
getTitle
- Returns:
- The title of the feature
-
getDescription
-
readmeTemplate
protected Optional<com.fizzed.rocker.RockerModel> readmeTemplate(GeneratorContext generatorContext, Project project, BuildTool buildTool) Description copied from class:AbstractFunctionFeatureReturns the README template for this function feature, if any. Subclasses may override to provide custom documentation.- Overrides:
readmeTemplatein classAbstractFunctionFeature- Parameters:
generatorContext- the generator contextproject- the projectbuildTool- the build tool used- Returns:
- an optional Rocker model for the README
-
processSelectedFeatures
Description copied from interface:FeatureIf this method is called for a given feature then that feature was explicitly selected or was included by default as a result ofDefaultFeature.shouldApply(io.micronaut.starter.options.Options, java.util.Set). This method can be implemented to allow features to modify the list of features that will apply to the project. The methodsFeatureContext.addFeature(Feature)andFeatureContext.exclude(FeaturePredicate)are the primary ways to add and remove features from the context.FeatureContext.isPresent(Class)can be used to determine the existence of other features in order to make decisions.- Specified by:
processSelectedFeaturesin interfaceFeature- Overrides:
processSelectedFeaturesin classAbstractGoogleCloudFunction- Parameters:
featureContext- The feature context
-
applyTestTemplate
Description copied from class:AbstractFunctionFeatureApplies the test templates to the module. Subclasses may override to customize the test generation logic.- Overrides:
applyTestTemplatein classAbstractFunctionFeature- Parameters:
generatorContext- the generator contextproject- the projectname- the name of the test class
-
getRunCommand
- Specified by:
getRunCommandin classAbstractFunctionFeature
-
getBuildCommand
- Specified by:
getBuildCommandin classAbstractFunctionFeature
-
javaJUnitTemplate
- Specified by:
javaJUnitTemplatein classAbstractFunctionFeature
-
kotlinJUnitTemplate
- Specified by:
kotlinJUnitTemplatein classAbstractFunctionFeature
-
groovyJUnitTemplate
- Specified by:
groovyJUnitTemplatein classAbstractFunctionFeature
-
koTestTemplate
- Specified by:
koTestTemplatein classAbstractFunctionFeature
-
spockTemplate
- Specified by:
spockTemplatein classAbstractFunctionFeature
-
getFrameworkDocumentation
- Parameters:
generatorContext- Generator Context- Returns:
- Returns a link to Framework documentation about the feature. eg. https://micronaut-projects.github.io/micronaut-cache/latest/guide/index.html#hazelcast
-