- this.raw = all.toString();
- this.fountain = new Fountain.StringFountain(this.raw);
- this.lines = lines;
- this.mime = assumeMime | (get("mime-version") != null && get("mime-version").trim().equals("1.0"));
- /*
- java.util.Enumeration e = head.keys();
- while(e.hasNext()) {
- String k = (String)e.next();
- String v = (String)head.get(k);
- if (mime) k = Encode.RFC2047.decode(k);
- v = uncomment(v);
- if (mime) v = Encode.RFC2047.decode(v);
- head.put(k, v);
- }
- */
+ return (Entry[])entries.toArray(new Entry[entries.size()]);
+ }
+
+ private Entry[] updateHeaders(String[] keyval) {
+ ArrayList<Entry> entries = new ArrayList<Entry>();
+ for(int i=0; i<this.entries.length; i++)
+ entries.add(this.entries[i]);
+ OUTER: for(int i=0; i<keyval.length; i+=2) {
+ for(int j=0; j<entries.size(); j++) {
+ Entry e = entries.get(j);
+ if (!e.key.toLowerCase().equals(keyval[i].toLowerCase())) continue;
+ if (keyval[i+1]==null)
+ entries.remove(j);
+ else
+ entries.set(j, new Entry(keyval[i], keyval[i+1]+"\r\n"));
+ continue OUTER;
+ }
+ if (keyval[i+1]!=null)
+ entries.add(0, new Entry(keyval[i], keyval[i+1]+"\r\n"));
+ }
+ return (Entry[])entries.toArray(new Entry[entries.size()]);