public interface SpecModel
String getSpecName()
ClassName getSpecTypeName()
TypeName
representing the name of the Spec.String getComponentName()
TypeName getComponentTypeName()
TypeName
representing the name of the component that will be generated from
this model.ImmutableList<FieldModel> getFields()
ImmutableList<SpecMethodModel<DelegateMethod,Void>> getDelegateMethods()
ImmutableList<SpecMethodModel<EventMethod,EventDeclarationModel>> getEventMethods()
ImmutableList<SpecMethodModel<EventMethod,EventDeclarationModel>> getTriggerMethods()
SpecMethodModel<EventMethod,Void> getWorkingRangeRegisterMethod()
ImmutableList<WorkingRangeMethodModel> getWorkingRangeMethods()
ImmutableList<SpecMethodModel<UpdateStateMethod,Void>> getUpdateStateMethods()
ImmutableList<SpecMethodModel<UpdateStateMethod,Void>> getUpdateStateWithTransitionMethods()
ImmutableList<PropModel> getRawProps()
ImmutableList<PropModel> getProps()
ImmutableList<InjectPropModel> getRawInjectProps()
ImmutableList<InjectPropModel> getInjectProps()
ImmutableList<PropDefaultModel> getPropDefaults()
ImmutableList<TypeVariableName> getTypeVariables()
ImmutableList<StateParamModel> getStateValues()
ImmutableList<CachedValueParamModel> getCachedValues()
ImmutableList<InterStageInputParamModel> getInterStageInputs()
ImmutableList<TreePropModel> getTreeProps()
ImmutableList<EventDeclarationModel> getEventDeclarations()
ImmutableList<BuilderMethodModel> getExtraBuilderMethods()
ImmutableList<RenderDataDiffModel> getRenderDataDiffs()
ImmutableList<AnnotationSpec> getClassAnnotations()
ImmutableList<TagModel> getTags()
String getClassJavadoc()
ImmutableList<PropJavadocModel> getPropJavadocs()
boolean isPublic()
ClassName getContextClass()
ClassName
of the context that is used in the generated class.ClassName getComponentClass()
ClassName
of the component that is used in the generated class.ClassName getStateContainerClass()
ClassName
of the state container class that is used in the generated class.ClassName getTransitionClass()
ClassName
of the transition that is used in the generated class.ClassName getTransitionContainerClass()
ClassName
of the transition container class that is used in the generated
class.String getScopeMethodName()
boolean isStylingSupported()
boolean hasInjectedDependencies()
boolean shouldCheckIdInIsEquivalentToMethod()
boolean hasDeepCopy()
boolean shouldGenerateHasState()
DependencyInjectionHelper getDependencyInjectionHelper()
SpecElementType getSpecElementType()
Object getRepresentedObject()
List<SpecModelValidationError> validate(EnumSet<RunMode> runMode)
runMode
- TypeSpec generate(EnumSet<RunMode> runMode)
TypeSpec
representing the class that is generated by this model.boolean shouldGenerateCopyMethod()
boolean shouldGenerateIsEquivalentTo()