@Override public void writeContent(XMLExtendedStreamWriter writer, ModelMarshallingContext context) throws XMLStreamException { String defaultNamespace = writer.getNamespaceContext().getNamespaceURI(XMLConstants.DEFAULT_NS_PREFIX); try { ModelNode subsystem = context.getModelNode().get(SUBSYSTEM, mainSubsystemName); XMLElementWriter<SubsystemMarshallingContext> subsystemWriter = context.getSubsystemWriter(mainSubsystemName); if (subsystemWriter != null) { subsystemWriter.writeContent(writer, new SubsystemMarshallingContext(subsystem, writer)); } } finally { writer.setDefaultNamespace(defaultNamespace); } writer.writeEndDocument(); }
@Override public void writeContent(XMLExtendedStreamWriter writer, ModelMarshallingContext context) throws XMLStreamException { String defaultNamespace = writer.getNamespaceContext().getNamespaceURI(XMLConstants.DEFAULT_NS_PREFIX); try { ModelNode subsystem = context.getModelNode().get(SUBSYSTEM, mainSubsystemName); if (subsystem.isDefined()) { // We might have been removed XMLElementWriter<SubsystemMarshallingContext> subsystemWriter = context.getSubsystemWriter(mainSubsystemName); if (subsystemWriter != null) { subsystemWriter.writeContent(writer, new SubsystemMarshallingContext(subsystem, writer)); } } } catch (Throwable t) { Assert.fail("could not marshal subsystem xml " + t); } finally { writer.setDefaultNamespace(defaultNamespace); } writer.writeEndDocument(); }
private void writeProfile( final XMLExtendedStreamWriter writer, final String profileName, final ModelNode profileNode, final ModelMarshallingContext context) throws XMLStreamException { writer.writeStartElement(Element.PROFILE.getLocalName()); writer.writeAttribute(Attribute.NAME.getLocalName(), profileName); if (profileNode.hasDefined(INCLUDES)) { for (final ModelNode include : profileNode.get(INCLUDES).asList()) { writer.writeEmptyElement(INCLUDE); writer.writeAttribute(PROFILE, include.asString()); } } if (profileNode.hasDefined(SUBSYSTEM)) { final Set<String> subsystemNames = profileNode.get(SUBSYSTEM).keys(); if (subsystemNames.size() > 0) { String defaultNamespace = writer.getNamespaceContext().getNamespaceURI(XMLConstants.DEFAULT_NS_PREFIX); for (String subsystemName : subsystemNames) { try { ModelNode subsystem = profileNode.get(SUBSYSTEM, subsystemName); XMLElementWriter<SubsystemMarshallingContext> subsystemWriter = context.getSubsystemWriter(subsystemName); if (subsystemWriter != null) { // FIXME -- remove when extensions are doing the registration subsystemWriter.writeContent( writer, new SubsystemMarshallingContext(subsystem, writer)); } } finally { writer.setDefaultNamespace(defaultNamespace); } } } } writer.writeEndElement(); }
@Override public void writeContent( final XMLExtendedStreamWriter writer, final ModelMarshallingContext context) throws XMLStreamException { ModelNode modelNode = context.getModelNode(); writer.writeStartDocument(); writer.writeStartElement(Element.DOMAIN.getLocalName()); writer.writeDefaultNamespace(Namespace.CURRENT.getUriString()); writeNamespaces(writer, modelNode); writeSchemaLocation(writer, modelNode); DomainAttributes.NAME.marshallAsAttribute(modelNode, false, writer); writeNewLine(writer); if (modelNode.hasDefined(EXTENSION)) { extensionXml.writeExtensions(writer, modelNode.get(EXTENSION)); writeNewLine(writer); } if (modelNode.hasDefined(SYSTEM_PROPERTY)) { writeProperties(writer, modelNode.get(SYSTEM_PROPERTY), Element.SYSTEM_PROPERTIES, false); writeNewLine(writer); } if (modelNode.hasDefined(PATH)) { writePaths(writer, modelNode.get(PATH)); writeNewLine(writer); } if (modelNode.hasDefined(PROFILE)) { writer.writeStartElement(Element.PROFILES.getLocalName()); for (final Property profile : modelNode.get(PROFILE).asPropertyList()) { writeProfile(writer, profile.getName(), profile.getValue(), context); } writer.writeEndElement(); writeNewLine(writer); } if (modelNode.hasDefined(INTERFACE)) { writeInterfaces(writer, modelNode.get(INTERFACE)); writeNewLine(writer); } if (modelNode.hasDefined(SOCKET_BINDING_GROUP)) { writer.writeStartElement(Element.SOCKET_BINDING_GROUPS.getLocalName()); for (final Property property : modelNode.get(SOCKET_BINDING_GROUP).asPropertyList()) { writeSocketBindingGroup(writer, property.getValue(), false); } writer.writeEndElement(); writeNewLine(writer); } if (modelNode.hasDefined(DEPLOYMENT)) { writeDomainDeployments(writer, modelNode.get(DEPLOYMENT)); writeNewLine(writer); } if (modelNode.hasDefined(SERVER_GROUP)) { writer.writeStartElement(Element.SERVER_GROUPS.getLocalName()); for (final Property property : modelNode.get(SERVER_GROUP).asPropertyList()) { writeServerGroup(writer, property.getName(), property.getValue()); } writer.writeEndElement(); writeNewLine(writer); } if (modelNode.hasDefined(MANAGEMENT_CLIENT_CONTENT)) { writeManagementClientContent(writer, modelNode.get(MANAGEMENT_CLIENT_CONTENT)); writeNewLine(writer); } writer.writeEndElement(); writeNewLine(writer); writer.writeEndDocument(); }