001: /*
002: * Copyright (c) 1998-2008 Caucho Technology -- all rights reserved
003: *
004: * This file is part of Resin(R) Open Source
005: *
006: * Each copy or derived work must preserve the copyright notice and this
007: * notice unmodified.
008: *
009: * Resin Open Source is free software; you can redistribute it and/or modify
010: * it under the terms of the GNU General Public License as published by
011: * the Free Software Foundation; either version 2 of the License, or
012: * (at your option) any later version.
013: *
014: * Resin Open Source is distributed in the hope that it will be useful,
015: * but WITHOUT ANY WARRANTY; without even the implied warranty of
016: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, or any warranty
017: * of NON-INFRINGEMENT. See the GNU General Public License for more
018: * details.
019: *
020: * You should have received a copy of the GNU General Public License
021: * along with Resin Open Source; if not, write to the
022: *
023: * Free Software Foundation, Inc.
024: * 59 Temple Place, Suite 330
025: * Boston, MA 02111-1307 USA
026: *
027: * @author Scott Ferguson
028: */
029:
030: package com.caucho.quercus.resources;
031:
032: import com.caucho.quercus.env.ResourceValue;
033: import com.caucho.quercus.env.StringValue;
034:
035: import java.io.IOException;
036:
037: /**
038: * Represents a PHP open stream
039: */
040: public class StreamResource extends ResourceValue {
041: /**
042: * Reads the next byte, returning -1 on eof.
043: */
044: public int read() throws IOException {
045: return -1;
046: }
047:
048: /**
049: * Reads a buffer, returning -1 on eof.
050: */
051: public int read(byte[] buffer, int offset, int length)
052: throws IOException {
053: return -1;
054: }
055:
056: /**
057: * Reads the optional linefeed character from a \r\n
058: */
059: public boolean readOptionalLinefeed() throws IOException {
060: return false;
061: }
062:
063: /**
064: * Reads a line from the buffer.
065: */
066: public StringValue readLine() throws IOException {
067: return null;
068: }
069:
070: /**
071: * Writes to a buffer.
072: */
073: public int write(byte[] buffer, int offset, int length)
074: throws IOException {
075: return -1;
076: }
077:
078: /**
079: * prints
080: */
081: public void print(char ch) throws IOException {
082: print(String.valueOf(ch));
083: }
084:
085: /**
086: * prints
087: */
088: public void print(String s) throws IOException {
089: }
090:
091: /**
092: * Returns true on the end of file.
093: */
094: public boolean isEOF() {
095: return true;
096: }
097:
098: /**
099: * Flushes the output
100: */
101: public void flush() {
102: }
103:
104: /**
105: * Returns the current location in the file.
106: */
107: public long getPosition() {
108: return 0;
109: }
110:
111: /**
112: * Closes the stream.
113: */
114: public void close() {
115: }
116:
117: /**
118: * Closes the stream for reading
119: */
120: public void closeRead() {
121: }
122:
123: /**
124: * Closes the stream for writing
125: */
126: public void closeWrite() {
127: }
128: }
|