[ 
http://issues.apache.org/jira/browse/HIVEMIND-87?page=comments#action_12417442 
] 

Knut Wannheden commented on HIVEMIND-87:
----------------------------------------

This could be achieved by using a translator initializer. Then the syntax would 
be with a comma. E.g.

  <attribute name="object" translator="object,java.lang.Runnable"/>

(Although I wonder if a '|' or ':' wouldn't be better as separator.)

The object translator would have to work out how to perform the assignability 
check if given both a type in the initializer and a type as parameter to the 
translate() method. I.e. what to do if these are conflicting and which one is 
"stronger".

> object translator: optionally, specify interface
> ------------------------------------------------
>
>          Key: HIVEMIND-87
>          URL: http://issues.apache.org/jira/browse/HIVEMIND-87
>      Project: HiveMind
>         Type: New Feature

>   Components: framework
>     Reporter: Howard M. Lewis Ship

>
> It is very commonly the case when using the  object translator that the 
> object must be assignable to a particular interface (or extend a particular 
> class). In most cases, the value obtained will be injected into a property of 
> an object and a ClassCastException will occur that will (hopefully) identify 
> the invalid contribution.
> In some cases, the object may go into some form of untyped collection, 
> causing a class cast exception at a later point.
> It would be nice if the object translator could enforce an assignability 
> check directly, ie.
> <attribute name="object" translator="object:java.lang.Runnable"/>

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to