/** * Note that this method relies on {@link #getStream()}. This stream is * closed once fully read. */ @Override public String getText() throws IOException { return IoUtils.toString(getStream(), getCharacterSet()); }
/** * Sets the reader to use. * * @param reader * The reader to use. */ public void setReader(Reader reader) { this.reader = reader; setAvailable(reader != null); }
/** * Constructor. * * @param reader * The representation's stream. * @param mediaType * The representation's media type. * @param expectedSize * The expected reader size in bytes. */ public ReaderRepresentation(Reader reader, MediaType mediaType, long expectedSize) { super(mediaType); setSize(expectedSize); setTransient(true); setReader(reader); }
result = source.getReader(); } else if (ReaderRepresentation.class.isAssignableFrom(target)) { result = new ReaderRepresentation(source.getReader()); } else if (Serializable.class.isAssignableFrom(target) || target.isPrimitive()) {
@Override public Reader getReader() throws IOException { final Reader result = this.reader; setReader(null); return result; }
@Override public void write(Writer writer) throws IOException { IoUtils.copy(getReader(), writer); } }
MediaType.APPLICATION_OCTET_STREAM)); } else if (source instanceof Reader) { result = new ReaderRepresentation((Reader) source, MediaType.getMostSpecific(target.getMediaType(), MediaType.TEXT_PLAIN));