Difference between revisions of "PropertiesHandler"

From GreenVulcano Wiki
Jump to: navigation, search
 
Line 1: Line 1:
 
Class FQN: '''it.greenvulcano.util.metadata.PropertiesHandler'''
 
Class FQN: '''it.greenvulcano.util.metadata.PropertiesHandler'''
 +
 +
See also [[Placeholders]]
  
 
<syntaxhighlight lang="java5">
 
<syntaxhighlight lang="java5">
Line 5: Line 7:
 
  * Helper class for metadata substitution in strings.
 
  * Helper class for metadata substitution in strings.
 
  *
 
  *
  * @version 3.0.0 Feb 17, 2010
+
  * Search the classpath for a file named PropertiesHandler.properties containing,
  * @author GreenVulcano Developer Team
+
  * one at line, the FQN of classes implementing PropertyHandler interface, the
  *
+
  * found classes are instantiated and registered.
 
  *
 
  *
 
  **/
 
  **/
 
</syntaxhighlight>
 
</syntaxhighlight>
==Following the PropertiesHandler public static methods==
 
  
 +
==PropertiesHandler public static methods==
 
<syntaxhighlight lang="java5">
 
<syntaxhighlight lang="java5">
 
/**
 
* @param type
 
* @param handler
 
*/
 
public static void registerHandler(String type, PropertyHandler handler)
 
 
 
/**
 
/**
 
* This method inserts the correct values for the dynamic parameter found in
 
* This method inserts the correct values for the dynamic parameter found in
* the input string. The property value can be a combination of: - fixed : a
+
* the input string.
* text string; - ${{propname}} : a System property name.
 
 
*
 
*
 
* @param str
 
* @param str
*        the string to value
+
*        the string to evaluate
 
* @return the expanded string
 
* @return the expanded string
 
*
 
*
Line 37: Line 31:
 
/**
 
/**
 
* This method inserts the correct values for the dynamic parameter found in
 
* This method inserts the correct values for the dynamic parameter found in
* the input string. The property value can be a combination of: - fixed : a
+
* the input string.
* text string; - ${{propname}} : a System property name; - @{{propname}} :
 
* a inProperties property name;
 
 
*
 
*
 
* @param str
 
* @param str
*        the string to value
+
*        the string to evaluate
 
* @param inProperties
 
* @param inProperties
 
*        the hashTable containing the properties
 
*        the hashTable containing the properties
Line 54: Line 46:
 
/**
 
/**
 
* This method inserts the correct values for the dynamic parameter found in
 
* This method inserts the correct values for the dynamic parameter found in
* the input string. The property value can be a combination of: - fixed : a
+
* the input string.
* text string; - %{{class}} : the object class name; - %{{fqclass}} : the
 
* object fully qualified class name; - %{{package}} : the object package
 
* name; - ${{propname}} : a System property name; - @{{propname}} : a
 
* inProperties property name;
 
 
*
 
*
 
* @param str
 
* @param str
*        the string to value
+
*        the string to evaluate
 
* @param inProperties
 
* @param inProperties
 
*        the hashTable containing the properties
 
*        the hashTable containing the properties
Line 76: Line 64:
 
/**
 
/**
 
* This method inserts the correct values for the dynamic parameter found in
 
* This method inserts the correct values for the dynamic parameter found in
* the input string. The property value can be a combination of: - fixed : a
+
* the input string.
* text string; - %{{class}} : the object class name; - %{{fqclass}} : the
 
* object fully qualified class name; - %{{package}} : the obj package name;
 
* - ${{propname}} : a System property name; - @{{propname}} : a
 
* inProperties property name; - &{{script}} : a JavaScript script;
 
 
*
 
*
 
* @param str
 
* @param str
*        the string to value
+
*        the string to evaluate
 
* @param inProperties
 
* @param inProperties
 
*        the hashTable containing the properties
 
*        the hashTable containing the properties
Line 100: Line 84:
 
/**
 
/**
 
* This method inserts the correct values for the dynamic parameter found in
 
* This method inserts the correct values for the dynamic parameter found in
* the input string. The property value can be a combination of: - fixed : a
+
* the input string.
* text string; - %{{class}} : the object class name; - %{{fqclass}} : the
 
* object fully qualified class name; - %{{package}} : the object package
 
* name; - ${{propname}} : a System property name; - @{{propname}} : a
 
* inProperties property name; - &{{script}} : a JavaScript script;
 
 
*
 
*
 
* @param str
 
* @param str
*        the string to value
+
*        the string to evaluate
 
* @param inProperties
 
* @param inProperties
 
*        the hashTable containing the properties
 
*        the hashTable containing the properties
Line 123: Line 103:
 
public static String expand(String str, Map<String, Object> inProperties, Object obj, Scriptable scope, Object extra)
 
public static String expand(String str, Map<String, Object> inProperties, Object obj, Scriptable scope, Object extra)
 
         throws PropertiesHandlerException
 
         throws PropertiesHandlerException
 
/**
 
* @param type
 
* @param value
 
* @param inProperties
 
* @param obj
 
* @param scope
 
* @param extra
 
*        a extra object passed to property handlers
 
* @return the expanded string
 
* @throws PropertiesHandlerException
 
*/
 
public static String expandInternal(String type, String value, Map<String, Object> inProperties, Object obj,
 
        Scriptable scope, Object extra) throws PropertiesHandlerException
 
  
 
/**
 
/**

Latest revision as of 18:03, 21 December 2012

Class FQN: it.greenvulcano.util.metadata.PropertiesHandler

See also Placeholders

/**
 * Helper class for metadata substitution in strings.
 *
 * Search the classpath for a file named PropertiesHandler.properties containing,
 * one at line, the FQN of classes implementing PropertyHandler interface, the 
 * found classes are instantiated and registered.
 *
 **/

PropertiesHandler public static methods

/**
* This method inserts the correct values for the dynamic parameter found in
* the input string.
*
* @param str
*        the string to evaluate
* @return the expanded string
*
* @throws PropertiesHandlerException
*         if error occurs and the flag THROWS_EXCEPTION is set
*/
public static String expand(String str) throws PropertiesHandlerException

/**
* This method inserts the correct values for the dynamic parameter found in
* the input string.
*
* @param str
*        the string to evaluate
* @param inProperties
*        the hashTable containing the properties
* @return the expanded string
*
* @throws PropertiesHandlerException
*         if error occurs and the flag THROWS_EXCEPTION is set
*/
public static String expand(String str, Map<String, Object> inProperties) throws PropertiesHandlerException

/**
* This method inserts the correct values for the dynamic parameter found in
* the input string.
*
* @param str
*        the string to evaluate
* @param inProperties
*        the hashTable containing the properties
* @param obj
*        the object to work with
* @return the expanded string
*
* @throws PropertiesHandlerException
*         if error occurs and the flag THROWS_EXCEPTION is set
*/
public static String expand(String str, Map<String, Object> inProperties, Object obj)
         throws PropertiesHandlerException

/**
* This method inserts the correct values for the dynamic parameter found in
* the input string.
*
* @param str
*        the string to evaluate
* @param inProperties
*        the hashTable containing the properties
* @param obj
*        the object to work with
* @param scope
*        the JavaScript scope
* @return the expanded string
*
* @throws PropertiesHandlerException
*         if error occurs and the flag THROWS_EXCEPTION is set
*/
public static String expand(String str, Map<String, Object> inProperties, Object obj, Scriptable scope)
         throws PropertiesHandlerException

/**
* This method inserts the correct values for the dynamic parameter found in
* the input string.
*
* @param str
*        the string to evaluate
* @param inProperties
*        the hashTable containing the properties
* @param obj
*        the object to work with
* @param scope
*        the JavaScript scope
* @param extra
*        a extra object passed to property handlers
* @return the expanded string
*
* @throws PropertiesHandlerException
*         if error occurs and the flag THROWS_EXCEPTION is set
*/
public static String expand(String str, Map<String, Object> inProperties, Object obj, Scriptable scope, Object extra)
         throws PropertiesHandlerException

/**
* Enables the exception throwing on errors, for the current thread.
*
* Example:
*
* <pre>
*
*     ...
*     PropertiesHandler.enableExceptionOnErrors();
*     try {
*        ...
*        String value = PropertiesHandler.expand(...);
*        ...
*     }
*     catch (PropertiesHandlerException exc) {
*        ...
*     }
*     finally {
*        PropertiesHandler.disableExceptionOnErrors();
*     }
*
* </pre>
*/
public static void enableExceptionOnErrors()

/**
* Disables the exception throwing on errors, for the current thread.
*
*/
public static void disableExceptionOnErrors()

/**
* Checks if the exception throwing on errors is enabled for the current
* thread.
*
* @return if the exception throwing on errors is enabled for the current
*         thread.
*
*/
public static boolean isExceptionOnErrors()

/**
* Checks if the input string need to be processed.
*
* @param str
*        the string to check
* @return true if the string is processed
*/
public static boolean isExpanded(String str)