KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > xml > tools > generator > SAXBindingsGenerator


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14  *
15  * The Original Software is NetBeans. The Initial Developer of the Original
16  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19 package org.netbeans.modules.xml.tools.generator;
20
21 import java.util.*;
22
23 /**
24  * Utility class generating XML document content holding model data.
25  *
26  * @author Petr Kuzel
27  * @version
28  */

29 final class SAXBindingsGenerator {
30
31
32     public static String JavaDoc toXML(SAXGeneratorModel model) {
33         StringBuffer JavaDoc s = new StringBuffer JavaDoc();
34
35         s.append("<?xml version='1.0' encoding='UTF-8'?>\n"); // NOI18N
36
s.append("<!DOCTYPE SAX-bindings PUBLIC \"-//XML Module//DTD SAX Bindings 1.0//EN\" \"\">\n"); // NOI18N
37
s.append("<SAX-bindings version='1'>\n"); // NOI18N
38
s.append(elementBindings(model));
39         //TODO: Retouche
40
// s.append(parsletBindings(model));
41
s.append("</SAX-bindings>"); // NOI18N
42

43         return s.toString();
44     }
45     
46     private static String JavaDoc elementBindings(SAXGeneratorModel model) {
47         StringBuffer JavaDoc s = new StringBuffer JavaDoc();
48         
49         Iterator it = model.getElementBindings().values().iterator();
50         while (it.hasNext()) {
51             ElementBindings.Entry next = (ElementBindings.Entry) it.next();
52             s.append("\t<bind element='" + next.getElement() + "' method='" + next.getMethod() + "' "); // NOI18N
53
s.append("type='" + next.getType() + "' "); // NOI18N
54
if (next.getParslet() != null) {
55                 s.append("parslet='" + next.getParslet() + "' "); // NOI18N
56
}
57             s.append("></bind>\n"); // NOI18N
58
}
59         return s.toString();
60     }
61     
62     //TODO: Retouche
63
// private static String parsletBindings(SAXGeneratorModel model) {
64

65 // StringBuffer s = new StringBuffer();
66
//
67
// Iterator it = model.getParsletBindings().values().iterator();
68
// while (it.hasNext()) {
69
// ParsletBindings.Entry next = (ParsletBindings.Entry) it.next();
70
// s.append("\t<parslet parslet='" + next.getId() + "' return='" + next.getType() + "' />\n"); // NOI18N
71
// }
72
//
73
// return s.toString();
74
// }
75

76 }
77
Popular Tags