First Commit from Source Code Reply

This commit is contained in:
vincenzofariello
2024-05-09 17:40:24 +02:00
parent 11e3b57c5b
commit 107a016cb9
35225 changed files with 1111346 additions and 1 deletions

View File

@@ -0,0 +1,85 @@
@start rule: main
package @package_name;
public class @element_class_name extends weblogic.xml.dtdc.XmlElement implements java.lang.Cloneable {
// ============================================================
// Constructor
public @element_class_name(java.lang.String name, org.xml.sax.AttributeList attributes) throws org.xml.sax.SAXException {
if(!name.equals("@element_name")) {
throw new org.xml.sax.SAXException("Attempt to construct a " + getClass().getName() + " with a " +
name + " element");
}
initialize(name, attributes);
}
public @element_class_name() {}
public void initialize(java.lang.String name, org.xml.sax.AttributeList attributes) throws org.xml.sax.SAXException {
@set_attributes
}
public boolean isEmpty() {
return @is_empty;
}
public java.lang.String getElementName() { return "@element_realname"; }
// ============================================================
// Attributes
@attributes
// ============================================================
// Contained Elements
public @element_class_name addDataElement(java.lang.String string) {
return (@element_class_name) super._addDataElement(string);
}
// ============================================================
// Cloneable implementation
public java.lang.Object clone() throws java.lang.CloneNotSupportedException {
return super.clone();
}
@subelements
}
@end rule: main
@start rule: set_attribute
if (attributes.getValue("@attribute_realname") != null) {
@attribute_varname = attributes.getValue("@attribute_realname");
}
attributeValues.put("@attribute_realname", @attribute_varname);
@end rule: set_attribute
@start rule: attribute
private java.lang.String @attribute_varname="@attribute_default";
public java.lang.String @attribute_value_getter() {
return @attribute_varname == null ? "" : @attribute_varname;
}
public @element_class_name @attribute_value_setter(java.lang.String value) {
@attribute_varname = value;
attributeValues.put("@attribute_realname", @attribute_varname);
return this;
}
@end rule: attribute
@start rule: subelement
private java.util.List @sub_element_varname = new java.util.ArrayList();
public java.util.List @sub_elements_getter() { return @sub_element_varname; }
public @element_class_name @sub_element_adder(@sub_element_class_name subelement) {
@sub_element_varname.add(subelement);
subElements.add(subelement);
return this;
}
@end rule: subelement

View File

@@ -0,0 +1,178 @@
@start rule: main
package @package_name;
import @package_name.@element_class_name;
import java.io.*;
import java.net.*;
import java.util.Hashtable;
import java.util.Locale;
import java.util.Map;
import org.w3c.dom.*;
import org.xml.sax.*;
import org.xml.sax.helpers.ParserFactory;
import weblogic.xml.dtdc.Handler;
import weblogic.xml.dtdc.NullHandler;
public class @parser_class_name extends weblogic.xml.dtdc.BaseParser {
// ============================================================
// Parse
public static void main(String[] args) throws Exception {
try {
Parser parser = ParserFactory.makeParser("@package_name.@parser_class_name");
Handler handler = new Handler("@package_name", true);
handler.setClassLoader(Class.forName("@package_name.@parser_class_name").getClassLoader());
parser.setDocumentHandler(handler);
parser.parse(args[0]);
} catch(SAXParseException saxpe) {
System.out.println("Line: " + saxpe.getLineNumber() + " Column: " + saxpe.getColumnNumber());
throw saxpe;
}
}
// ============================================================
// Generated Code
public void parse(char[] chars) throws SAXException {
boolean done = false;
int startLine = currentLine;
if(dh == null) dh = new NullHandler();
dh.setDocumentLocator(this);
dh.startDocument();
while(current != chars.length && !done) {
@parser
}
if(done) throw new SAXParseException("Could not parse (bad close tag): starting at line " + startLine, this);
dh.endDocument();
}
@read_element_declarations
// ============================================================
// Factory methods
public static @package_name.@element_class_name make@element_class_name(String filename, Map map, boolean verbose) throws IOException, SAXException {
Handler handler = new Handler(map,"@package_name",verbose);
try {
handler.setClassLoader(Class.forName("@package_name.@parser_class_name").getClassLoader());
} catch(ClassNotFoundException cnfe) {
cnfe.printStackTrace(); // really shouldn't happen
}
makeParser(handler).parse(filename);
return (@package_name.@element_class_name)handler.getTopLevel();
}
public static @package_name.@element_class_name make@element_class_name(File file, Map map, boolean verbose) throws IOException, SAXException {
Handler handler = new Handler(map,"@package_name",verbose);
try {
handler.setClassLoader(Class.forName("@package_name.@parser_class_name").getClassLoader());
} catch(ClassNotFoundException cnfe) {
cnfe.printStackTrace(); // really shouldn't happen
}
makeParser(handler).parse(file);
return (@package_name.@element_class_name)handler.getTopLevel();
}
public static @package_name.@element_class_name make@element_class_name(InputSource is, Map map, boolean verbose) throws IOException, SAXException {
Handler handler = new Handler(map,"@package_name",verbose);
try {
handler.setClassLoader(Class.forName("@package_name.@parser_class_name").getClassLoader());
} catch(ClassNotFoundException cnfe) {
cnfe.printStackTrace(); // really shouldn't happen
}
makeParser(handler).parse(is);
return (@package_name.@element_class_name)handler.getTopLevel();
}
public static @package_name.@element_class_name make@element_class_name(InputStream in, Map map, boolean verbose) throws IOException, SAXException {
Handler handler = new Handler(map,"@package_name",verbose);
try {
handler.setClassLoader(Class.forName("@package_name.@parser_class_name").getClassLoader());
} catch(ClassNotFoundException cnfe) {
cnfe.printStackTrace(); // really shouldn't happen
}
makeParser(handler).parse(in);
return (@package_name.@element_class_name)handler.getTopLevel();
}
public static @package_name.@element_class_name make@element_class_name(InputStream in, String encodingType, Map map, boolean verbose) throws IOException, SAXException {
Handler handler = new Handler(map,"@package_name",verbose);
try {
handler.setClassLoader(Class.forName("@package_name.@parser_class_name").getClassLoader());
} catch(ClassNotFoundException cnfe) {
cnfe.printStackTrace(); // really shouldn't happen
}
makeParser(handler).parse(in,encodingType);
return (@package_name.@element_class_name)handler.getTopLevel();
}
private static @parser_class_name makeParser(Handler handler) throws IOException, SAXException {
@parser_class_name parser = new @parser_class_name();
try {
handler.setClassLoader(Class.forName("@package_name.@parser_class_name").getClassLoader());
} catch(ClassNotFoundException cnfe) {
cnfe.printStackTrace(); // really shouldn't happen
}
parser.setDocumentHandler(handler);
return parser;
}
// ============================================================
// Constructor
public @parser_class_name() {
@set_attribute_types
names = new String[@max_attributes];
types = new String[@max_attributes];
values = new String[@max_attributes];
}
}
@end rule: main
@start rule: readAttribute
{String value = _readAttribute(chars);
@set_attribute_found
@ensure_unique
if(true@valid_attribute) throw new SAXParseException("Not a valid attribute value: [" + value + "]", this);
putAttribute("@attribute_realname", "@attribute_type", value);}
@end rule: readAttribute
@start rule: read_element_declaration
public void @read_element_method_name(char[] chars) throws SAXException {
int startLine = currentLine;
try {
reset();
boolean emptyTag = @read_element_attributes_method_name(chars);
dh.startElement("@element_name", this);
boolean done = false;
while(!done && !emptyTag) {
@read_element
}
dh.endElement("@element_name");
} catch(ArrayIndexOutOfBoundsException aioobe) {
throw new SAXParseException("@element_name not closed, starts at line " + startLine, this);
}
}
public boolean @read_element_attributes_method_name(char[] chars) throws SAXException {
int startLine = currentLine;
boolean done = false;
boolean emptyTag = false;
@declare_required_attributes
while(!done) {
@read_attributes
}
@ensure_required_attributes
return emptyTag;
}
@end rule: read_element_declaration