PropertyConduitSource could build a shared method to "navigate" to the final 
property
-------------------------------------------------------------------------------------

                 Key: TAPESTRY-2404
                 URL: https://issues.apache.org/jira/browse/TAPESTRY-2404
             Project: Tapestry
          Issue Type: Improvement
          Components: tapestry-core
    Affects Versions: 5.0.11
            Reporter: Howard M. Lewis Ship
            Priority: Minor
             Fix For: 5.1


Currently, the generated code for a PropertyConduit has a lot of duplication in 
it; the duplication being the initial check that the root is not null (a sanity 
check), then casting it from object to the expected expression root type, then 
following the steps to read properties.  The divergence occurs in the final 
step, where the read gets a property and the write sets a property.  Along the 
way, there are null checks and conversions from primitive to wrapper types.

This could be encapsulated in a navigate() method that is passed the root 
object and returns the final object.  A simple property expression would just 
return the root object.  "foo.bar" would return property foo (i.e. 
root.getFoo()), so that the writer could invoke setBar() and the reader could 
invoke getBar() ... and so forth.

This will be more important when the expression language grows so support 
invoking methods with parameters, or generating lists or maps (and other 
goodness that OGNL used to supply).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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

Reply via email to