com.pmease.quickbuild.execution.killtree
Class VariableResolver.ByMap<V>

java.lang.Object
  extended by com.pmease.quickbuild.execution.killtree.VariableResolver.ByMap<V>
All Implemented Interfaces:
VariableResolver<V>
Enclosing interface:
VariableResolver<V>

public static final class VariableResolver.ByMap<V>
extends java.lang.Object
implements VariableResolver<V>

VariableResolver backed by a Map.


Nested Class Summary
 
Nested classes/interfaces inherited from interface com.pmease.quickbuild.execution.killtree.VariableResolver
VariableResolver.ByMap<V>, VariableResolver.Union<V>
 
Field Summary
 
Fields inherited from interface com.pmease.quickbuild.execution.killtree.VariableResolver
NONE
 
Constructor Summary
VariableResolver.ByMap(java.util.Map<java.lang.String,V> data)
           
 
Method Summary
 V resolve(java.lang.String name)
          Receives a variable name and obtains the value associated with the name.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

VariableResolver.ByMap

public VariableResolver.ByMap(java.util.Map<java.lang.String,V> data)
Method Detail

resolve

public V resolve(java.lang.String name)
Description copied from interface: VariableResolver
Receives a variable name and obtains the value associated with the name.

This can be implemented simply on top of a VariableResolver.ByMap (see VariableResolver.ByMap), or this can be used like an expression evaluator.

Specified by:
resolve in interface VariableResolver<V>
Parameters:
name - Name of the variable to be resolved. Never null, never empty. The name shouldn't include the syntactic marker of an expression. IOW, it should be "foo" but not "${foo}". A part of the goal of this design is to abstract away the expression marker syntax.
Returns:
Object referenced by the name. Null if not found.


Copyright © 2005-2010 PMEase Inc. All Rights Reserved.