|
From: <fb...@us...> - 2003-06-27 20:51:05
|
Update of /cvsroot/jgb/jgb/src/java/core/jgb/builder
In directory sc8-pr-cvs1:/tmp/cvs-serv22120/src/java/core/jgb/builder
Modified Files:
Builder.java DefaultBuilder.java
Log Message:
* src/java/core/jgb/InvalidParameterException.java,
src/java/core/jgb/RequiredArgumentMissingException.java,
src/java/core/jgb/TooManyArgumentsException.java,
src/java/core/jgb/UnknownArgumentException.java:
Created new Exception classes to handler Exception while
BuildWindowFromXmlFile starts up.
* src/java/tests/jgb/TestBuildWindowFromXmlFile.java:
Created tests to start having some coverage.
* src/java/core/jgb/BuildWindowFromXmlFile.java:
Implemented tests.
* src/java/core/jgb/builder/Builder.java:
Added a new build(InputSource) method to allow using an InputSource
instead of having an InputStream.
* src/java/core/jgb/builder/DefaultBuilder.java:
Implemented interface specifications.
Index: Builder.java
===================================================================
RCS file: /cvsroot/jgb/jgb/src/java/core/jgb/builder/Builder.java,v
retrieving revision 1.26
retrieving revision 1.27
diff -C2 -d -r1.26 -r1.27
*** Builder.java 27 Jun 2003 16:45:48 -0000 1.26
--- Builder.java 27 Jun 2003 20:49:50 -0000 1.27
***************
*** 23,26 ****
--- 23,27 ----
import org.xml.sax.EntityResolver;
import org.xml.sax.SAXException;
+ import org.xml.sax.InputSource;
import javax.swing.*;
***************
*** 61,65 ****
/**
! * Initiates building of the objects by reading the specified {@link java.io.InputStream InputStream}.
* This stream will be parsed as an XML file. The parser used to parse
* the file will be validating.
--- 62,67 ----
/**
! * Initiates building of the objects by reading the specified
! * {@link java.io.InputStream InputStream}.
* This stream will be parsed as an XML file. The parser used to parse
* the file will be validating.
***************
*** 67,72 ****
--- 69,88 ----
* error occurs.
* @throws IOException If an I/O error occurs while reading the stream.
+ * @throws IllegalArgumentException If the input stream is
+ * <code>null</code>.
*/
JWindow build(InputStream in) throws IOException, SAXException;
+
+ /**
+ * Initiates building of the objects by reading the specified
+ * {@link org.xml.sax.InputSource InputSource}.
+ * The parser used to parse the source will be validating.
+ * @throws SAXException If a parser could not be instantiated, or a build
+ * error occurs.
+ * @throws IOException If an I/O error occurs while reading the stream.
+ * @throws IllegalArgumentException If the input source is
+ * <code>null</code>.
+ */
+ JWindow build(InputSource in) throws IOException, SAXException;
/**
Index: DefaultBuilder.java
===================================================================
RCS file: /cvsroot/jgb/jgb/src/java/core/jgb/builder/DefaultBuilder.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** DefaultBuilder.java 27 Jun 2003 16:45:48 -0000 1.3
--- DefaultBuilder.java 27 Jun 2003 20:49:50 -0000 1.4
***************
*** 77,80 ****
--- 77,88 ----
public JWindow build(InputStream in) throws IOException, SAXException {
+ if (null == in) {
+ throw new IllegalArgumentException("in must not be null");
+ }
+
+ return build(new InputSource(in));
+ }
+
+ public JWindow build(InputSource in) throws IOException, SAXException {
SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setValidating(true);
***************
*** 89,93 ****
tagContext.put(TagHandler.OBJECTS_MAP_KEY, new HashMap());
parser.parse(in, this);
! return (JWindow)tagContext.get(TagHandler.CURRENT_WINDOW_KEY);
}
--- 97,101 ----
tagContext.put(TagHandler.OBJECTS_MAP_KEY, new HashMap());
parser.parse(in, this);
! return (JWindow) tagContext.get(TagHandler.CURRENT_WINDOW_KEY);
}
***************
*** 97,101 ****
public Object getObject(String name) {
! return (((Map)tagContext.get(TagHandler.OBJECTS_MAP_KEY)).get(name));
}
--- 105,109 ----
public Object getObject(String name) {
! return (((Map) tagContext.get(TagHandler.OBJECTS_MAP_KEY)).get(name));
}
***************
*** 207,211 ****
*/
private TagHandler getHandlerFor(String qName) throws SAXException {
! Stack handlersFactory = (Stack)tagContext.get(TagHandler.TAG_HANDLER_FACTORY_STACK_KEY);
if (handlersFactory.isEmpty()) {
try {
--- 215,219 ----
*/
private TagHandler getHandlerFor(String qName) throws SAXException {
! Stack handlersFactory = (Stack) tagContext.get(TagHandler.TAG_HANDLER_FACTORY_STACK_KEY);
if (handlersFactory.isEmpty()) {
try {
***************
*** 216,220 ****
}
! TagHandlerFactory factory = (TagHandlerFactory)handlersFactory.peek();
try {
return factory.getHandlerFor(qName);
--- 224,228 ----
}
! TagHandlerFactory factory = (TagHandlerFactory) handlersFactory.peek();
try {
return factory.getHandlerFor(qName);
***************
*** 240,244 ****
try {
for (Iterator iterator = resolvers.iterator(); iterator.hasNext();) {
! EntityResolver resolver = (EntityResolver)iterator.next();
InputSource entity = resolver.resolveEntity(publicId, systemId);
if (null != entity) {
--- 248,252 ----
try {
for (Iterator iterator = resolvers.iterator(); iterator.hasNext();) {
! EntityResolver resolver = (EntityResolver) iterator.next();
InputSource entity = resolver.resolveEntity(publicId, systemId);
if (null != entity) {
|