Author: remm
Date: Fri Feb 10 07:20:44 2006
New Revision: 376730
URL: http://svn.apache.org/viewcvs?rev=376730&view=rev
Log:
- Have CharCHunk implement CharSequence, so that a CharChunk can be given to a
Java 5 regexp matcher
without having to do a useless toString on it first. Typically, it would be
the URL.
- For some reason Costin refused this a while ago. Maybe there was a
misunderstanding as to what
the proposed change was about, as there's no functional change to CharChunk.
Is this change still refused ?
Modified:
tomcat/connectors/trunk/util/java/org/apache/tomcat/util/buf/CharChunk.java
Modified:
tomcat/connectors/trunk/util/java/org/apache/tomcat/util/buf/CharChunk.java
URL:
http://svn.apache.org/viewcvs/tomcat/connectors/trunk/util/java/org/apache/tomcat/util/buf/CharChunk.java?rev=376730&r1=376729&r2=376730&view=diff
==============================================================================
--- tomcat/connectors/trunk/util/java/org/apache/tomcat/util/buf/CharChunk.java
(original)
+++ tomcat/connectors/trunk/util/java/org/apache/tomcat/util/buf/CharChunk.java
Fri Feb 10 07:20:44 2006
@@ -30,7 +30,7 @@
* @author Costin Manolache
* @author Remy Maucherat
*/
-public final class CharChunk implements Cloneable, Serializable {
+public final class CharChunk implements Cloneable, Serializable, CharSequence {
// Input interface, used when the buffer is emptied.
public static interface CharInputChannel {
@@ -695,4 +695,26 @@
return b;
}
+ // Char sequence impl
+
+ public char charAt(int index) {
+ return buff[index + start];
+ }
+
+ public CharSequence subSequence(int start, int end) {
+ try {
+ CharChunk result = (CharChunk) this.clone();
+ result.setOffset(this.start + start);
+ result.setEnd(this.start + end);
+ return result;
+ } catch (CloneNotSupportedException e) {
+ // Cannot happen
+ return null;
+ }
+ }
+
+ public int length() {
+ return end - start;
+ }
+
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]