Package com.day.cq.mailer.commons
Class ProfileVariableLookup
- java.lang.Object
 - 
- org.apache.commons.lang.text.StrLookup
 - 
- com.day.cq.mailer.commons.ProfileVariableLookup
 
 
 
- 
public class ProfileVariableLookup extends StrLookup
Implements aStrLookupthat is looking up variables from aAuthorizable's UserProperties. Additional variables can bee added via aput(String, String). If the key exists in the UserProperties, the value is overwritten with the newly set- Since:
 - 5.4
 - See Also:
 StrLookup
 
- 
- 
Field Summary
Fields Modifier and Type Field Description static java.lang.StringAUTHORIZABLE_ID 
- 
Constructor Summary
Constructors Constructor Description ProfileVariableLookup(Authorizable authorizable, UserProperties userProperties, java.util.Map<java.lang.String,java.lang.String> overlays) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Stringlookup(java.lang.String variable)Looks up a String key to a String value.voidput(java.lang.String var, java.lang.String replace)Adds or overwrites a mapping of this replacer.- 
Methods inherited from class org.apache.commons.lang.text.StrLookup
mapLookup, noneLookup, systemPropertiesLookup 
 - 
 
 - 
 
- 
- 
Field Detail
- 
AUTHORIZABLE_ID
public static final java.lang.String AUTHORIZABLE_ID
- See Also:
 - Constant Field Values
 
 
 - 
 
- 
Constructor Detail
- 
ProfileVariableLookup
public ProfileVariableLookup(Authorizable authorizable, UserProperties userProperties, java.util.Map<java.lang.String,java.lang.String> overlays) throws java.beans.IntrospectionException
- Parameters:
 authorizable- The authorizable for which variables need to be looked up.userProperties- The properties of the authorizable.overlays- The map of overlays- Throws:
 java.beans.IntrospectionException- when not being able to map a string class name to a Class object
 
 - 
 
- 
Method Detail
- 
lookup
public java.lang.String lookup(java.lang.String variable)
Looks up a String key to a String value.The internal implementation may use any mechanism to return the value. The simplest implementation is to use a Map. However, virtually any implementation is possible.
For example, it would be possible to implement a lookup that used the key as a primary key, and looked up the value on demand from the database Or, a numeric based implementation could be created that treats the key as an integer, increments the value and return the result as a string - converting 1 to 2, 15 to 16 etc.
The
StrLookup.lookup(String)method always returns a String, regardless of the underlying data, by converting it as necessary. For example:Map map = new HashMap(); map.put("number", new Integer(2)); assertEquals("2", StrLookup.mapLookup(map).lookup("number")); 
- 
put
public void put(java.lang.String var, java.lang.String replace)Adds or overwrites a mapping of this replacer.- Parameters:
 var- name of the variable to mapreplace- the value of the variable
 
 - 
 
 -