org.apache.beehive.netui.compiler
Class FlowControllerChecker

Object
  extended by BaseChecker
      extended by FlowControllerChecker
All Implemented Interfaces:
JpfLanguageConstants
Direct Known Subclasses:
PageFlowChecker, SharedFlowChecker

public abstract class FlowControllerChecker
extends BaseChecker
implements JpfLanguageConstants


Nested Class Summary
 
Nested classes/interfaces inherited from interface JpfLanguageConstants
JpfLanguageConstants.ExtraInfoKeys
 
Field Summary
 
Fields inherited from interface JpfLanguageConstants
ACTION_ATTR, ACTION_EXTENSION, ACTION_EXTENSION_DOT, ACTION_OUTPUT_TAG_NAME, ACTION_OUTPUTS_ATTR, ACTION_TAG_NAME, ALTERNATE_WEB_ROOT_DIR_OPTION, ANNOTATION_INTERFACE_PREFIX, ANNOTATION_QUALIFIER, ANNOTATIONS_CLASSNAME, ANY_FORM_CLASS_NAME, APACHE_XMLOBJECT_CLASS_NAME, APPLY_TO_UNHANDLED_LOCALES_ATTR, ARG0_ATTR, ARG0_KEY_ATTR, ARG1_ATTR, ARG1_KEY_ATTR, ARG2_ATTR, ARG2_KEY_ATTR, ARG3_ATTR, ARG3_KEY_ATTR, ARRAY_TYPE_SUFFIX, BEA_XMLOBJECT_CLASS_NAME, BEGIN_ACTION_NAME, BOOLEAN_GETTER_PREFIX, BUNDLE_KEY_ATTR, CATCH_TAG_NAME, CATCHES_ATTR, CHARS_ATTR, COMMAND_HANDLER_TAG_NAME, CONDITION_ATTR, CONDITIONAL_FORWARDS_ATTR, CONTROLLER_TAG_NAME, COUNTRY_ATTR, DEFAULT_MESSAGE_RESOURCES_ATTR, DEFAULT_SIMPLE_ACTION_FORWARD_NAME, DEFAULT_VALIDATION_MESSAGE_BUNDLE, DEFAULT_VALIDATION_MESSAGE_BUNDLE_KEY, DISPLAY_NAME_ATTR, DISPLAY_NAME_KEY_ATTR, ERROR_TYPE_STR, EXCEPTION_HANDLER_TAG_NAME, EXTERNAL_REDIRECT_ATTR, FACES_BACKING_BEAN_CLASS, FACES_BACKING_FILE_EXTENSION, FACES_BACKING_FILE_EXTENSION_DOT, FACES_BACKING_TAG_NAME, FLOW_CONTROLLER_ACTION_CLASS, FLOWCONTROLLER_BASE_CLASS, FORM_BEAN_TAG_NAME, FORM_CLASS_NAME, FORWARD_CLASS_NAME, FORWARD_TAG_NAME, FORWARDS_ATTR, GETTER_PREFIX, GLOBALAPP_BASE_CLASS, GLOBALAPP_CLASSNAME, GLOBALAPP_FILE_EXTENSION, GLOBALAPP_FILE_EXTENSION_DOT, GLOBALAPP_FULL_CLASSNAME, GLOBALAPP_PACKAGE, GLOBALAPP_PARENT_PATH, GLOBALAPP_SOURCE_NAME, GLOBALAPP_URI, JAVA_FILE_EXTENSION, JAVA_FILE_EXTENSION_DOT, JPF_BASE_CLASS, JPF_FILE_EXTENSION, JPF_FILE_EXTENSION_DOT, JSP_FILE_EXTENSION, KEY_ATTR, LANGUAGE_ATTR, LOCALE_RULES_ATTR, LOGIN_REQUIRED_ATTR, MAX_FLOAT_ATTR, MAX_INT_ATTR, MESSAGE_ATTR, MESSAGE_KEY_ATTR, MESSAGE_RESOURCE_TAG_NAME, MESSAGE_RESOURCES_ATTR, METHOD_ATTR, MIN_FLOAT_ATTR, MIN_INT_ATTR, MULTIPART_HANDLER_ATTR, MULTIPART_HANDLER_DISABLED_STR, MULTIPART_HANDLER_DISK_CLASSNAME, MULTIPART_HANDLER_DISK_STR, MULTIPART_HANDLER_MEMORY_CLASSNAME, MULTIPART_HANDLER_MEMORY_STR, NAME_ATTR, NAVIGATE_TO_ATTR, NAVIGATE_TO_CURRENT_PAGE_STR, NAVIGATE_TO_ENUM, NAVIGATE_TO_PAGE_LEGACY_STR, NAVIGATE_TO_PREVIOUS_ACTION_STR, NAVIGATE_TO_PREVIOUS_PAGE_STR, NESTED_ATTR, NETUI_PACKAGE, NULLABLE_ATTR, OBJECT_CLASS_NAME, OUTPUT_FORM_BEAN_ATTR, OUTPUT_FORM_BEAN_TYPE_ATTR, PAGEFLOW_INTERNAL_PACKAGE, PAGEFLOW_PACKAGE, PAGEFLOW_RUNTIME_JAR, PATH_ATTR, PATTERN_ATTR, PROPERTY_NAME_ATTR, RAISE_ACTION_TAG_NAME, RAISE_ACTIONS_ATTR, READONLY_ATTR, REDIRECT_ATTR, REGEX_ATTR, REQUIRED_ATTR, RESTORE_QUERY_STRING_ATTR, RETURN_ACTION_ATTR, ROLES_ALLOWED_ATTR, RULE_ATTR, RUNTIME_VERSION_ATTRIBUTE, SERIALIZABLE_CLASS_NAME, SHARED_FLOW_BASE_CLASS, SHARED_FLOW_CLASSNAME, SHARED_FLOW_FILE_EXTENSION, SHARED_FLOW_FILE_EXTENSION_DOT, SIMPLE_ACTIONS_ATTR, SINGLETON_ATTR, STRICT_ATTR, STRING_CLASS_NAME, STRUTS_PACKAGE, STRUTSMERGE_ATTR, THROWABLE_CLASS_NAME, TMP_SRC_DIR, TYPE_ATTR, USE_FORM_BEAN_ATTR, VALIDATABLE_BEANS_ATTR, VALIDATABLE_PROPERTIES_ATTR, VALIDATABLE_PROPERTY_TAG_NAME, VALIDATE_CREDIT_CARD_ATTR, VALIDATE_CREDIT_CARD_TAG_NAME, VALIDATE_CUSTOM_ATTR, VALIDATE_CUSTOM_TAG_NAME, VALIDATE_DATE_ATTR, VALIDATE_DATE_TAG_NAME, VALIDATE_EMAIL_ATTR, VALIDATE_EMAIL_TAG_NAME, VALIDATE_MASK_ATTR, VALIDATE_MASK_TAG_NAME, VALIDATE_MAX_LENGTH_ATTR, VALIDATE_MAX_LENGTH_TAG_NAME, VALIDATE_MIN_LENGTH_ATTR, VALIDATE_MIN_LENGTH_TAG_NAME, VALIDATE_RANGE_ATTR, VALIDATE_RANGE_TAG_NAME, VALIDATE_REQUIRED_ATTR, VALIDATE_REQUIRED_TAG_NAME, VALIDATE_TYPE_ATTR, VALIDATE_TYPE_TAG_NAME, VALIDATE_VALID_WHEN_ATTR, VALIDATE_VALID_WHEN_TAG_NAME, VALIDATION_BEAN_TAG_NAME, VALIDATION_BEANS_ATTR, VALIDATION_ERROR_FORWARD_ATTR, VALIDATION_LOCALE_RULES_TAG_NAME, VALIDATION_MESSAGES_ATTR, VALIDATOR_MERGE_ATTR, VALUE_ATTR, VARIABLES_ATTR, VARIANT_ATTR, VERSION_8_SP2_STRING, VERSION_9_0_STRING, VIEW_PROPERTIES_TAG_NAME, WEBAPP_ROOT_PACKAGE, WEBINF_DIR_NAME, WEBINF_SRC_DIR, WEBINF_SRC_PATH, XJSP_FILE_EXTENSION, XML_FORM_CLASS_NAME
 
Constructor Summary
FlowControllerChecker(AnnotationProcessorEnvironment env, Diagnostics diags, FlowControllerInfo fcInfo)
           
 
Method Summary
protected  void checkField(FieldDeclaration field, TypeDeclaration jclass)
           
protected  void checkInnerClass(ClassDeclaration innerClass)
           
protected  void checkMethod(MethodDeclaration method, ClassDeclaration jclass)
           
protected abstract  GenStrutsApp createStrutsApp(File sourceFile, ClassDeclaration jclass)
           
protected  void doAdditionalClassChecks(ClassDeclaration jpfClass, File webappRoot)
           
protected  void endCheckClass(ClassDeclaration jclass)
           
protected  Map getCheckResultMap()
           
protected abstract  AnnotationGrammar getControllerGrammar()
           
protected abstract  String getDesiredBaseClass(ClassDeclaration jclass)
           
protected  FlowControllerInfo getFlowControllerInfo()
           
abstract  BaseGenerator getGenerator()
           
 Map onCheck(ClassDeclaration jclass)
           
protected  void startCheckClass(ClassDeclaration jclass)
           
 
Methods inherited from class BaseChecker
check, getDiagnostics, getEnv, getRuntimeVersionChecker, getWebappRoot, setRuntimeVersionChecker
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FlowControllerChecker

public FlowControllerChecker(AnnotationProcessorEnvironment env,
                             Diagnostics diags,
                             FlowControllerInfo fcInfo)
Method Detail

doAdditionalClassChecks

protected void doAdditionalClassChecks(ClassDeclaration jpfClass,
                                       File webappRoot)

getCheckResultMap

protected Map getCheckResultMap()

getDesiredBaseClass

protected abstract String getDesiredBaseClass(ClassDeclaration jclass)

getControllerGrammar

protected abstract AnnotationGrammar getControllerGrammar()

getGenerator

public abstract BaseGenerator getGenerator()
Specified by:
getGenerator in class BaseChecker

onCheck

public Map onCheck(ClassDeclaration jclass)
Specified by:
onCheck in class BaseChecker

endCheckClass

protected void endCheckClass(ClassDeclaration jclass)

createStrutsApp

protected abstract GenStrutsApp createStrutsApp(File sourceFile,
                                                ClassDeclaration jclass)
                                         throws XmlException,
                                                IOException,
                                                NoWebInfDirectoryException
Throws:
XmlException
IOException
NoWebInfDirectoryException

startCheckClass

protected void startCheckClass(ClassDeclaration jclass)

checkField

protected void checkField(FieldDeclaration field,
                          TypeDeclaration jclass)

checkMethod

protected void checkMethod(MethodDeclaration method,
                           ClassDeclaration jclass)

checkInnerClass

protected void checkInnerClass(ClassDeclaration innerClass)

getFlowControllerInfo

protected FlowControllerInfo getFlowControllerInfo()