[
https://issues.apache.org/jira/browse/JEXL-54?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12707024#action_12707024
]
Henri Biestro commented on JEXL-54:
-----------------------------------
I misread the dependencies, most notably java 1.4; I'll repost without the java
5 features soon.
> Light performance enhancements
> ------------------------------
>
> Key: JEXL-54
> URL: https://issues.apache.org/jira/browse/JEXL-54
> Project: Commons JEXL
> Issue Type: Improvement
> Affects Versions: 1.1
> Reporter: Henri Biestro
> Fix For: 2.0
>
> Attachments: JEXL-54.patch
>
>
> The ClassMap.MethodCache uses String as key to methods; these keys are forged
> by concatenating the name of the method & the argument classes names
> (converted to their object equivalent for primitive types). Replacing the key
> scheme & using a dedicated class to implement the keys yields some
> performance improvement. (aka 3x faster to get from a map).
> The MethodMap uses an HashTable; by synchronizing MethodMap.{add,get} and
> synchronizing ClassMap.{get,put} on its MethodMap instance, it is possible to
> use a basic HashMap instead.
> There are various places where a StringBuffer is used when a StringBuilder
> will suffice.
> As a side note, there are a few places where the code readability can be
> improved by using strongly typed collections.
> As a small "missing" feature, exposing access to the Introspector from the
> Uberspector (Introspector getIntrospector()) allows to re-use JEXL for some
> lower level introspection needs.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.