package org.hccp.pdf; public class Stream extends IndirectObject { private StreamData value; public Stream(int objectIdentifier, int generationNumber, byte[] data) { super(objectIdentifier, generationNumber); value = new StreamData(data); super.setValue(value); } private class StreamData implements DocumentObject { Dictionary streamDictionary; byte[] data; public StreamData(byte[] data) { streamDictionary = new Dictionary(); this.data = data; streamDictionary.addEntry(new Name("Length"), new Numeric(data.length)); } public String getValue() { StringBuffer sb = new StringBuffer(); sb.append(streamDictionary.getValue()); sb.append("stream\n"); sb.append(new String(data)); sb.append("endstream\n"); return sb.toString(); } } }