Daniel Rall <[EMAIL PROTECTED]> writes: ... > is it possible to use HyphenatedNameMapper's > mapTypeToElementName(String typeName) (or something of the sort) to > transform ScarabIssues.class into the String "scarab-issues" (to > obviate the hard-coding of magic strings)?
To answer my own quesiton, it is possible: http://scarab.tigris.org/source/browse/scarab/src/java/org/tigris/scarab/util/xmlissues/ImportIssues.java.diff?r1=1.25&r2=1.26 You'll notice that I had to add a local mapTypeToElementName(Class, NameMapper) method which strips the package name off of the class name before handing off to HyphenatedNameMapper for resolution to a XML element. This same code must be present somewhere within Betwixt, and I would prefer to take advantage of it rather than re-implementing it in Scarab's ImportIssues class. It may be only a few trivial lines, but I feel that my inclusion of it infringes on ideal encapsulation (even with my update of Betwixt's JavaDoc). A possible improvement would be to loosen the API of NameMapper to accept Object rather than String, then use "instanceof Class" inside of HyphenatedNameMapper to detemine whether a package name should be stripped off of the input. This would shift all mapping responsibility out of elsewhere in Betwixt (called from somewhere in BeanReader, I assume) down into NameMapper implementations. Perhaps not what is wanted, of course -- just a suggestion. - Dan --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
