Author: rhauch
Date: 2009-09-17 10:01:59 -0400 (Thu, 17 Sep 2009)
New Revision: 1229
Added:
trunk/dna-common/src/main/java/org/jboss/dna/common/text/ParsingException.java
trunk/dna-common/src/main/java/org/jboss/dna/common/text/Position.java
Modified:
trunk/dna-cnd/src/main/java/org/jboss/dna/cnd/CndImporter.java
trunk/dna-cnd/src/main/java/org/jboss/dna/cnd/CndTokenizer.java
trunk/dna-cnd/src/test/java/org/jboss/dna/cnd/CndImporterTest.java
trunk/dna-cnd/src/test/java/org/jboss/dna/cnd/CndTokenizerTest.java
trunk/dna-common/src/main/java/org/jboss/dna/common/text/TokenStream.java
trunk/dna-common/src/test/java/org/jboss/dna/common/text/SampleSqlParser.java
trunk/dna-common/src/test/java/org/jboss/dna/common/text/TokenStreamBasicTokenizerTest.java
trunk/dna-common/src/test/java/org/jboss/dna/common/text/TokenStreamTest.java
Log:
Moved the ParsingException and Position classes out of the TokenStream class and into
top-level classes, making them reusable outside of the TokenStream framework. (They
actually could be reused already, but making them top-level no longer denotes the use of
TokenStream.)
Modified: trunk/dna-cnd/src/main/java/org/jboss/dna/cnd/CndImporter.java
===================================================================
--- trunk/dna-cnd/src/main/java/org/jboss/dna/cnd/CndImporter.java 2009-09-16 23:13:07 UTC
(rev 1228)
+++ trunk/dna-cnd/src/main/java/org/jboss/dna/cnd/CndImporter.java 2009-09-17 14:01:59 UTC
(rev 1229)
@@ -35,9 +35,9 @@
import java.util.Set;
import net.jcip.annotations.NotThreadSafe;
import org.jboss.dna.common.collection.Problems;
+import org.jboss.dna.common.text.ParsingException;
+import org.jboss.dna.common.text.Position;
import org.jboss.dna.common.text.TokenStream;
-import org.jboss.dna.common.text.TokenStream.ParsingException;
-import org.jboss.dna.common.text.TokenStream.Position;
import org.jboss.dna.common.text.TokenStream.Tokenizer;
import org.jboss.dna.common.util.CheckArg;
import org.jboss.dna.common.util.IoUtil;
Modified: trunk/dna-cnd/src/main/java/org/jboss/dna/cnd/CndTokenizer.java
===================================================================
--- trunk/dna-cnd/src/main/java/org/jboss/dna/cnd/CndTokenizer.java 2009-09-16 23:13:07
UTC (rev 1228)
+++ trunk/dna-cnd/src/main/java/org/jboss/dna/cnd/CndTokenizer.java 2009-09-17 14:01:59
UTC (rev 1229)
@@ -1,9 +1,9 @@
package org.jboss.dna.cnd;
import org.jboss.dna.common.CommonI18n;
+import org.jboss.dna.common.text.ParsingException;
+import org.jboss.dna.common.text.Position;
import org.jboss.dna.common.text.TokenStream.CharacterStream;
-import org.jboss.dna.common.text.TokenStream.ParsingException;
-import org.jboss.dna.common.text.TokenStream.Position;
import org.jboss.dna.common.text.TokenStream.Tokenizer;
import org.jboss.dna.common.text.TokenStream.Tokens;
Modified: trunk/dna-cnd/src/test/java/org/jboss/dna/cnd/CndImporterTest.java
===================================================================
--- trunk/dna-cnd/src/test/java/org/jboss/dna/cnd/CndImporterTest.java 2009-09-16 23:13:07
UTC (rev 1228)
+++ trunk/dna-cnd/src/test/java/org/jboss/dna/cnd/CndImporterTest.java 2009-09-17 14:01:59
UTC (rev 1229)
@@ -36,7 +36,7 @@
import java.util.Set;
import org.jboss.dna.common.collection.Problem;
import org.jboss.dna.common.collection.SimpleProblems;
-import org.jboss.dna.common.text.TokenStream.ParsingException;
+import org.jboss.dna.common.text.ParsingException;
import org.jboss.dna.graph.DnaLexicon;
import org.jboss.dna.graph.ExecutionContext;
import org.jboss.dna.graph.Graph;
Modified: trunk/dna-cnd/src/test/java/org/jboss/dna/cnd/CndTokenizerTest.java
===================================================================
--- trunk/dna-cnd/src/test/java/org/jboss/dna/cnd/CndTokenizerTest.java 2009-09-16
23:13:07 UTC (rev 1228)
+++ trunk/dna-cnd/src/test/java/org/jboss/dna/cnd/CndTokenizerTest.java 2009-09-17
14:01:59 UTC (rev 1229)
@@ -26,9 +26,9 @@
import static org.hamcrest.core.Is.is;
import static org.junit.Assert.assertThat;
import java.util.LinkedList;
+import org.jboss.dna.common.text.ParsingException;
+import org.jboss.dna.common.text.Position;
import org.jboss.dna.common.text.TokenStream.CharacterArrayStream;
-import org.jboss.dna.common.text.TokenStream.ParsingException;
-import org.jboss.dna.common.text.TokenStream.Position;
import org.jboss.dna.common.text.TokenStream.Tokens;
import org.junit.Before;
import org.junit.Test;
Added: trunk/dna-common/src/main/java/org/jboss/dna/common/text/ParsingException.java
===================================================================
--- trunk/dna-common/src/main/java/org/jboss/dna/common/text/ParsingException.java
(rev 0)
+++
trunk/dna-common/src/main/java/org/jboss/dna/common/text/ParsingException.java 2009-09-17
14:01:59 UTC (rev 1229)
@@ -0,0 +1,47 @@
+package org.jboss.dna.common.text;
+
+/**
+ * An exception representing a problem during parsing of text.
+ */
+public class ParsingException extends RuntimeException {
+ private static final long serialVersionUID = 1L;
+
+ private final Position position;
+
+ /**
+ * @param position the position of the error; never null
+ */
+ public ParsingException( Position position ) {
+ super();
+ this.position = position;
+ }
+
+ /**
+ * @param position the position of the error; never null
+ * @param message the message
+ * @param cause the underlying cause
+ */
+ public ParsingException( Position position,
+ String message,
+ Throwable cause ) {
+ super(message, cause);
+ this.position = position;
+ }
+
+ /**
+ * @param position the position of the error; never null
+ * @param message the message
+ */
+ public ParsingException( Position position,
+ String message ) {
+ super(message);
+ this.position = position;
+ }
+
+ /**
+ * @return position
+ */
+ public Position getPosition() {
+ return position;
+ }
+}
Property changes on:
trunk/dna-common/src/main/java/org/jboss/dna/common/text/ParsingException.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Added: trunk/dna-common/src/main/java/org/jboss/dna/common/text/Position.java
===================================================================
--- trunk/dna-common/src/main/java/org/jboss/dna/common/text/Position.java
(rev 0)
+++ trunk/dna-common/src/main/java/org/jboss/dna/common/text/Position.java 2009-09-17
14:01:59 UTC (rev 1229)
@@ -0,0 +1,56 @@
+package org.jboss.dna.common.text;
+
+import net.jcip.annotations.Immutable;
+
+/**
+ * A class that represents the position of a particular character in terms of the lines
and columns of a character sequence.
+ */
+@Immutable
+public final class Position {
+ private final int line;
+ private final int column;
+
+ protected Position( int line,
+ int column ) {
+ this.line = line;
+ this.column = column;
+ }
+
+ /**
+ * Get the 1-based column number of the character.
+ *
+ * @return the column number; always positive
+ */
+ public int getColumn() {
+ return column;
+ }
+
+ /**
+ * Get the 1-based line number of the character.
+ *
+ * @return the line number; always positive
+ */
+ public int getLine() {
+ return line;
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see java.lang.Object#hashCode()
+ */
+ @Override
+ public int hashCode() {
+ return line;
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ return "" + line + ':' + column;
+ }
+}
Property changes on:
trunk/dna-common/src/main/java/org/jboss/dna/common/text/Position.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Name: svn:eol-style
+ LF
Modified: trunk/dna-common/src/main/java/org/jboss/dna/common/text/TokenStream.java
===================================================================
--- trunk/dna-common/src/main/java/org/jboss/dna/common/text/TokenStream.java 2009-09-16
23:13:07 UTC (rev 1228)
+++ trunk/dna-common/src/main/java/org/jboss/dna/common/text/TokenStream.java 2009-09-17
14:01:59 UTC (rev 1229)
@@ -1585,7 +1585,7 @@
/**
* {@inheritDoc}
*
- * @see
org.jboss.dna.common.text.TokenStream.Tokens#addToken(org.jboss.dna.common.text.TokenStream.Position,
int)
+ * @see org.jboss.dna.common.text.TokenStream.Tokens#addToken(Position, int)
*/
public void addToken( Position position,
int index ) {
@@ -1794,95 +1794,6 @@
}
/**
- * A class that represents the position of a particular character in terms of the
lines and columns of a character sequence.
- */
- @Immutable
- public final static class Position {
- private final int line;
- private final int column;
-
- protected Position( int line,
- int column ) {
- this.line = line;
- this.column = column;
- }
-
- /**
- * Get the 1-based column number of the character.
- *
- * @return the column number; always positive
- */
- public int getColumn() {
- return column;
- }
-
- /**
- * Get the 1-based line number of the character.
- *
- * @return the line number; always positive
- */
- public int getLine() {
- return line;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see java.lang.Object#toString()
- */
- @Override
- public String toString() {
- return "" + line + ':' + column;
- }
- }
-
- /**
- * An exception representing a problem during parsing.
- */
- public static class ParsingException extends RuntimeException {
- private static final long serialVersionUID = 1L;
-
- private final Position position;
-
- /**
- * @param position the position of the error; never null
- */
- public ParsingException( Position position ) {
- super();
- this.position = position;
- }
-
- /**
- * @param position the position of the error; never null
- * @param message the message
- * @param cause the underlying cause
- */
- public ParsingException( Position position,
- String message,
- Throwable cause ) {
- super(message, cause);
- this.position = position;
- }
-
- /**
- * @param position the position of the error; never null
- * @param message the message
- */
- public ParsingException( Position position,
- String message ) {
- super(message);
- this.position = position;
- }
-
- /**
- * @return position
- */
- public Position getPosition() {
- return position;
- }
- }
-
- /**
* Obtain a basic {@link Tokenizer} implementation that ignores whitespace but
includes tokens for individual symbols, the
* period ('.'), single-quoted strings, double-quoted strings,
whitespace-delimited words, and optionally comments.
* <p>
Modified: trunk/dna-common/src/test/java/org/jboss/dna/common/text/SampleSqlParser.java
===================================================================
---
trunk/dna-common/src/test/java/org/jboss/dna/common/text/SampleSqlParser.java 2009-09-16
23:13:07 UTC (rev 1228)
+++
trunk/dna-common/src/test/java/org/jboss/dna/common/text/SampleSqlParser.java 2009-09-17
14:01:59 UTC (rev 1229)
@@ -26,7 +26,6 @@
import java.util.LinkedList;
import java.util.List;
import net.jcip.annotations.Immutable;
-import org.jboss.dna.common.text.TokenStream.ParsingException;
/**
*
Modified:
trunk/dna-common/src/test/java/org/jboss/dna/common/text/TokenStreamBasicTokenizerTest.java
===================================================================
---
trunk/dna-common/src/test/java/org/jboss/dna/common/text/TokenStreamBasicTokenizerTest.java 2009-09-16
23:13:07 UTC (rev 1228)
+++
trunk/dna-common/src/test/java/org/jboss/dna/common/text/TokenStreamBasicTokenizerTest.java 2009-09-17
14:01:59 UTC (rev 1229)
@@ -28,8 +28,6 @@
import java.util.LinkedList;
import org.jboss.dna.common.text.TokenStream.BasicTokenizer;
import org.jboss.dna.common.text.TokenStream.CharacterArrayStream;
-import org.jboss.dna.common.text.TokenStream.ParsingException;
-import org.jboss.dna.common.text.TokenStream.Position;
import org.jboss.dna.common.text.TokenStream.Tokens;
import org.junit.Before;
import org.junit.Test;
Modified: trunk/dna-common/src/test/java/org/jboss/dna/common/text/TokenStreamTest.java
===================================================================
---
trunk/dna-common/src/test/java/org/jboss/dna/common/text/TokenStreamTest.java 2009-09-16
23:13:07 UTC (rev 1228)
+++
trunk/dna-common/src/test/java/org/jboss/dna/common/text/TokenStreamTest.java 2009-09-17
14:01:59 UTC (rev 1229)
@@ -25,7 +25,6 @@
import static org.hamcrest.core.Is.is;
import static org.junit.Assert.assertThat;
-import org.jboss.dna.common.text.TokenStream.ParsingException;
import org.jboss.dna.common.text.TokenStream.Tokenizer;
import org.junit.Before;
import org.junit.Test;
Show replies by date