edu.uoc.pfc.j2ee.jalonsod.mtp.config
Class Configurator

java.lang.Object
  extended by edu.uoc.pfc.j2ee.jalonsod.mtp.config.Configurator

public class Configurator
extends java.lang.Object

File: Configurator.java Created: 2012-04-21 Main object for configuration of the MTP Framework. Works as a singleton instance. Usage: Get singleton (first time loads with default config file): Configurator.getInstance() Load configuration with user provided config file & obtain singleton): Configurator.getInstance(String configFile) Use getters to obtain configuration objects. main method is for testing purposes

The class has the inner class SimpleErrorHandler. This is an error handler for loading documents.

Author:
José Alonso de Motta

Nested Class Summary
 class Configurator.SimpleErrorHandler
          Error handler for loading documents.
 
Field Summary
private static java.lang.String configFile
           
static java.lang.String DATATYPE_BOOLEAN
           
static java.lang.String DATATYPE_DATE
           
static java.lang.String DATATYPE_DOUBLE
           
static java.lang.String DATATYPE_INTEGER
           
static java.lang.String DATATYPE_STRING
           
private  java.lang.String defaultDateFormat
          Default date format mask for date parameters.
private  java.lang.String defaultErrorView
          Framework redirects to this view when an exception is thrown to the Controller during the request process.
private  Language defaultLanguage
          Default language for application user interface.
private  Model defaultModel
          Framework redirects to this model when cannot map to any model.
private  java.lang.String defaultSecurityErrorView
          Framework redirects to this view when a security error is thrown and model has no related.
private  java.lang.String defaultValidationErrorView
          Framework redirects to this view when a validation error is thrown and model has no related.
private  java.lang.String defaultView
          Framework redirects to this view when cannot map to any view.
private  java.util.Hashtable<java.lang.String,Form> forms
          Forms supported by application.
private static Configurator instance
           
private  java.util.Hashtable<java.lang.String,Language> languages
          Languages supported by application.
private static java.util.logging.Logger logger
           
private  java.lang.String modelMapperClass
          Class used for mapping models.
private  java.lang.Class<ModelMapper> modelMapperClassReference
          A reference to the modelMapper class.
private  java.util.Hashtable<java.lang.String,Model> models
          Models implemented by application.
private  java.lang.String packageModel
          Name of the default package for storing Model objects.
private  java.util.Hashtable<java.lang.String,Role> roles
          Security roles of application.
static java.lang.String SCHEMA_FILE
           
static java.lang.String TAG_FORM_ATTR_NAME
           
static java.lang.String TAG_FORM_ELEMENT
           
static java.lang.String TAG_FORM_PARAMETER_ATTR_COPY_TO_MODEL
           
static java.lang.String TAG_FORM_PARAMETER_ATTR_DATATYPE
           
static java.lang.String TAG_FORM_PARAMETER_ATTR_DATE_FORMAT
           
static java.lang.String TAG_FORM_PARAMETER_ATTR_DEFAULT_VALUE
           
static java.lang.String TAG_FORM_PARAMETER_ATTR_MODEL_ATTRIBUTE
           
static java.lang.String TAG_FORM_PARAMETER_ATTR_NAME
           
static java.lang.String TAG_FORM_PARAMETER_ATTR_REQUIRED
           
static java.lang.String TAG_FORM_PARAMETER_ATTR_VALIDATE_METHOD
           
static java.lang.String TAG_FORM_PARAMETER_ELEMENT
           
static java.lang.String TAG_LANGUAGE_ATTR_LONG_NAME
           
static java.lang.String TAG_LANGUAGE_ATTR_MESSAGE_FILE
           
static java.lang.String TAG_LANGUAGE_ATTR_NAME
           
static java.lang.String TAG_LANGUAGE_ELEMENT
           
static java.lang.String TAG_MODEL_ATTR_CLASS_NAME
           
static java.lang.String TAG_MODEL_ATTR_DEFAULT_RESULT
           
static java.lang.String TAG_MODEL_ATTR_FORM
           
static java.lang.String TAG_MODEL_ATTR_NAME
           
static java.lang.String TAG_MODEL_ATTR_RESULT_NO_VALIDATE
           
static java.lang.String TAG_MODEL_ATTR_RESULT_SECURITY_ERROR
           
static java.lang.String TAG_MODEL_ATTR_RUN_METHOD
           
static java.lang.String TAG_MODEL_ATTR_SEND_REQUEST_DATA
           
static java.lang.String TAG_MODEL_ATTR_VALIDATE_METHOD
           
static java.lang.String TAG_MODEL_ELEMENT
           
static java.lang.String TAG_MODEL_GRANTEDROLE_ATTR_NAME
           
static java.lang.String TAG_MODEL_GRANTEDROLE_ELEMENT
           
static java.lang.String TAG_MODEL_RESULT_ATTR_NAME
           
static java.lang.String TAG_MODEL_RESULT_ATTR_NEXT_VIEW
           
static java.lang.String TAG_MODEL_RESULT_ELEMENT
           
static java.lang.String TAG_ROLE_ATTR_DEFAULT_ROLE
           
static java.lang.String TAG_ROLE_ATTR_NAME
           
static java.lang.String TAG_ROLE_ELEMENT
           
static java.lang.String TAG_ROOT_ATTR_DEFAULT_ERROR_VIEW
           
static java.lang.String TAG_ROOT_ATTR_DEFAULT_LANGUAGE
           
static java.lang.String TAG_ROOT_ATTR_DEFAULT_MODEL
           
static java.lang.String TAG_ROOT_ATTR_DEFAULT_VIEW
           
static java.lang.String TAG_ROOT_ATTR_MODEL_MAPPER_CLASS
           
static java.lang.String TAG_ROOT_ATTR_PACKAGE_MODEL
           
static java.lang.String TAG_ROOT_ATTR_SECURITY_ERROR_VIEW
           
static java.lang.String TAG_ROOT_ATTR_VALIDATION_ERROR_VIEW
           
static java.lang.String TAG_ROOT_ATTR_VIEW_DEFAULT_DATE_FORMAT
           
static java.lang.String TAG_ROOT_ATTR_VIEW_MAPPER_CLASS
           
static java.lang.String TAG_ROOT_ELEMENT
           
static java.lang.String TAG_VALIDATION_ATTR_CLASSNAME
           
static java.lang.String TAG_VALIDATION_ATTR_DATATYPE
           
static java.lang.String TAG_VALIDATION_ATTR_METHODNAME
           
static java.lang.String TAG_VALIDATION_ATTR_NAME
           
static java.lang.String TAG_VALIDATION_ELEMENT
           
private  java.util.Hashtable<java.lang.String,Validation> validations
          Field validations implemented by application.
private  java.lang.String viewMapperClass
          Class used for mapping views.
private  java.lang.Class<ViewMapper> viewMapperClassReference
          A reference to the viewMapper class.
 
Constructor Summary
private Configurator()
          Constructor must be called only from singleton creation method getInstance.
 
Method Summary
private  void addFormElement(org.w3c.dom.Node n)
          Loads a form and its parameters from supplied node & child nodes.
private  void addLanguageElement(org.w3c.dom.Node n)
          Loads a language from supplied node.
private  void addModelElement(org.w3c.dom.Node n)
          Loads a model, its role-grants and results from supplied node & child nodes.
private  void addRoleElement(org.w3c.dom.Node n)
          Loads a role from supplied node.
private  void addValidationElement(org.w3c.dom.Node n)
          Loads a validation from supplied node.
private  java.lang.String getAttributeValue(org.w3c.dom.NamedNodeMap nnm, java.lang.String attrName)
          Obtains the value of the supplied attribute from the nodemap.
static java.lang.String getConfigFile()
           
 java.lang.String getDefaultDateFormat()
           
 java.lang.String getDefaultErrorView()
           
 Language getDefaultLanguage()
           
 Model getDefaultModel()
           
 java.util.Hashtable<java.lang.String,Role> getDefaultRoles()
          Get roles marked as default.
 java.lang.String getDefaultSecurityErrorView()
           
 java.lang.String getDefaultValidationErrorView()
           
 java.lang.String getDefaultView()
           
 Form getFormByKey(java.lang.String key)
           
 java.util.Hashtable<java.lang.String,Form> getForms()
           
static Configurator getInstance()
          Returns the singleton (also creates & loads configuration the first time).
static Configurator getInstance(java.lang.String configFile)
          Returns the singleton loaded with configFile.
 Language getLanguageByKey(java.lang.String key)
           
 java.util.Hashtable<java.lang.String,Language> getLanguages()
           
 Model getModelByKey(java.lang.String key)
           
 java.lang.String getModelMapperClass()
           
 java.lang.Class<ModelMapper> getModelMapperClassReference()
           
 java.util.Hashtable<java.lang.String,Model> getModels()
           
 java.lang.String getPackageModel()
           
 Role getRoleByKey(java.lang.String key)
           
 java.util.Hashtable<java.lang.String,Role> getRoles()
           
 Validation getValidationByKey(java.lang.String key)
           
 java.util.Hashtable<java.lang.String,Validation> getValidations()
           
 java.lang.String getViewMapperClass()
           
 java.lang.Class<ViewMapper> getViewMapperClassReference()
           
private  void loadConfig()
          Main method for loading configuration.
private  void loadList(org.w3c.dom.NodeList nl, java.lang.reflect.Method loadMethod)
          Walks through a list of nodes and call supplied method of this object type for appropriate loading.
static void main(java.lang.String[] args)
          main method for testing purposes.
private  void resetAttributes()
          Initialize attribute values, prior to load configuration values.
private static void setConfigFile(java.lang.String configFile)
           
 void setDefaultDateFormat(java.lang.String defaultDateFormat)
           
 void setDefaultErrorView(java.lang.String defaultErrorView)
           
 void setDefaultLanguage(Language defaultLanguage)
           
 void setDefaultModel(Model defaultModel)
           
 void setDefaultSecurityErrorView(java.lang.String defaultSecurityErrorView)
           
 void setDefaultValidationErrorView(java.lang.String defaultValidationErrorView)
           
 void setDefaultView(java.lang.String defaultView)
           
 void setForms(java.util.Hashtable<java.lang.String,Form> forms)
           
 void setLanguages(java.util.Hashtable<java.lang.String,Language> languages)
           
 void setModelMapperClass(java.lang.String modelMapperClass)
           
 void setModels(java.util.Hashtable<java.lang.String,Model> models)
           
 void setPackageModel(java.lang.String packageModel)
           
 void setRoles(java.util.Hashtable<java.lang.String,Role> roles)
           
 void setValidations(java.util.Hashtable<java.lang.String,Validation> validations)
           
 void setViewMapperClass(java.lang.String viewMapperClass)
           
 java.lang.String toString()
           
private  org.w3c.dom.Document validateConfigFile()
          Validate and load the config file.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

logger

private static final java.util.logging.Logger logger

TAG_ROOT_ELEMENT

public static final java.lang.String TAG_ROOT_ELEMENT
See Also:
Constant Field Values

TAG_ROOT_ATTR_PACKAGE_MODEL

public static final java.lang.String TAG_ROOT_ATTR_PACKAGE_MODEL
See Also:
Constant Field Values

TAG_ROOT_ATTR_SECURITY_ERROR_VIEW

public static final java.lang.String TAG_ROOT_ATTR_SECURITY_ERROR_VIEW
See Also:
Constant Field Values

TAG_ROOT_ATTR_VALIDATION_ERROR_VIEW

public static final java.lang.String TAG_ROOT_ATTR_VALIDATION_ERROR_VIEW
See Also:
Constant Field Values

TAG_ROOT_ATTR_DEFAULT_ERROR_VIEW

public static final java.lang.String TAG_ROOT_ATTR_DEFAULT_ERROR_VIEW
See Also:
Constant Field Values

TAG_ROOT_ATTR_DEFAULT_VIEW

public static final java.lang.String TAG_ROOT_ATTR_DEFAULT_VIEW
See Also:
Constant Field Values

TAG_ROOT_ATTR_DEFAULT_MODEL

public static final java.lang.String TAG_ROOT_ATTR_DEFAULT_MODEL
See Also:
Constant Field Values

TAG_ROOT_ATTR_DEFAULT_LANGUAGE

public static final java.lang.String TAG_ROOT_ATTR_DEFAULT_LANGUAGE
See Also:
Constant Field Values

TAG_ROOT_ATTR_MODEL_MAPPER_CLASS

public static final java.lang.String TAG_ROOT_ATTR_MODEL_MAPPER_CLASS
See Also:
Constant Field Values

TAG_ROOT_ATTR_VIEW_MAPPER_CLASS

public static final java.lang.String TAG_ROOT_ATTR_VIEW_MAPPER_CLASS
See Also:
Constant Field Values

TAG_ROOT_ATTR_VIEW_DEFAULT_DATE_FORMAT

public static final java.lang.String TAG_ROOT_ATTR_VIEW_DEFAULT_DATE_FORMAT
See Also:
Constant Field Values

TAG_FORM_ELEMENT

public static final java.lang.String TAG_FORM_ELEMENT
See Also:
Constant Field Values

TAG_FORM_ATTR_NAME

public static final java.lang.String TAG_FORM_ATTR_NAME
See Also:
Constant Field Values

TAG_FORM_PARAMETER_ELEMENT

public static final java.lang.String TAG_FORM_PARAMETER_ELEMENT
See Also:
Constant Field Values

TAG_FORM_PARAMETER_ATTR_NAME

public static final java.lang.String TAG_FORM_PARAMETER_ATTR_NAME
See Also:
Constant Field Values

TAG_FORM_PARAMETER_ATTR_DATATYPE

public static final java.lang.String TAG_FORM_PARAMETER_ATTR_DATATYPE
See Also:
Constant Field Values

TAG_FORM_PARAMETER_ATTR_REQUIRED

public static final java.lang.String TAG_FORM_PARAMETER_ATTR_REQUIRED
See Also:
Constant Field Values

TAG_FORM_PARAMETER_ATTR_VALIDATE_METHOD

public static final java.lang.String TAG_FORM_PARAMETER_ATTR_VALIDATE_METHOD
See Also:
Constant Field Values

TAG_FORM_PARAMETER_ATTR_COPY_TO_MODEL

public static final java.lang.String TAG_FORM_PARAMETER_ATTR_COPY_TO_MODEL
See Also:
Constant Field Values

TAG_FORM_PARAMETER_ATTR_MODEL_ATTRIBUTE

public static final java.lang.String TAG_FORM_PARAMETER_ATTR_MODEL_ATTRIBUTE
See Also:
Constant Field Values

TAG_FORM_PARAMETER_ATTR_DEFAULT_VALUE

public static final java.lang.String TAG_FORM_PARAMETER_ATTR_DEFAULT_VALUE
See Also:
Constant Field Values

TAG_FORM_PARAMETER_ATTR_DATE_FORMAT

public static final java.lang.String TAG_FORM_PARAMETER_ATTR_DATE_FORMAT
See Also:
Constant Field Values

TAG_LANGUAGE_ELEMENT

public static final java.lang.String TAG_LANGUAGE_ELEMENT
See Also:
Constant Field Values

TAG_LANGUAGE_ATTR_NAME

public static final java.lang.String TAG_LANGUAGE_ATTR_NAME
See Also:
Constant Field Values

TAG_LANGUAGE_ATTR_LONG_NAME

public static final java.lang.String TAG_LANGUAGE_ATTR_LONG_NAME
See Also:
Constant Field Values

TAG_LANGUAGE_ATTR_MESSAGE_FILE

public static final java.lang.String TAG_LANGUAGE_ATTR_MESSAGE_FILE
See Also:
Constant Field Values

TAG_MODEL_ELEMENT

public static final java.lang.String TAG_MODEL_ELEMENT
See Also:
Constant Field Values

TAG_MODEL_ATTR_NAME

public static final java.lang.String TAG_MODEL_ATTR_NAME
See Also:
Constant Field Values

TAG_MODEL_ATTR_CLASS_NAME

public static final java.lang.String TAG_MODEL_ATTR_CLASS_NAME
See Also:
Constant Field Values

TAG_MODEL_ATTR_FORM

public static final java.lang.String TAG_MODEL_ATTR_FORM
See Also:
Constant Field Values

TAG_MODEL_ATTR_RUN_METHOD

public static final java.lang.String TAG_MODEL_ATTR_RUN_METHOD
See Also:
Constant Field Values

TAG_MODEL_ATTR_SEND_REQUEST_DATA

public static final java.lang.String TAG_MODEL_ATTR_SEND_REQUEST_DATA
See Also:
Constant Field Values

TAG_MODEL_ATTR_VALIDATE_METHOD

public static final java.lang.String TAG_MODEL_ATTR_VALIDATE_METHOD
See Also:
Constant Field Values

TAG_MODEL_ATTR_RESULT_NO_VALIDATE

public static final java.lang.String TAG_MODEL_ATTR_RESULT_NO_VALIDATE
See Also:
Constant Field Values

TAG_MODEL_ATTR_RESULT_SECURITY_ERROR

public static final java.lang.String TAG_MODEL_ATTR_RESULT_SECURITY_ERROR
See Also:
Constant Field Values

TAG_MODEL_ATTR_DEFAULT_RESULT

public static final java.lang.String TAG_MODEL_ATTR_DEFAULT_RESULT
See Also:
Constant Field Values

TAG_MODEL_GRANTEDROLE_ELEMENT

public static final java.lang.String TAG_MODEL_GRANTEDROLE_ELEMENT
See Also:
Constant Field Values

TAG_MODEL_GRANTEDROLE_ATTR_NAME

public static final java.lang.String TAG_MODEL_GRANTEDROLE_ATTR_NAME
See Also:
Constant Field Values

TAG_MODEL_RESULT_ELEMENT

public static final java.lang.String TAG_MODEL_RESULT_ELEMENT
See Also:
Constant Field Values

TAG_MODEL_RESULT_ATTR_NAME

public static final java.lang.String TAG_MODEL_RESULT_ATTR_NAME
See Also:
Constant Field Values

TAG_MODEL_RESULT_ATTR_NEXT_VIEW

public static final java.lang.String TAG_MODEL_RESULT_ATTR_NEXT_VIEW
See Also:
Constant Field Values

TAG_ROLE_ELEMENT

public static final java.lang.String TAG_ROLE_ELEMENT
See Also:
Constant Field Values

TAG_ROLE_ATTR_NAME

public static final java.lang.String TAG_ROLE_ATTR_NAME
See Also:
Constant Field Values

TAG_ROLE_ATTR_DEFAULT_ROLE

public static final java.lang.String TAG_ROLE_ATTR_DEFAULT_ROLE
See Also:
Constant Field Values

TAG_VALIDATION_ELEMENT

public static final java.lang.String TAG_VALIDATION_ELEMENT
See Also:
Constant Field Values

TAG_VALIDATION_ATTR_NAME

public static final java.lang.String TAG_VALIDATION_ATTR_NAME
See Also:
Constant Field Values

TAG_VALIDATION_ATTR_CLASSNAME

public static final java.lang.String TAG_VALIDATION_ATTR_CLASSNAME
See Also:
Constant Field Values

TAG_VALIDATION_ATTR_METHODNAME

public static final java.lang.String TAG_VALIDATION_ATTR_METHODNAME
See Also:
Constant Field Values

TAG_VALIDATION_ATTR_DATATYPE

public static final java.lang.String TAG_VALIDATION_ATTR_DATATYPE
See Also:
Constant Field Values

DATATYPE_STRING

public static final java.lang.String DATATYPE_STRING
See Also:
Constant Field Values

DATATYPE_BOOLEAN

public static final java.lang.String DATATYPE_BOOLEAN
See Also:
Constant Field Values

DATATYPE_INTEGER

public static final java.lang.String DATATYPE_INTEGER
See Also:
Constant Field Values

DATATYPE_DOUBLE

public static final java.lang.String DATATYPE_DOUBLE
See Also:
Constant Field Values

DATATYPE_DATE

public static final java.lang.String DATATYPE_DATE
See Also:
Constant Field Values

SCHEMA_FILE

public static final java.lang.String SCHEMA_FILE
See Also:
Constant Field Values

configFile

private static java.lang.String configFile

instance

private static Configurator instance

packageModel

private java.lang.String packageModel
Name of the default package for storing Model objects.


defaultSecurityErrorView

private java.lang.String defaultSecurityErrorView
Framework redirects to this view when a security error is thrown and model has no related. security error view


defaultValidationErrorView

private java.lang.String defaultValidationErrorView
Framework redirects to this view when a validation error is thrown and model has no related. validations error view


defaultErrorView

private java.lang.String defaultErrorView
Framework redirects to this view when an exception is thrown to the Controller during the request process.


defaultView

private java.lang.String defaultView
Framework redirects to this view when cannot map to any view.


defaultModel

private Model defaultModel
Framework redirects to this model when cannot map to any model.


defaultLanguage

private Language defaultLanguage
Default language for application user interface. Framework use this when no language is set and request supported languages does not match with framework supported languages.


modelMapperClass

private java.lang.String modelMapperClass
Class used for mapping models. It can be framework supplied mapper or user supplied. It must implement modelMapper interface.


modelMapperClassReference

private java.lang.Class<ModelMapper> modelMapperClassReference
A reference to the modelMapper class.


viewMapperClass

private java.lang.String viewMapperClass
Class used for mapping views. It can be framework supplied mapper or user supplied. It must implement ViewMapper interface.


viewMapperClassReference

private java.lang.Class<ViewMapper> viewMapperClassReference
A reference to the viewMapper class.


defaultDateFormat

private java.lang.String defaultDateFormat
Default date format mask for date parameters. This will be used if parameters has no value on dateFormat attribute.


forms

private java.util.Hashtable<java.lang.String,Form> forms
Forms supported by application.


languages

private java.util.Hashtable<java.lang.String,Language> languages
Languages supported by application.


models

private java.util.Hashtable<java.lang.String,Model> models
Models implemented by application.


roles

private java.util.Hashtable<java.lang.String,Role> roles
Security roles of application.


validations

private java.util.Hashtable<java.lang.String,Validation> validations
Field validations implemented by application.

Constructor Detail

Configurator

private Configurator()
              throws ConfiguratorException
Constructor must be called only from singleton creation method getInstance.

Throws:
ConfiguratorException - throws when failed to load configuration.
Method Detail

loadConfig

private void loadConfig()
                 throws ConfiguratorException
Main method for loading configuration.

Throws:
ConfiguratorException - throws when failed to load configuration.

validateConfigFile

private org.w3c.dom.Document validateConfigFile()
                                         throws ConfiguratorException
Validate and load the config file.

Returns:
the XML config file in a document object.
Throws:
ConfiguratorException - when an error loading or validating the XML schema or the XML file.

resetAttributes

private void resetAttributes()
Initialize attribute values, prior to load configuration values.


loadList

private void loadList(org.w3c.dom.NodeList nl,
                      java.lang.reflect.Method loadMethod)
               throws ConfiguratorException
Walks through a list of nodes and call supplied method of this object type for appropriate loading.

Parameters:
nl - List of nodes to load.
loadMethod - the method of this object to call for loading each node.
Throws:
ConfiguratorException - throws when load method throws any exception or when a there is a problem invoking method.

addFormElement

private void addFormElement(org.w3c.dom.Node n)
                     throws ConfiguratorException
Loads a form and its parameters from supplied node & child nodes.

Parameters:
n - Node to load, it must be a Form.
Throws:
ConfiguratorException - throws when there is a problem creating parameter object.

addLanguageElement

private void addLanguageElement(org.w3c.dom.Node n)
                         throws ConfiguratorException
Loads a language from supplied node.

Parameters:
n - Node to load, it must be a Language.
Throws:
ConfiguratorException - throws when there is a problem creating the language.

addModelElement

private void addModelElement(org.w3c.dom.Node n)
                      throws ConfiguratorException
Loads a model, its role-grants and results from supplied node & child nodes.

Parameters:
n - Node to load, it must be a Language.
Throws:
ConfiguratorException - throws when there is a problem loading model and subordinate elements.

addRoleElement

private void addRoleElement(org.w3c.dom.Node n)
                     throws ConfiguratorException
Loads a role from supplied node.

Parameters:
n - Node to load, it must be a Role.
Throws:
ConfiguratorException - throws when there is a problem creating the role object.

addValidationElement

private void addValidationElement(org.w3c.dom.Node n)
                           throws ConfiguratorException
Loads a validation from supplied node.

Parameters:
n - Node to load, it must be a Validation.
Throws:
ConfiguratorException - throws when there is a problem creating the validation object.

getAttributeValue

private java.lang.String getAttributeValue(org.w3c.dom.NamedNodeMap nnm,
                                           java.lang.String attrName)
Obtains the value of the supplied attribute from the nodemap.

Parameters:
nnm - the map with attributes of a node.
attrName - the name of the attribute to get.
Returns:
the value, or null if attribute is empty or not present.

getInstance

public static Configurator getInstance()
                                throws ConfiguratorException
Returns the singleton (also creates & loads configuration the first time).

Returns:
the singleton instance.
Throws:
ConfiguratorException - throws when failed to load configuration.

getInstance

public static Configurator getInstance(java.lang.String configFile)
                                throws ConfiguratorException
Returns the singleton loaded with configFile. It reloads singleton when previous configuration exists.

Parameters:
configFile - the configuration file name for loading the configuration.
Returns:
the singleton instance
Throws:
ConfiguratorException - throws when there is a problem loading the configuration.

getForms

public java.util.Hashtable<java.lang.String,Form> getForms()

setForms

public void setForms(java.util.Hashtable<java.lang.String,Form> forms)

getLanguages

public java.util.Hashtable<java.lang.String,Language> getLanguages()

setLanguages

public void setLanguages(java.util.Hashtable<java.lang.String,Language> languages)

getModels

public java.util.Hashtable<java.lang.String,Model> getModels()

setModels

public void setModels(java.util.Hashtable<java.lang.String,Model> models)

getRoles

public java.util.Hashtable<java.lang.String,Role> getRoles()

setRoles

public void setRoles(java.util.Hashtable<java.lang.String,Role> roles)

getValidations

public java.util.Hashtable<java.lang.String,Validation> getValidations()

setValidations

public void setValidations(java.util.Hashtable<java.lang.String,Validation> validations)

getConfigFile

public static java.lang.String getConfigFile()

setConfigFile

private static void setConfigFile(java.lang.String configFile)

getPackageModel

public java.lang.String getPackageModel()

setPackageModel

public void setPackageModel(java.lang.String packageModel)

getDefaultSecurityErrorView

public java.lang.String getDefaultSecurityErrorView()

setDefaultSecurityErrorView

public void setDefaultSecurityErrorView(java.lang.String defaultSecurityErrorView)

getDefaultValidationErrorView

public java.lang.String getDefaultValidationErrorView()

setDefaultValidationErrorView

public void setDefaultValidationErrorView(java.lang.String defaultValidationErrorView)

getDefaultErrorView

public java.lang.String getDefaultErrorView()

setDefaultErrorView

public void setDefaultErrorView(java.lang.String defaultErrorView)

getDefaultView

public java.lang.String getDefaultView()

setDefaultView

public void setDefaultView(java.lang.String defaultView)

getDefaultModel

public Model getDefaultModel()

setDefaultModel

public void setDefaultModel(Model defaultModel)

getDefaultLanguage

public Language getDefaultLanguage()

setDefaultLanguage

public void setDefaultLanguage(Language defaultLanguage)

getModelMapperClass

public java.lang.String getModelMapperClass()

setModelMapperClass

public void setModelMapperClass(java.lang.String modelMapperClass)
                         throws ConfiguratorException
Throws:
ConfiguratorException

getModelMapperClassReference

public java.lang.Class<ModelMapper> getModelMapperClassReference()

getViewMapperClass

public java.lang.String getViewMapperClass()

setViewMapperClass

public void setViewMapperClass(java.lang.String viewMapperClass)
                        throws ConfiguratorException
Throws:
ConfiguratorException

getViewMapperClassReference

public java.lang.Class<ViewMapper> getViewMapperClassReference()

getDefaultDateFormat

public java.lang.String getDefaultDateFormat()

setDefaultDateFormat

public void setDefaultDateFormat(java.lang.String defaultDateFormat)

getFormByKey

public Form getFormByKey(java.lang.String key)

getLanguageByKey

public Language getLanguageByKey(java.lang.String key)

getModelByKey

public Model getModelByKey(java.lang.String key)

getRoleByKey

public Role getRoleByKey(java.lang.String key)

getValidationByKey

public Validation getValidationByKey(java.lang.String key)

getDefaultRoles

public java.util.Hashtable<java.lang.String,Role> getDefaultRoles()
Get roles marked as default.

Returns:
a new list with the roles marked as default.

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

main

public static void main(java.lang.String[] args)
main method for testing purposes.

Parameters:
args -