From 1e2d667239ff115c21f97d83923cc1fe9b6c9b87 Mon Sep 17 00:00:00 2001 From: Brian Stansberry Date: Sun, 30 Aug 2015 16:13:50 -0500 Subject: [PATCH] [WFCORE-5234] Avoid ModelNode.asPropertyList() in high level hornetq marshaling --- .../as/messaging/MessagingXMLWriter.java | 57 ++++++++----------- 1 file changed, 24 insertions(+), 33 deletions(-) diff --git a/legacy/messaging/src/main/java/org/jboss/as/messaging/MessagingXMLWriter.java b/legacy/messaging/src/main/java/org/jboss/as/messaging/MessagingXMLWriter.java index 7b07c184624e..3a3bb350e55e 100644 --- a/legacy/messaging/src/main/java/org/jboss/as/messaging/MessagingXMLWriter.java +++ b/legacy/messaging/src/main/java/org/jboss/as/messaging/MessagingXMLWriter.java @@ -92,8 +92,8 @@ public void writeContent(XMLExtendedStreamWriter writer, SubsystemMarshallingCon if (node.hasDefined(HORNETQ_SERVER)) { final ModelNode servers = node.get(HORNETQ_SERVER); boolean first = true; - for (Property prop : servers.asPropertyList()) { - writeHornetQServer(writer, prop.getName(), prop.getValue()); + for (String name : servers.keys()) { + writeHornetQServer(writer, name, servers.get(name)); if (!first) { writeNewLine(writer); } else { @@ -105,8 +105,8 @@ public void writeContent(XMLExtendedStreamWriter writer, SubsystemMarshallingCon if (node.hasDefined(JMS_BRIDGE)) { final ModelNode jmsBridges = node.get(JMS_BRIDGE); boolean first = true; - for (Property prop : jmsBridges.asPropertyList()) { - writeJmsBridge(writer, prop.getName(), prop.getValue()); + for (String name : jmsBridges.keys()) { + writeJmsBridge(writer, name, jmsBridges.get(name)); if (!first) { writeNewLine(writer); } else { @@ -357,13 +357,12 @@ private static void writeQueues(final XMLExtendedStreamWriter writer, final Mode if (!node.isDefined()) { return; } - List properties = node.asPropertyList(); - if (!properties.isEmpty()) { + if (node.asInt() > 0) { writer.writeStartElement(Element.CORE_QUEUES.getLocalName()); - for (Property queueProp : properties) { + for (String queueName : node.keys()) { writer.writeStartElement(Element.QUEUE.getLocalName()); - writer.writeAttribute(Attribute.NAME.getLocalName(), queueProp.getName()); - final ModelNode queue = queueProp.getValue(); + writer.writeAttribute(Attribute.NAME.getLocalName(), queueName); + final ModelNode queue = node.get(queueName); QueueDefinition.ADDRESS.marshallAsElement(queue, writer); writeFilter(writer, queue); DURABLE.marshallAsElement(queue, writer); @@ -614,14 +613,12 @@ private static void writeConnectorServices(XMLExtendedStreamWriter writer, Model } private static void writeConnectionFactories(final XMLExtendedStreamWriter writer, final ModelNode node) throws XMLStreamException { - if (!node.isDefined() || node.keys().size() == 0) { + if (!node.isDefined()) { return; } - List properties = node.asPropertyList(); - if (!properties.isEmpty()) { - for (Property prop : properties) { - final String name = prop.getName(); - final ModelNode factory = prop.getValue(); + if (node.asInt() > 0) { + for (String name : node.keys()) { + final ModelNode factory = node.get(name); if (factory.isDefined()) { writer.writeStartElement(Element.CONNECTION_FACTORY.getLocalName()); writer.writeAttribute(Attribute.NAME.getLocalName(), name); @@ -637,14 +634,12 @@ private static void writeConnectionFactories(final XMLExtendedStreamWriter write } private static void writePooledConnectionFactories(final XMLExtendedStreamWriter writer, final ModelNode node) throws XMLStreamException { - if (!node.isDefined() || node.keys().size() == 0) { + if (!node.isDefined()) { return; } - List properties = node.asPropertyList(); - if (!properties.isEmpty()) { - for (Property prop : properties) { - final String name = prop.getName(); - final ModelNode factory = prop.getValue(); + if (node.asInt() > 0) { + for (String name : node.keys()) { + final ModelNode factory = node.get(name); if (factory.isDefined()) { writer.writeStartElement(Element.POOLED_CONNECTION_FACTORY.getLocalName()); @@ -684,14 +679,12 @@ private static boolean hasDefinedInboundConfigAttributes(ModelNode pcf) { } private static void writeJmsQueues(final XMLExtendedStreamWriter writer, final ModelNode node) throws XMLStreamException { - if (!node.isDefined() || node.keys().size() == 0) { + if (!node.isDefined()) { return; } - List properties = node.asPropertyList(); - if (!properties.isEmpty()) { - for (Property prop : properties) { - final String name = prop.getName(); - final ModelNode queue = prop.getValue(); + if (node.asInt() > 0) { + for (String name : node.keys()) { + final ModelNode queue = node.get(name); if (queue.isDefined()) { writer.writeStartElement(Element.JMS_QUEUE.getLocalName()); writer.writeAttribute(Attribute.NAME.getLocalName(), name); @@ -707,14 +700,12 @@ private static void writeJmsQueues(final XMLExtendedStreamWriter writer, final M } private static void writeTopics(final XMLExtendedStreamWriter writer, final ModelNode node) throws XMLStreamException { - if (!node.isDefined() || node.keys().size() == 0) { + if (!node.isDefined()) { return; } - List properties = node.asPropertyList(); - if (!properties.isEmpty()) { - for (Property prop : properties) { - final String name = prop.getName(); - final ModelNode topic = prop.getValue(); + if (node.asInt() > 0) { + for (String name : node.keys()) { + final ModelNode topic = node.get(name); if (topic.isDefined()) { writer.writeStartElement(Element.JMS_TOPIC.getLocalName()); writer.writeAttribute(Attribute.NAME.getLocalName(), name);