View Javadoc

1   package org.codehaus.xfire.message;
2   
3   import java.util.Calendar;
4   import java.util.Date;
5   
6   import javax.xml.namespace.QName;
7   import javax.xml.stream.XMLStreamWriter;
8   
9   /***
10   * Writes messages to an output stream.
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 writeValue( Object value, String ns, String attr );
19  
20      void writeValueAsCalendar( Calendar calendar );
21      
22      void writeValueAsCalendar( Calendar calendar, String ns, String attr );
23  
24      void writeValueAsDate( Date date );
25      
26      void writeValueAsDate( Date date, String ns, String attr );
27      
28      void writeValueAsDateTime( Date date );
29      
30      void writeValueAsDateTime( Date date, String ns, String attr );
31      //void writeValueAsTime( Date date );
32  
33      void writeValueAsInt( Integer i );
34  
35      void writeValueAsInt( Integer i, String ns, String attr );
36  
37      void writeValueAsDouble(Double double1);
38  
39      void writeValueAsDouble(Double double1, String ns, String attr);
40  
41      void writeValueAsLong(Long l);
42  
43      void writeValueAsLong(Long l, String ns, String attr);
44  
45      void writeValueAsFloat(Float f);
46  
47      void writeValueAsFloat(Float f, String ns, String attr);
48  
49      MessageWriter getChildWriter(String name);
50  
51      MessageWriter getChildWriter(String name, String namespace);
52      
53      MessageWriter getChildWriter(QName qname);
54      
55      String getNamespace();
56      
57      void setNamespace( String namespace );
58  
59  	/***
60  	 * @param b
61  	 */
62  	void writeValueAsBoolean(boolean b);
63      
64      /***
65       * Tells the MessageWriter that writing operations are completed so 
66       * it can write the end element.
67       */
68      void close();
69      
70      XMLStreamWriter getXMLStreamWriter();
71  }