/**\r
* Transformer which aggregates multiple implementations of\r
* {@link InputClassBasedTransformer}.\r
- * \r
+ *\r
* The transformation process is driven by {@link Class} of input. The selection\r
* of used {@link InputClassBasedTransformer} is done by using the {@link Class}\r
* of input as a key to select the transformer.\r
- * \r
+ *\r
* This approach provides quick resolution of transformer, but does not support\r
* registering a super type of input to provide transformation support for all\r
* subclasses, one must register a new instance of transformer for each valid\r
* input class.\r
- * \r
+ *\r
* If you need more flexible selection of transformation consider using\r
* {@link CompositeConditionalTransformer} which is slower but most flexible or\r
* {@link RuleBasedTransformer} which provides declarative approach for\r
* transformation.\r
- * \r
+ *\r
* See {@link #transform(Object)} for more information about tranformation\r
* process.\r
- * \r
+ *\r
* @author Tony Tkacik <ttkacik@cisco.com>\r
- * \r
+ *\r
* @param <I>\r
* Input super-type\r
* @param <P>\r
\r
/**\r
* Transforms an input into instance of Product class.\r
- * \r
+ *\r
* The final registered transformer is the one which match following\r
* condition:\r
- * \r
+ *\r
* <code>input.getClass() == transformer.getInputClass()</code>\r
- * \r
+ *\r
* This means that transformers are not resolved by class hierarchy, only\r
* selected based on final class of the input. If you need more flexible\r
* selection of transformation consider using\r
* {@link CompositeConditionalTransformer} which is slower but more\r
* flexible.\r
- * \r
+ *\r
*/\r
@Override\r
public P transform(I input) {\r
\r
/**\r
* Registers a new transformer.\r
- * \r
+ *\r
* The transformer is registered for class returned by\r
* {@link InputClassBasedTransformer#getInputClass()}. Only one transformer\r
* can be registered for particular input class.\r
- * \r
+ *\r
*/\r
public void addTransformer(\r
InputClassBasedTransformer<I, ? extends I, P> transformer)\r
\r
/**\r
* Removes an registered transformer.\r
- * \r
+ *\r
* Note: Removal is currently unsupported.\r
- * \r
+ *\r
* @param transformer\r
* Tranformer to be removed.\r
* @throws IllegalArgumentException\r
throws IllegalArgumentException {\r
throw new UnsupportedOperationException("Not implemented yet");\r
}\r
- \r
+\r
@Override\r
public Collection<P> transformAll(Collection<? extends I> inputs) {\r
Collection<P> ret = new ArrayList<P>();\r