You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by ju...@apache.org on 2001/05/21 17:43:05 UTC
cvs commit: jakarta-slide/src/share/org/apache/slide/content NodeRevisionContent.java
juergen 01/05/21 08:43:04
Modified: src/share/org/apache/slide/content NodeRevisionContent.java
Log:
added a new accessor returning a byte array "getContentBytes()"
Revision Changes Path
1.8 +102 -21 jakarta-slide/src/share/org/apache/slide/content/NodeRevisionContent.java
Index: NodeRevisionContent.java
===================================================================
RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/content/NodeRevisionContent.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- NodeRevisionContent.java 2001/02/01 17:16:25 1.7
+++ NodeRevisionContent.java 2001/05/21 15:42:56 1.8
@@ -1,7 +1,7 @@
/*
- * $Header: /home/cvs/jakarta-slide/src/share/org/apache/slide/content/NodeRevisionContent.java,v 1.7 2001/02/01 17:16:25 juergen Exp $
- * $Revision: 1.7 $
- * $Date: 2001/02/01 17:16:25 $
+ * $Header: /home/cvs/jakarta-slide/src/share/org/apache/slide/content/NodeRevisionContent.java,v 1.8 2001/05/21 15:42:56 juergen Exp $
+ * $Revision: 1.8 $
+ * $Date: 2001/05/21 15:42:56 $
*
* ====================================================================
*
@@ -75,7 +75,7 @@
*
* @author <a href="mailto:remm@apache.org">Remy Maucherat</a>
* @author Juergen Pill
- * @version $Revision: 1.7 $
+ * @version $Revision: 1.8 $
*/
public final class NodeRevisionContent implements Serializable {
@@ -93,6 +93,7 @@
* Content.
*/
private char[] content = null;
+ private byte[] contentBytes = null;
/**
@@ -121,10 +122,10 @@
result = content;
inputStream = null;
reader = null;
- };
- if (inputStream != null) {
+ }
+ else if (reader != null) {
try {
- content = new String(readFromStream(inputStream)).toCharArray();
+ content = readFromReader(reader);
} catch (IOException e) {
e.printStackTrace();
}
@@ -132,12 +133,19 @@
inputStream = null;
reader = null;
}
- if (reader != null) {
+ else if (contentBytes != null) {
+ content = new String(contentBytes).toCharArray();
+ result = content;
+ inputStream = null;
+ reader = null;
+ }
+ else if (inputStream != null) {
try {
- content = readFromReader(reader);
+ contentBytes = readFromStream(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
+ content = new String(contentBytes).toCharArray();
result = content;
inputStream = null;
reader = null;
@@ -145,6 +153,48 @@
return result;
}
+ /**
+ * Content accessor.
+ *
+ * @return char[] Content
+ */
+ public byte[] getContentBytes() {
+ byte[] result = null;
+ if (contentBytes != null) {
+ result = contentBytes;
+ inputStream = null;
+ reader = null;
+ }
+ else if (inputStream != null) {
+ try {
+ contentBytes = readFromStream(inputStream);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ result = contentBytes;
+ inputStream = null;
+ reader = null;
+ }
+ else if (content != null) {
+ contentBytes = new String(content).getBytes();
+ result = contentBytes;
+ inputStream = null;
+ reader = null;
+ }
+ else if (reader != null) {
+ try {
+ content = readFromReader(reader);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ contentBytes = new String(content).getBytes();
+ result = contentBytes;
+ inputStream = null;
+ reader = null;
+ }
+ return result;
+ }
+
/**
@@ -155,19 +205,24 @@
public Reader readContent()
throws IOException {
Reader result = null;
- if (content != null) {
- result = new CharArrayReader(content);
- inputStream = null;
- reader = null;
- }
if (reader != null) {
result = reader;
inputStream = null;
}
- if (inputStream != null) {
+ else if (content != null) {
+ result = new CharArrayReader(content);
+ inputStream = null;
+ reader = null;
+ }
+ else if (inputStream != null) {
result = new InputStreamReader(inputStream);
reader = null;
}
+ else if (contentBytes != null) {
+ result = new CharArrayReader(new String(contentBytes).toCharArray());
+ inputStream = null;
+ reader = null;
+ }
return result;
}
@@ -180,16 +235,27 @@
public InputStream streamContent()
throws IOException {
InputStream result = null;
- if (content != null) {
- result = new StringBufferInputStream(new String(content));
- reader = null;
- inputStream = null;
- }
if (inputStream != null) {
result = inputStream;
content = null;
reader = null;
}
+ else if (contentBytes != null) {
+ result = new ByteArrayInputStream( contentBytes );
+ reader = null;
+ inputStream = null;
+ }
+// else if( reader != null ) {
+// result = ???;
+// inputStream = null;
+// }
+ else if (content != null) {
+// Class StringBufferInputStream is deprecated !!
+// result = new StringBufferInputStream(new String(content));
+ result = new ByteArrayInputStream( new String(content).getBytes() );
+ reader = null;
+ inputStream = null;
+ }
return result;
}
@@ -199,10 +265,23 @@
*
* @param content New content
*/
+ public void setContent(byte[] contentBytes) {
+ this.contentBytes = contentBytes;
+ this.reader = null;
+ this.inputStream = null;
+ this.content = null;
+ }
+
+ /**
+ * Content mutator.
+ *
+ * @param content New content
+ */
public void setContent(char[] content) {
this.content = content;
this.reader = null;
this.inputStream = null;
+ this.contentBytes = null;
}
@@ -215,6 +294,7 @@
this.reader = reader;
this.inputStream = null;
this.content = null;
+ this.contentBytes = null;
}
@@ -227,6 +307,7 @@
this.inputStream = inputStream;
this.reader = null;
this.content = null;
+ this.contentBytes = null;
}
@@ -238,7 +319,7 @@
*/
public void validate() {
- if ((content == null) && (reader == null) && (inputStream == null))
+ if ((content == null) && (contentBytes == null) && (reader == null) && (inputStream == null))
throw new ObjectValidationFailedException
(Messages.message
(NodeRevisionContent.class.getName() + ".noContent"));