1 package org.codehaus.xfire.java.message;
2
3 import java.util.Calendar;
4 import java.util.Date;
5
6 /***
7 * Writes messages to an output stream. When using the MessageWriter
8 * a strict contract must be followed.
9 *
10 * TODO: elaborate on contract
11 *
12 * @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a>
13 */
14 public interface MessageWriter
15 {
16 void writeValue( Object value );
17
18 void writeValueAsCalendar( Calendar calendar );
19
20 void writeValueAsDate( Date date );
21
22 void writeValueAsDateTime( Date date );
23
24
25
26 void writeValueAsInt( Integer i );
27
28 void writeValueAsDouble(Double double1);
29
30 void writeValueAsLong(Long l);
31
32 void writeValueAsFloat(Float f);
33
34 MessageWriter getChildWriter(String name);
35
36 MessageWriter getChildWriter(String name, String namespace);
37
38 String getNamespace();
39
40 void setNamespace( String namespace );
41
42 /***
43 * @param b
44 */
45 void writeValueAsBoolean(boolean b);
46
47 /***
48 * Tells the MessageWriter that writing operations are completed so
49 * it can write the end element.
50 */
51 void close();
52 }