1
2
3
4
5
6
7
8
9
10
11 package org.mule.transport.service;
12
13 import org.mule.MessageExchangePattern;
14 import org.mule.api.MuleException;
15 import org.mule.api.construct.FlowConstruct;
16 import org.mule.api.context.MuleContextAware;
17 import org.mule.api.endpoint.EndpointBuilder;
18 import org.mule.api.endpoint.EndpointURIBuilder;
19 import org.mule.api.endpoint.ImmutableEndpoint;
20 import org.mule.api.endpoint.InboundEndpoint;
21 import org.mule.api.registry.ServiceDescriptor;
22 import org.mule.api.transaction.TransactionFactory;
23 import org.mule.api.transformer.Transformer;
24 import org.mule.api.transport.Connector;
25 import org.mule.api.transport.MessageDispatcherFactory;
26 import org.mule.api.transport.MessageReceiver;
27 import org.mule.api.transport.MessageRequesterFactory;
28 import org.mule.api.transport.MuleMessageFactory;
29 import org.mule.api.transport.SessionHandler;
30 import org.mule.endpoint.EndpointURIEndpointBuilder;
31
32 import java.util.List;
33 import java.util.Properties;
34
35
36
37
38
39
40
41
42
43 public interface TransportServiceDescriptor extends ServiceDescriptor, MuleContextAware
44 {
45 public static final String OSGI_HEADER_TRANSPORT = "Mule-Transport";
46
47 MuleMessageFactory createMuleMessageFactory() throws TransportServiceException;
48
49 SessionHandler createSessionHandler() throws TransportServiceException;
50
51 MessageReceiver createMessageReceiver(Connector connector,
52 FlowConstruct flowConstruct,
53 InboundEndpoint endpoint) throws MuleException;
54
55 MessageReceiver createMessageReceiver(Connector connector,
56 FlowConstruct flowConstruct,
57 InboundEndpoint endpoint,
58 Object... args) throws MuleException;
59
60 MessageDispatcherFactory createDispatcherFactory() throws TransportServiceException;
61
62 MessageRequesterFactory createRequesterFactory() throws TransportServiceException;
63
64 TransactionFactory createTransactionFactory() throws TransportServiceException;
65
66 Connector createConnector() throws TransportServiceException;
67
68 List<Transformer> createInboundTransformers(ImmutableEndpoint endpoint) throws TransportFactoryException;
69
70 List<Transformer> createOutboundTransformers(ImmutableEndpoint endpoint) throws TransportFactoryException;
71
72 List<Transformer> createResponseTransformers(ImmutableEndpoint endpoint) throws TransportFactoryException;
73
74 EndpointURIBuilder createEndpointURIBuilder() throws TransportFactoryException;
75
76 EndpointBuilder createEndpointBuilder(String uri) throws TransportFactoryException;
77
78 EndpointBuilder createEndpointBuilder(EndpointURIEndpointBuilder builder) throws TransportFactoryException;
79
80 void setExceptionMappings(Properties props);
81
82 Properties getExceptionMappings();
83
84 List<MessageExchangePattern> getInboundExchangePatterns() throws TransportServiceException;
85
86 List<MessageExchangePattern> getOutboundExchangePatterns() throws TransportServiceException;
87
88 MessageExchangePattern getDefaultExchangePattern() throws TransportServiceException;
89 }