private Edimap digestEDIConfig(Document configDoc) throws SAXException, EDIConfigurationException, IOException { XsdDOMValidator validator = new XsdDOMValidator(configDoc); if (validator.getNamespaces().size() == 0) { throw new EDIConfigurationException("The edi-message-mapping configuration must contain a namespace."); } if (validator.getNamespaces().size() > 1) { throw new EDIConfigurationException("Unsupported use of multiple configuration namespaces from inside the edi-message-mapping configuration."); } String ediNS = validator.getNamespaces().get(0).toString(); validator.validate(); Edimap edimap = new Edimap(modelURI); if(assertValidXSD(ediNS)) { digestXSDValidatedConfig(configDoc, edimap, ediNS); } else { throw new SAXException("Cannot parse edi-message-mapping configuration. Unsupported default Namespace '" + ediNS + "'."); } return edimap; }
public static Edimap parse(Reader dataReader, Reader compositeReader, Reader segmentReader, boolean useShortName) throws IOException, EdiParseException { Map<String, Component> datas = UnEdifactDefinitionReader.readComponents(dataReader, useShortName); Map<String, Field> composites = UnEdifactDefinitionReader.readFields(compositeReader, datas, useShortName); List<Segment> segments = UnEdifactDefinitionReader.readSegments(segmentReader, composites, datas, useShortName); Edimap edimap = new Edimap(); edimap.setSegments(new SegmentGroup()); edimap.getSegments().getSegments().addAll(segments); return edimap; }
public static void write(Segment segment, Writer writer) throws IOException { Edimap ediMap = new Edimap(); SegmentGroup segments = new SegmentGroup(); segments.getSegments().add(segment); ediMap.setSegments(segments); ediMap.setDelimiters(UNEdifactInterchangeParser.defaultUNEdifactDelimiters); ediMap.setDescription(new Description().setName("TODO").setVersion("TODO")); write(ediMap, writer); }
agency = getValue(breader, MESSAGE_AGENCY); edimap = new Edimap(); SegmentGroup rootGroup = new SegmentGroup(); rootGroup.setXmltag(XmlTagEncoder.encode(type));
Edimap controlMap = new Edimap(); EdifactModel controlModel = new EdifactModel(controlMap);