diff options
Diffstat (limited to 'org/madore/damlengine/TodoElement.java')
-rw-r--r-- | org/madore/damlengine/TodoElement.java | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/org/madore/damlengine/TodoElement.java b/org/madore/damlengine/TodoElement.java index 7df38c9..ee1a90f 100644 --- a/org/madore/damlengine/TodoElement.java +++ b/org/madore/damlengine/TodoElement.java @@ -28,11 +28,11 @@ public abstract class TodoElement extends TodoItem { } protected final static Map<String,Factory> damlFactories; - protected final static Factory damlDefaultFactory; + protected final static Factory defaultFactory; static { damlFactories = new HashMap<String,Factory>(); - damlDefaultFactory = new TodoDefaultElement.Factory(); + defaultFactory = new TodoDefaultElement.Factory(); damlFactories.put("daml", new TodoDamlElement.Factory()); damlFactories.put("body", new TodoBodyElement.Factory()); damlFactories.put("weblog", new TodoWeblogElement.Factory()); @@ -72,6 +72,9 @@ public abstract class TodoElement extends TodoItem { protected final static Factory killAFactory = new TodoKillAElement.Factory(); + protected final static Factory killAcronymFactory + = new TodoKillAcronymElement.Factory(); + protected final Element node; public TodoElement(Element node, @@ -88,11 +91,14 @@ public abstract class TodoElement extends TodoItem { String nsuri = node.getNamespaceURI(); if ( nsuri != null && nsuri.equals(DamlEngine.DAML_NS) ) factory = damlFactories.get(node.getLocalName()); - else if ( nsuri != null && nsuri.equals(DamlEngine.XHTML_NS) - && ctx.killA && node.getLocalName().equals("a") ) - factory = killAFactory; + else if ( nsuri != null && nsuri.equals(DamlEngine.XHTML_NS) ) { + if ( ctx.killA && node.getLocalName().equals("a") ) + factory = killAFactory; + else if ( node.getLocalName().equals("acronym") ) + factory = killAcronymFactory; + } if ( factory == null ) - factory = damlDefaultFactory; + factory = defaultFactory; return factory.newItem(node, ctx, caller); } |