01: package org.objectweb.celtix.transports;
02:
03: import java.io.IOException;
04:
05: import javax.xml.ws.handler.MessageContext;
06:
07: import org.objectweb.celtix.context.OutputStreamMessageContext;
08:
09: /**
10: * Transport
11: * @author dkulp
12: *
13: */
14: public interface Transport {
15:
16: /**
17: * Shutdown the <code>Transport</code>.
18: */
19: void shutdown();
20:
21: /**
22: * Create a context from which an OutputStream for the Transport can
23: * be obtained.
24: * @param context The associated MessageContext.
25: * @return the context that will be used to obtain the OutputStream
26: * @throws IOException If there is an error creating the context.
27: */
28: OutputStreamMessageContext createOutputStreamContext(
29: MessageContext context) throws IOException;
30:
31: /**
32: * Prepare the OutputStream context before writing.
33: * @param context The <code>OutputStreamMessageContext</code> to prepare.
34: * @throws IOException If there is an error preparing the context.
35: */
36: void finalPrepareOutputStreamContext(
37: OutputStreamMessageContext context) throws IOException;
38: }
|