private Edimap parseEDIDefinitionFiles() throws IOException, EdiParseException { Edimap edifactModel; Reader dataISR = null; Reader compositeISR = null; Reader segmentISR = null; try { dataISR = new InputStreamReader(new ByteArrayInputStream(definitionFiles.get("eded."))); compositeISR = new InputStreamReader(new ByteArrayInputStream(definitionFiles.get("edcd."))); segmentISR = new InputStreamReader(new ByteArrayInputStream(definitionFiles.get("edsd."))); edifactModel = UnEdifactDefinitionReader.parse(dataISR, compositeISR, segmentISR, useShortName); edifactModel.setDescription((Description) EDIUtils.MODEL_SET_DEFINITIONS_DESCRIPTION.clone()); edifactModel.getSegments().setXmltag("DefinitionMap"); edifactModel.setDelimiters(UNEdifactInterchangeParser.defaultUNEdifactDelimiters); } finally { if (dataISR != null) { dataISR.close(); } if (compositeISR != null) { compositeISR.close(); } if (segmentISR != null) { segmentISR.close(); } } return edifactModel; }
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); }
/** * Digest attributes of Description element and populate Description. * @param node the Description element. * @param edimap the {@link org.dhatim.edisax.model.internal.Edimap} to populate. */ private static void digestDescription(Node node, Edimap edimap) { Description description = new Description(); edimap.setDescription(description); description.setName(getAttributeValue(node, "name")); description.setVersion(getAttributeValue(node, "version")); String namespace = getAttributeValue(node, "namespace"); if (namespace != null) { description.setNamespace(namespace); } else { description.setNamespace(XMLConstants.NULL_NS_URI); } }
edimap.setDelimiters(delimiters); edimap.setDescription(new Description()); edimap.getDescription().setName(type); edimap.getDescription().setVersion(version + ":" + release + ":" + agency);
EdifactModel controlModel = new EdifactModel(controlMap); controlMap.setDescription(new Description().setName("EDI Message Interchange Control Model").setVersion("N/A")); controlSegmentParser.setMappingModel(controlModel);