1 17 18 19 20 package org.apache.fop.render.afp.modca; 21 22 import java.io.IOException ; 23 import java.io.OutputStream ; 24 import java.io.UnsupportedEncodingException ; 25 import java.util.ArrayList ; 26 import java.util.List ; 27 28 31 public final class ResourceGroup extends AbstractNamedAFPObject { 32 33 36 private static final String DEFAULT_NAME = "RG000001"; 37 38 39 42 private List _overlays = new ArrayList (); 43 44 public ResourceGroup() { 45 46 this(DEFAULT_NAME); 47 48 } 49 50 55 public ResourceGroup(String name) { 56 57 super(name); 58 59 } 60 61 65 public void addOverlay(Overlay overlay) { 66 _overlays.add(overlay); 67 } 68 69 73 public List getOverlays() { 74 return _overlays; 75 } 76 77 83 public void writeDataStream(OutputStream os) 84 throws IOException { 85 86 writeStart(os); 87 88 writeObjectList(_overlays, os); 89 90 writeEnd(os); 91 92 } 93 94 98 private void writeStart(OutputStream os) 99 throws IOException { 100 101 byte[] data = new byte[17]; 102 103 data[0] = 0x5A; data[1] = 0x00; data[2] = 0x10; data[3] = (byte) 0xD3; data[4] = (byte) 0xA8; data[5] = (byte) 0xC6; data[6] = 0x00; data[7] = 0x00; data[8] = 0x00; 113 for (int i = 0; i < _nameBytes.length; i++) { 114 115 data[9 + i] = _nameBytes[i]; 116 117 } 118 119 os.write(data); 120 121 } 122 123 127 private void writeEnd(OutputStream os) 128 throws IOException { 129 130 byte[] data = new byte[17]; 131 132 data[0] = 0x5A; data[1] = 0x00; data[2] = 0x10; data[3] = (byte) 0xD3; data[4] = (byte) 0xA9; data[5] = (byte) 0xC6; data[6] = 0x00; data[7] = 0x00; data[8] = 0x00; 142 for (int i = 0; i < _nameBytes.length; i++) { 143 144 data[9 + i] = _nameBytes[i]; 145 146 } 147 148 os.write(data); 149 150 } 151 152 } | Popular Tags |