org.ldaptive.props
Class PropertyValueParser

java.lang.Object
  extended by org.ldaptive.props.PropertyValueParser
Direct Known Subclasses:
CredentialConfigParser

public class PropertyValueParser
extends Object

Parses the configuration data associated with classes that contain setter properties. The format of the property string should be like:

   MyClass{{propertyOne=foo}{propertyTwo=bar}}
 

If the class name is supplied to the constructor, the property string need not contain the class declaration.

Version:
$Revision: 2885 $ $Date: 2014-02-05 16:28:49 -0500 (Wed, 05 Feb 2014) $
Author:
Middleware Services

Field Summary
protected static Pattern CONFIG_PATTERN
          Property string containing configuration.
protected  org.slf4j.Logger logger
          Logger for this class.
protected static Pattern PARAMS_ONLY_CONFIG_PATTERN
          Property string for configuring a config where the class is known.
protected static Pattern PROPERTY_PATTERN
          Pattern for finding properties.
 
Constructor Summary
protected PropertyValueParser()
          Default constructor.
  PropertyValueParser(String config)
          Creates a new config parser.
  PropertyValueParser(String config, String clazz)
          Creates a new config parser.
 
Method Summary
 String getClassName()
          Returns the class name of the object to initialize.
 Map<String,String> getProperties()
          Returns the properties from the configuration.
protected  void initialize(String clazz, String props)
          Invokes setClassName(String) and initializeProperties(Matcher).
protected  void initializeProperties(Matcher matcher)
          Finds all the matches in the supplied matcher puts them into the properties map.
 Object initializeType()
          Initialize an instance of the class type with the properties contained in this config.
static boolean isConfig(String config)
          Returns whether the supplied configuration data contains a config.
static boolean isParamsOnlyConfig(String config)
          Returns whether the supplied configuration data contains a params only config.
protected  void setClassName(String name)
          Sets the class name of the object to initialize.
protected  void setProperties(Class<?> c, Object o)
          Sets the properties on the supplied object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CONFIG_PATTERN

protected static final Pattern CONFIG_PATTERN
Property string containing configuration.


PARAMS_ONLY_CONFIG_PATTERN

protected static final Pattern PARAMS_ONLY_CONFIG_PATTERN
Property string for configuring a config where the class is known.


PROPERTY_PATTERN

protected static final Pattern PROPERTY_PATTERN
Pattern for finding properties.


logger

protected final org.slf4j.Logger logger
Logger for this class.

Constructor Detail

PropertyValueParser

protected PropertyValueParser()
Default constructor.


PropertyValueParser

public PropertyValueParser(String config)
Creates a new config parser.

Parameters:
config - containing configuration data

PropertyValueParser

public PropertyValueParser(String config,
                           String clazz)
Creates a new config parser.

Parameters:
config - containing configuration data
clazz - fully qualified class name
Method Detail

initialize

protected void initialize(String clazz,
                          String props)
Invokes setClassName(String) and initializeProperties(Matcher).

Parameters:
clazz - type to create and initialize
props - to set on the class

initializeProperties

protected void initializeProperties(Matcher matcher)
Finds all the matches in the supplied matcher puts them into the properties map. Properties are split on '='.

Parameters:
matcher - to find matches

getClassName

public String getClassName()
Returns the class name of the object to initialize.

Returns:
class name

setClassName

protected void setClassName(String name)
Sets the class name of the object to initialize.

Parameters:
name - of the object class type

getProperties

public Map<String,String> getProperties()
Returns the properties from the configuration.

Returns:
map of property name to value

isConfig

public static boolean isConfig(String config)
Returns whether the supplied configuration data contains a config.

Parameters:
config - containing configuration data
Returns:
whether the supplied configuration data contains a config

isParamsOnlyConfig

public static boolean isParamsOnlyConfig(String config)
Returns whether the supplied configuration data contains a params only config.

Parameters:
config - containing configuration data
Returns:
whether the supplied configuration data contains a params only config

initializeType

public Object initializeType()
Initialize an instance of the class type with the properties contained in this config.

Returns:
object of the type the config parsed

setProperties

protected void setProperties(Class<?> c,
                             Object o)
Sets the properties on the supplied object.

Parameters:
c - type of the supplied object
o - to invoke properties on


Copyright © 2003-2015 Virginia Tech. All Rights Reserved.