Package com.nexirius.framework.datamodel.xml

Source Code of com.nexirius.framework.datamodel.xml.ArrayModelXmlGenerator

package com.nexirius.framework.datamodel.xml;

import com.nexirius.framework.datamodel.DataModel;
import com.nexirius.framework.datamodel.StructModel;
import com.nexirius.framework.datamodel.DataModelVector;
import com.nexirius.framework.datamodel.DataModelEnumeration;

import java.io.OutputStream;
import java.io.IOException;

public class ArrayModelXmlGenerator implements IXmlGenerator {
    public static final String DATA_MODEL = "DataModel";
    public static final String ARRAY_MODEL = "ArrayModel";

    public void generateXml(DataModelXmlGenerator generator, OutputStream out, DataModel model) throws IOException {
        DataModelVector children = model.getChildren();
        DataModelEnumeration en = children.getEnumeration();

        generator.startTag(out, ARRAY_MODEL, model.getFieldName());
        generator.newLine(out);
        generator.incrementIndent();
        while(en.hasMore()) {
            DataModel dataModel = en.next();

            generator.indent(out);
            generator.startTag(out, DATA_MODEL, dataModel.getClass().getName());
            generator.newLine(out);
            generator.incrementIndent();

            generator.indent(out);
            generator.generateXml(out, dataModel);
            generator.newLine(out);

            generator.decrementIndent();
            generator.indent(out);
            generator.endTag(out, DATA_MODEL);
            generator.newLine(out);
        }
        generator.decrementIndent();
        generator.indent(out);
        generator.endTag(out, ARRAY_MODEL);
    }
}
TOP

Related Classes of com.nexirius.framework.datamodel.xml.ArrayModelXmlGenerator

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.