Class TelegramAwsChatBot
java.lang.Object
io.micronaut.starter.feature.chatbots.ChatBots
io.micronaut.starter.feature.chatbots.telegram.TelegramAwsChatBot
- All Implemented Interfaces:
io.micronaut.core.naming.Described
,io.micronaut.core.naming.Named
,io.micronaut.core.order.Ordered
,AwsCloudFeature
,AwsFeature
,AwsMicronautRuntimeFeature
,ChatBotsFeature
,CodeContributingFeature
,Feature
,CloudFeature
,HandlerClassFeature
,MicronautRuntimeFeature
@Singleton
public class TelegramAwsChatBot
extends ChatBots
implements AwsFeature, AwsMicronautRuntimeFeature, HandlerClassFeature
Adds support for Telegram chatbots as Lambdas.
- Since:
- 4.3.0
- Author:
- Tim Yates
-
Field Summary
Fields inherited from interface io.micronaut.starter.feature.aws.AwsFeature
GROUP_ID_AWS_SDK_V2, GROUP_ID_MICRONAUT_AWS
Fields inherited from interface io.micronaut.starter.feature.MicronautRuntimeFeature
PROPERTY_MICRONAUT_RUNTIME
Fields inherited from interface io.micronaut.core.order.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
-
Constructor Summary
ConstructorDescriptionTelegramAwsChatBot
(MicronautValidationFeature validationFeature, AwsLambda awsLambda) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addConfigurations
(GeneratorContext generatorContext) protected void
addDependencies
(GeneratorContext generatorContext) void
apply
(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(ApplicationType, io.micronaut.starter.options.Options, java.util.Set)
, or added explicitly by another feature throughFeatureContext.addFeature(Feature)
.protected String
getBuildCommand
(BuildTool buildTool) @NonNull String
getName()
The name of the feature.getTitle()
handlerClass
(ApplicationType applicationType, Project project) void
processSelectedFeatures
(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(ApplicationType, io.micronaut.starter.options.Options, java.util.Set)
.protected void
renderTemplates
(GeneratorContext generatorContext) rootReadMeTemplate
(GeneratorContext generatorContext) boolean
supports
(ApplicationType applicationType) This method must be implemented to ensure it is only selectable for the desired application types.Methods inherited from class io.micronaut.starter.feature.chatbots.ChatBots
getMicronautDocumentation
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.micronaut.starter.feature.aws.AwsCloudFeature
getCloud
Methods inherited from interface io.micronaut.starter.feature.aws.AwsMicronautRuntimeFeature
resolveMicronautRuntime
Methods inherited from interface io.micronaut.starter.feature.chatbots.ChatBotsFeature
getCategory
Methods inherited from interface io.micronaut.core.naming.Described
getDescription
Methods inherited from interface io.micronaut.starter.feature.Feature
getMicronautDocumentation, getOrder, getThirdPartyDocumentation, isCommunity, isPreview, isVisible
Methods inherited from interface io.micronaut.starter.feature.function.HandlerClassFeature
handlerClass
Methods inherited from interface io.micronaut.starter.feature.MicronautRuntimeFeature
addMicronautRuntimeBuildProperty
-
Field Details
-
NAME
- See Also:
-
CHATBOTS_TELEGRAM_LAMBDA
-
HANDLER_CLASS
- See Also:
-
-
Constructor Details
-
TelegramAwsChatBot
-
-
Method Details
-
supports
Description copied from interface:Feature
This method must be implemented to ensure it is only selectable for the desired application types. This method is not used for determining if a default feature should be applied. -
getName
Description copied from interface:Feature
The name of the feature. It must be unique. -
getTitle
-
getDescription
- Specified by:
getDescription
in interfaceio.micronaut.core.naming.Described
- Specified by:
getDescription
in interfaceFeature
-
processSelectedFeatures
Description copied from interface:Feature
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(ApplicationType, 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:
processSelectedFeatures
in interfaceFeature
- Overrides:
processSelectedFeatures
in classChatBots
- Parameters:
featureContext
- The feature context
-
apply
Description copied from interface:Feature
If this method is called for a given feature that means the feature was explicitly selected, included by default as a result ofDefaultFeature.shouldApply(ApplicationType, 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. This method can be implemented to modify the generated project. The feature can add templates by executingGeneratorContext.addTemplate(String, io.micronaut.starter.template.Template)
, modify configuration by modifyingGeneratorContext.getConfiguration()
orGeneratorContext.getBootstrapConfiguration()
, or modify build properties throughGeneratorContext.getBuildProperties()
. -
addDependencies
- Specified by:
addDependencies
in classChatBots
-
rootReadMeTemplate
- Specified by:
rootReadMeTemplate
in classChatBots
-
getBuildCommand
- Specified by:
getBuildCommand
in classChatBots
-
handlerClass
- Specified by:
handlerClass
in interfaceHandlerClassFeature
- Parameters:
applicationType
- Type of applicationproject
- Project- Returns:
- The handler class
-
addConfigurations
- Specified by:
addConfigurations
in classChatBots
-
renderTemplates
- Specified by:
renderTemplates
in classChatBots
-
getChatBotType
- Specified by:
getChatBotType
in classChatBots
-