Example usage for com.badlogic.gdx.utils XmlWriter close

List of usage examples for com.badlogic.gdx.utils XmlWriter close

Introduction

In this page you can find the example usage for com.badlogic.gdx.utils XmlWriter close.

Prototype

public void close() throws IOException 

Source Link

Document

Calls #pop() for each remaining open element, if any, and closes the stream.

Usage

From source file:com.steelkiwi.patheditor.proj.ProjectDataConverter.java

License:Apache License

private static void saveProjectData(ProjectData projData) throws Exception {
    String path = projData.getPath() + PATH_SEPARATOR + projData.getName() + PROJECT_EXT;
    File projectFile = new File(path);

    if (projectFile.exists()) {
        projectFile.delete();// w  ww  .ja  v a  2  s .c om
    }
    projectFile.createNewFile();

    StringWriter strWriter = new StringWriter();
    XmlWriter xmlWriter = new XmlWriter(strWriter);

    xmlWriter.element("project");

    xmlWriter.element("name", projData.getName());
    //xmlWriter.element("path", projData.getPath()); //TODO

    if (projData.getScreens() != null) {
        for (int i = 0; i < projData.getScreens().size(); i++) {
            xmlWriter.element("screen").element("xml", projData.getScreens().get(i).getXmlPath())
                    .element("json", projData.getScreens().get(i).getJsonPath()).pop();
        }
    }

    xmlWriter.pop();
    xmlWriter.close();

    FileWriter writer = new FileWriter(new File(path));
    writer.write(strWriter.toString());
    writer.close();

    if (projData.getScreens() != null) {
        saveScreens(projData);
    }
}

From source file:at.highstreeto.xnllayoutparser.LayoutParser.java

License:Apache License

/**
 *
 * @param layoutFile//from  w  w  w .  ja v a 2 s .  co m
 * @param actors
 * @throws LayoutParseException
 */
public void save(FileHandle layoutFile, Collection<Actor> actors) throws LayoutParseException {
    try {
        XmlWriter writer = new XmlWriter(layoutFile.writer(false));
        LayoutParserContext context = new LayoutParserContext();
        context.setParsers(parsers);

        writer.element("Layout");

        for (Actor i : actors) {
            parsers.getParserByClass(i.getClass()).save(writer, i, context);
        }

        writer.pop();
        writer.close();
    } catch (IOException e) {
        throw new LayoutParseException(e); // TODO More detailed Exception
    }
}

From source file:com.agateau.utils.Introspector.java

License:Apache License

public void save() {
    XmlWriter writer = new XmlWriter(mFileHandle.writer(false));
    try {//from w ww. j  a  v a  2  s .c o m
        XmlWriter root = writer.element("object");
        for (Field field : mClass.getDeclaredFields()) {
            if (!Modifier.isPublic(field.getModifiers())) {
                continue;
            }
            if (Modifier.isStatic(field.getModifiers())) {
                continue;
            }
            Object value = field.get(mObject);
            if (value.equals(field.get(mReference))) {
                continue;
            }
            root.element("key").attribute("name", field.getName()).attribute("type", field.getType().toString())
                    .text(value.toString()).pop();
        }
        root.pop();
        writer.close();
    } catch (IOException e) {
        e.printStackTrace();
    } catch (IllegalAccessException e) {
        e.printStackTrace();
    }
}

From source file:com.algodal.gdxscreen.utils.GdxSave.java

License:Apache License

/**
 * Saves all objects in the list to the file you specify.  The file is overwritten or created.
 * The save format possess additional information such as time of save and number of objects.
 * @return String version of the saved data.
 */// w  w  w. j  a  va 2 s .co m
public String save() {
    StringWriter stringWriter = new StringWriter();
    XmlWriter xmlWriter = new XmlWriter(stringWriter);
    Json json = new Json();

    debug.assertNoException("No exception during save", new Operation<Void>() {
        @Override
        public Void resultOf() throws Exception {
            xmlWriter.element(ROOT_ELEMENT).attribute(ROOT_NAME, dataName).attribute(ROOT_TIME, flashTime())
                    .attribute(ROOT_COUNT, Integer.toString(plainOldJavaObjects.size));
            for (int i = 0; i < plainOldJavaObjects.size; i++) {
                debug.assertContructorEmpty("object has null constructor class",
                        plainOldJavaObjects.get(i).getClass());
                xmlWriter.element(CHILD_ELEMENT).attribute(CHILD_ID, Integer.toString(i));
                xmlWriter.text(json.toJson(plainOldJavaObjects.get(i), Object.class));
                xmlWriter.pop();
            }
            xmlWriter.pop();
            xmlWriter.close();
            return null;
        }
    });

    String xmlJsonString = stringWriter.toString();
    handle.writeString(xmlJsonString, false);
    return xmlJsonString;
}

From source file:com.steelkiwi.patheditor.proj.ProjectDataConverter.java

License:Apache License

private static void saveScreenToXML(String projPath, ScreenData scrData) throws Exception {
    String path = projPath + PATH_SEPARATOR + scrData.getXmlPath();
    File scrFile = new File(path);

    if (scrFile.exists()) {
        scrFile.delete();/*from w w  w  .j a va2 s. c o  m*/
    }
    scrFile.createNewFile();

    StringWriter strWriter = new StringWriter();
    XmlWriter xmlWriter = new XmlWriter(strWriter);

    xmlWriter.element("screen");

    xmlWriter.element("name", scrData.getName());
    xmlWriter.element("width", scrData.getWidth());
    xmlWriter.element("height", scrData.getHeight());
    xmlWriter.element("xmlPath", scrData.getXmlPath());
    xmlWriter.element("jsonPath", scrData.getJsonPath());

    if (scrData.getBgImage() != null) {
        xmlWriter.element("bg").element("name", scrData.getBgImage().name).element("type",
                (getWidgetType(scrData.getBgImage()) != null) ? getWidgetType(scrData.getBgImage()).ordinal()
                        : -1)
                .element("texturePath",
                        FileUtils.getElementRelativePath(projPath,
                                ((GdxImage) scrData.getBgImage()).getTexPath()))
                .element("scaleX", scrData.getBgImage().scaleX).element("scaleY", scrData.getBgImage().scaleY)
                .element("x", scrData.getBgImage().x).element("y", scrData.getBgImage().y)
                .element("angle", scrData.getBgImage().rotation).pop();
    }

    if ((scrData.getPath() != null) && (scrData.getPath().getPath() != null)) {
        xmlWriter.element("path").element("xmlPath", scrData.getPath().getXmlPath())
                .element("jsonPath", scrData.getPath().getJsonPath()).pop();
    }

    xmlWriter.pop();
    xmlWriter.close();

    FileWriter writer = new FileWriter(new File(path));
    writer.write(strWriter.toString());
    writer.close();
}

From source file:com.steelkiwi.patheditor.proj.ProjectDataConverter.java

License:Apache License

private static void savePathToXml(String projPath, GdxPath gdxPath) throws Exception {
    String path = projPath + gdxPath.getXmlPath();
    File pathFile = new File(path);

    if (pathFile.exists()) {
        pathFile.delete();//w  w w. j ava  2 s .co m
    }
    pathFile.createNewFile();

    StringWriter strWriter = new StringWriter();
    XmlWriter xmlWriter = new XmlWriter(strWriter);

    xmlWriter.element("path");

    xmlWriter.element("name", gdxPath.getName());
    xmlWriter.element("pointsCnt", gdxPath.getPointsCnt());
    xmlWriter.element("controlColor", gdxPath.getControlColor());
    xmlWriter.element("segmentColor", gdxPath.getSegmentColor());
    xmlWriter.element("selectColor", gdxPath.getSelectColor());

    xmlWriter.element("xmlPath", gdxPath.getXmlPath());
    xmlWriter.element("jsonPath", gdxPath.getJsonPath());

    if ((gdxPath.getPath() != null) && (gdxPath.getPath().getPathVerticesCount() > 0)) {
        xmlWriter.element("controlVertices");
        Vector3 controlVertex;
        for (int i = 0; i < gdxPath.getControlPath().size(); i++) {
            controlVertex = gdxPath.getControlPath().get(i);
            xmlWriter.element("controlVertex").element("id", i).element("x", controlVertex.x)
                    .element("y", controlVertex.y).pop();
        }
        xmlWriter.pop();

        xmlWriter.element("vertices");
        PathVertex vertex;
        for (int i = 0; i < gdxPath.getPath().getPathVerticesCount(); i++) {
            vertex = gdxPath.getPath().getPathVertexByIndex(i);
            xmlWriter.element("vertex").element("id", i).element("x", vertex.getPosition().x)
                    .element("y", vertex.getPosition().y).element("tanX", vertex.getTangentNornal().x)
                    .element("tanY", vertex.getTangentNornal().y).element("angle", vertex.getAngle()).pop();
        }
        xmlWriter.pop();
    }

    xmlWriter.pop();
    xmlWriter.close();

    FileWriter writer = new FileWriter(new File(path));
    writer.write(strWriter.toString());
    writer.close();
}