org.nuiton.util
Class ApplicationConfig.SubApplicationConfig

java.lang.Object
  extended by org.nuiton.util.ApplicationConfig
      extended by org.nuiton.util.ApplicationConfig.SubApplicationConfig
Enclosing class:
ApplicationConfig

public static class ApplicationConfig.SubApplicationConfig
extends ApplicationConfig

Permet de masquer un prefix. Il est possible d'avoir des valeurs par defaut. Par exemple:

 monOption=toto
 monPrefix.monOption=titi
 

  • Si on cree le subApp avec le prefix "monPrefix." et qu'on demande la valeur de "monOption", la valeur retournee est "titi".
  • Si on cree le subApp avec le prefix "monAutrePrefix." et qu'on demande la valeur de "monOption", la valeur retournee est "toto" (valeur par defaut de monOption.

    Certaines methodes retournees ne sont pas surchargee et ne masque pas le prefix:

  • getOptions()

    Since:
    2.4.9

    Nested Class Summary
     
    Nested classes/interfaces inherited from class org.nuiton.util.ApplicationConfig
    ApplicationConfig.Action, ApplicationConfig.ActionDef, ApplicationConfig.CacheItem<T>, ApplicationConfig.OptionDef, ApplicationConfig.OptionList, ApplicationConfig.SubApplicationConfig
     
    Field Summary
    protected  ApplicationConfig parent
               
    protected  String prefix
               
     
    Fields inherited from class org.nuiton.util.ApplicationConfig
    actions, ADJUSTING_PROPERTY, aliases, APP_NAME, cacheAction, cacheOption, classpath, CONFIG_ENCODING, CONFIG_FILE_NAME, CONFIG_PATH, context, curfile, defaults, env, etcfile, homefile, inParseOptionPhase, jvm, line, LIST_SEPARATOR, options, osName, pcs, unparsed, useOnlyAliases, userPath
     
    Constructor Summary
    ApplicationConfig.SubApplicationConfig(ApplicationConfig parent, String prefix)
               
     
    Method Summary
     void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
               
    protected  void firePropertyChange(String propertyName, Object oldValue, Object newValue)
               
     Properties getFlatOptions(boolean replaceInner)
              Surcharge de la methode pour que les options commencant par le prefix soit modifiee pour qu'elle est la meme cle sans le prefix.
     String getOption(String key)
              Surcharge pour recherche la cle avec le prefix.
     Properties getOptions()
              Get all options from configuration.
     Properties getOptionStartsWith(String prefix)
              Surcharge pour recupere les valeurs commencant par le prefix demande en plus du prefix 'sub'.
     ApplicationConfig getParent()
               
     String getPrefix()
               
     boolean hasListeners(String propertyName)
               
     boolean hasOption(String key)
              Teste si un option existe ou non.
    protected  void init(Properties defaults, String configFilename)
              On separt l'init du corps du constructeur, car les sous classes ne doivent pas l'executer.
     ApplicationConfig parse(String... args)
              Parse option and call set necessary method, read jvm, env variable, Load configuration file and prepare Action.
     void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
               
     void setDefaultOption(String key, String value)
              Used to put default configuration option in config option.
     void setOption(String key, String value)
              Set option value.
     
    Methods inherited from class org.nuiton.util.ApplicationConfig
    addAction, addActionAlias, addAlias, addPropertyChangeListener, convertOption, createAction, doAction, doAllAction, getActionStep, getConfigFileName, getConfigFileNameOption, getConfigPath, getEncoding, getEncodingOption, getFlatOptions, getMethods, getObject, getObject, getOption, getOption, getOptionAsBoolean, getOptionAsClass, getOptionAsDate, getOptionAsDouble, getOptionAsFile, getOptionAsFloat, getOptionAsInt, getOptionAsList, getOptionAsLocale, getOptionAsLong, getOptionAsObject, getOptionAsObject, getOptionAsProperties, getOptionAsSingleton, getOptionAsSingleton, getOptionAsTime, getOptionAsTimestamp, getOptionAsURL, getOptionAsVersion, getParams, getPrintableConfig, getPropertyChangeListeners, getPropertyChangeListeners, getSubConfig, getSystemConfigFile, getSystemConfigurationPath, getUnparsed, getUserConfigDirectory, getUserConfigFile, getUserHome, getUsername, hasOption, installSaveUserAction, isAdjusting, isUseOnlyAliases, loadActions, loadActions, loadDefaultOptions, loadDefaultOptions, loadResource, migrateUserConfigurationFile, printConfig, printConfig, putObject, putObject, removePropertyChangeListener, replaceRecursiveOptions, save, saveForSystem, saveForUser, saveResource, setAdjusting, setAppName, setConfigFileName, setEncoding, setOptions, setUseOnlyAliases
     
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
     

    Field Detail

    parent

    protected ApplicationConfig parent

    prefix

    protected String prefix
    Constructor Detail

    ApplicationConfig.SubApplicationConfig

    public ApplicationConfig.SubApplicationConfig(ApplicationConfig parent,
                                                  String prefix)
    Method Detail

    init

    protected void init(Properties defaults,
                        String configFilename)
    Description copied from class: ApplicationConfig
    On separt l'init du corps du constructeur, car les sous classes ne doivent pas l'executer.

    Overrides:
    init in class ApplicationConfig

    getParent

    public ApplicationConfig getParent()

    getPrefix

    public String getPrefix()

    getOptions

    public Properties getOptions()
    Description copied from class: ApplicationConfig
    Get all options from configuration.

    Overrides:
    getOptions in class ApplicationConfig
    Returns:
    Properties which contains all options

    setDefaultOption

    public void setDefaultOption(String key,
                                 String value)
    Description copied from class: ApplicationConfig
    Used to put default configuration option in config option. Those options are used as fallback value.

    Overrides:
    setDefaultOption in class ApplicationConfig
    Parameters:
    key - default property key
    value - default property value

    hasOption

    public boolean hasOption(String key)
    Description copied from class: ApplicationConfig
    Teste si un option existe ou non.

    Overrides:
    hasOption in class ApplicationConfig
    Parameters:
    key - la clef de l'option à tester
    Returns:
    true si l'option existe, false sinon.

    setOption

    public void setOption(String key,
                          String value)
    Description copied from class: ApplicationConfig
    Set option value.

    Overrides:
    setOption in class ApplicationConfig
    Parameters:
    key - property key
    value - property value

    getOption

    public String getOption(String key)
    Surcharge pour recherche la cle avec le prefix. Si on ne la retrouve pas, on recherche sans le prefix pour permettre d'avoir des valeurs par defaut.

    Overrides:
    getOption in class ApplicationConfig
    Parameters:
    key - La cle de l'option
    Returns:
    l'option trouvé avec le prefix ou sinon celle sans le prefix si pas trouvé.

    getFlatOptions

    public Properties getFlatOptions(boolean replaceInner)
    Surcharge de la methode pour que les options commencant par le prefix soit modifiee pour qu'elle est la meme cle sans le prefix. Le but est de garder les autres options et si une option avait le meme nom qu'elle soit effacee par celle dont on a supprime le prefix

    Overrides:
    getFlatOptions in class ApplicationConfig
    Parameters:
    replaceInner - le prefix à remplacer
    Returns:
    les options commencant par le prefix soit modifiee pour qu'elle est la meme cle sans le prefix. Le but est de garder les autres options et si une option avait le meme nom qu'elle soit effacee par celle dont on a supprime le prefix

    getOptionStartsWith

    public Properties getOptionStartsWith(String prefix)
    Surcharge pour recupere les valeurs commencant par le prefix demande en plus du prefix 'sub'. Les options sont ensuite fusionnee pour permettre aussi les valeurs par defaut

    Overrides:
    getOptionStartsWith in class ApplicationConfig
    Parameters:
    prefix - prefix to use
    Returns:
    les valeurs commençant par le prefix demandé en plus du prefix 'sub'.

    firePropertyChange

    protected void firePropertyChange(String propertyName,
                                      Object oldValue,
                                      Object newValue)
    Overrides:
    firePropertyChange in class ApplicationConfig

    addPropertyChangeListener

    public void addPropertyChangeListener(String propertyName,
                                          PropertyChangeListener listener)
    Overrides:
    addPropertyChangeListener in class ApplicationConfig

    removePropertyChangeListener

    public void removePropertyChangeListener(String propertyName,
                                             PropertyChangeListener listener)
    Overrides:
    removePropertyChangeListener in class ApplicationConfig

    hasListeners

    public boolean hasListeners(String propertyName)
    Overrides:
    hasListeners in class ApplicationConfig

    parse

    public ApplicationConfig parse(String... args)
                            throws ArgumentsParserException
    Description copied from class: ApplicationConfig
    Parse option and call set necessary method, read jvm, env variable, Load configuration file and prepare Action.

    Overrides:
    parse in class ApplicationConfig
    Parameters:
    args - argument as main(String[] args)
    Returns:
    ApplicationConfig instance
    Throws:
    ArgumentsParserException - if parsing failed


    Copyright © 2004-2012 CodeLutin. All Rights Reserved.