2
* JBoss, Home of Professional Open Source
3
* Copyright 2005, JBoss Inc., and individual contributors as indicated
4
* by the @authors tag. See the copyright.txt in the distribution for a
5
* full listing of individual contributors.
7
* This is free software; you can redistribute it and/or modify it
8
* under the terms of the GNU Lesser General Public License as
9
* published by the Free Software Foundation; either version 2.1 of
10
* the License, or (at your option) any later version.
12
* This software is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
* Lesser General Public License for more details.
17
* You should have received a copy of the GNU Lesser General Public
18
* License along with this software; if not, write to the Free
19
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
20
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
22
package org.jboss.remoting;
24
import java.io.IOException;
28
* @author <a href="mailto:telrod@e2technologies.net">Tom Elrod</a>
30
public interface ServerInvokerMBean
33
* Will get the data type for the marshaller factory so know which marshaller to
34
* get to marshal the data. Will first check the locator uri for a 'datatype'
35
* parameter and take that value if it exists. Otherwise, will use the
36
* default datatype for the client invoker, based on transport.
43
* returns true if the transport is bi-directional in nature, for example,
44
* SOAP in unidirectional and SOCKETs are bi-directional (unless behind a firewall
49
boolean isTransportBiDirectional();
54
* subclasses should override to provide any specific start logic
56
* @throws java.io.IOException
58
void start() throws IOException;
61
* return true if the server invoker is started, false if not
68
* subclasses should override to provide any specific stop logic
73
* destory the invoker permanently
78
* Sets the server invoker's transport specific configuration. Will need to set before calling
79
* start() method (or at least stop() and start() again) before configurations will take affect.
81
* @param configuration
83
void setConfiguration(Map configuration);
86
* Gets teh server invoker's transport specific configuration.
90
Map getConfiguration();
93
* @jmx:managed-attribute
95
String getClientConnectAddress();
97
int getClientConnectPort();
100
* This method should only be called by the service controller when this invoker is
101
* specified within the Connector configuration of a service xml. Calling this directly
102
* will have no effect, as will be used in building the locator uri that is published
103
* for detection and this happens when the invoker is first created and started (after that, no one
104
* will be aware of a change).
106
* @jmx:managed-attribute
108
void setClientConnectAddress(String clientConnectAddress);
110
String getServerBindAddress();
112
int getServerBindPort();
114
void setClientConnectPort(int clientConnectPort);
116
void setTimeout(int timeout);