generate XML Interval Sample using DOM - Java XML

Java examples for XML:DOM

Description

generate XML Interval Sample using DOM

Demo Code

/*/*w w  w  .j  a v a  2s  .co m*/
 * BSD License
 *
 * Copyright (c) 2007, The University of Manchester (UK)
 *
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *
 *     - Redistributions of source code must retain the above copyright
 *       notice, this list of conditions and the following disclaimer.
 *     - Redistributions in binary form must reproduce the above
 *       copyright notice, this list of conditions and the following
 *       disclaimer in the documentation and/or other materials provided
 *       with the distribution.
 *     - Neither the name of the University of Manchester nor the names
 *       of its contributors may be used to endorse or promote products
 *       derived from this software without specific prior written
 *       permission.

 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
//package com.java2s;

import org.w3c.dom.Document;
import org.w3c.dom.Element;

public class Main {
    public static void main(String[] argv) throws Exception {
        double time = 2.45678;
        long commits = 2;
        long transactions = 2;
        long commitMemRefs = 2;
        long totalMemRefs = 2;
        String hardware = "java2s.com";
        boolean finalStats = true;
        generateXMLIntervalSample(time, commits, transactions,
                commitMemRefs, totalMemRefs, hardware, finalStats);
    }

    static Document doc;

    static void generateXMLIntervalSample(double time, long commits,
            long transactions, long commitMemRefs, long totalMemRefs,
            String hardware, boolean finalStats) {
        Element element;
        Element root = doc.getDocumentElement();

        Element me;
        if (finalStats)
            me = doc.createElement("FinalSample");
        else
            me = doc.createElement("Sample");
        root.appendChild(me);
        root = me;

        element = doc.createElement("Timestamp");
        element.setTextContent(Double.toString(time));
        root.appendChild(element);

        element = doc.createElement("Hardware");
        element.setTextContent(hardware);
        root.appendChild(element);

        // if (transactions > 0) {
        element = doc.createElement("DataAvailable");
        element.setTextContent("True");
        root.appendChild(element);

        element = doc.createElement("Transactions");
        element.setTextContent(Long.toString(transactions));
        root.appendChild(element);

        element = doc.createElement("Commits");
        element.setTextContent(Long.toString(commits));
        root.appendChild(element);

        String pc;
        if (commits != 0 && transactions != 0) {
            pc = Long.toString(100 * commits / transactions);
        } else {
            pc = "0";
        }
        element = doc.createElement("PercentCommits");
        element.setTextContent(pc);
        root.appendChild(element);

        element = doc.createElement("MemRefs");
        element.setTextContent(Long.toString(totalMemRefs));
        root.appendChild(element);

        element = doc.createElement("CommitMemRefs");
        element.setTextContent(Long.toString(commitMemRefs));
        root.appendChild(element);

        String pm;
        if (commitMemRefs != 0 && totalMemRefs != 0) {
            pm = Long.toString(100 * commitMemRefs / totalMemRefs);
        } else {
            pm = "0";
        }
        element = doc.createElement("PercentCommitMemRefs");
        element.setTextContent(pm);
        root.appendChild(element);
    }
}

Related Tutorials