JBoss Remoting SVN: r5116 - remoting2/branches/2.x/src/main/org/jboss/remoting/detection.
by jboss-remoting-commits@lists.jboss.org
Author: ron.sigal(a)jboss.com
Date: 2009-05-01 15:59:09 -0400 (Fri, 01 May 2009)
New Revision: 5116
Modified:
remoting2/branches/2.x/src/main/org/jboss/remoting/detection/AbstractDetector.java
Log:
JBREM-1125: Tests for IllegalStateException when scheduling on heartbeatTimer.
Modified: remoting2/branches/2.x/src/main/org/jboss/remoting/detection/AbstractDetector.java
===================================================================
--- remoting2/branches/2.x/src/main/org/jboss/remoting/detection/AbstractDetector.java 2009-05-01 19:56:20 UTC (rev 5115)
+++ remoting2/branches/2.x/src/main/org/jboss/remoting/detection/AbstractDetector.java 2009-05-01 19:59:09 UTC (rev 5116)
@@ -367,7 +367,17 @@
{
heartbeatTimer = new Timer(false);
}
- heartbeatTimer.schedule(new Heartbeat(), delay, period);
+
+ try
+ {
+ heartbeatTimer.schedule(new Heartbeat(), delay, period);
+ }
+ catch (IllegalStateException e)
+ {
+ log.debug("Unable to schedule TimerTask on existing Timer", e);
+ heartbeatTimer = new Timer(false);
+ heartbeatTimer.schedule(new Heartbeat(), delay, period);
+ }
}
/**
15 years, 6 months
JBoss Remoting SVN: r5115 - remoting2/branches/2.2/src/main/org/jboss/remoting/util.
by jboss-remoting-commits@lists.jboss.org
Author: ron.sigal(a)jboss.com
Date: 2009-05-01 15:56:20 -0400 (Fri, 01 May 2009)
New Revision: 5115
Modified:
remoting2/branches/2.2/src/main/org/jboss/remoting/util/TimerUtil.java
Log:
JBREM-1125: Tests for IllegalStateException when scheduling on timer.
Modified: remoting2/branches/2.2/src/main/org/jboss/remoting/util/TimerUtil.java
===================================================================
--- remoting2/branches/2.2/src/main/org/jboss/remoting/util/TimerUtil.java 2009-05-01 19:51:03 UTC (rev 5114)
+++ remoting2/branches/2.2/src/main/org/jboss/remoting/util/TimerUtil.java 2009-05-01 19:56:20 UTC (rev 5115)
@@ -35,7 +35,16 @@
}
//schedule at fixed delay (not rate)
- TimerUtil.timer.schedule(task, period, period);
+ try
+ {
+ TimerUtil.timer.schedule(task, period, period);
+ }
+ catch (IllegalStateException e)
+ {
+ log.debug("Unable to schedule TimerTask on existing Timer", e);
+ timer = new Timer(true);
+ timer.schedule(task, period, period);
+ }
}
public static synchronized void unschedule(TimerTask task)
15 years, 6 months
JBoss Remoting SVN: r5114 - remoting2/branches/2.2/src/main/org/jboss/remoting/detection.
by jboss-remoting-commits@lists.jboss.org
Author: ron.sigal(a)jboss.com
Date: 2009-05-01 15:51:03 -0400 (Fri, 01 May 2009)
New Revision: 5114
Modified:
remoting2/branches/2.2/src/main/org/jboss/remoting/detection/AbstractDetector.java
Log:
JBREM-1125: Tests for IllegalStateException when scheduling on heartbeatTimer.
Modified: remoting2/branches/2.2/src/main/org/jboss/remoting/detection/AbstractDetector.java
===================================================================
--- remoting2/branches/2.2/src/main/org/jboss/remoting/detection/AbstractDetector.java 2009-05-01 04:51:34 UTC (rev 5113)
+++ remoting2/branches/2.2/src/main/org/jboss/remoting/detection/AbstractDetector.java 2009-05-01 19:51:03 UTC (rev 5114)
@@ -358,7 +358,17 @@
{
heartbeatTimer = new Timer(false);
}
- heartbeatTimer.schedule(new Heartbeat(), delay, period);
+
+ try
+ {
+ heartbeatTimer.schedule(new Heartbeat(), delay, period);
+ }
+ catch (IllegalStateException e)
+ {
+ log.debug("Unable to schedule TimerTask on existing Timer", e);
+ heartbeatTimer = new Timer(false);
+ heartbeatTimer.schedule(new Heartbeat(), delay, period);
+ }
}
/**
15 years, 6 months
JBoss Remoting SVN: r5113 - remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting.
by jboss-remoting-commits@lists.jboss.org
Author: ron.sigal(a)jboss.com
Date: 2009-05-01 00:51:34 -0400 (Fri, 01 May 2009)
New Revision: 5113
Modified:
remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/Lease.java
remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/LeasePinger.java
remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/MicroRemoteClientInvoker.java
Log:
Added timestamp to Lease pings.
Modified: remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/Lease.java
===================================================================
--- remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/Lease.java 2009-05-01 04:50:39 UTC (rev 5112)
+++ remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/Lease.java 2009-05-01 04:51:34 UTC (rev 5113)
@@ -54,6 +54,7 @@
private boolean stopped;
private boolean leaseUpdated = false;
+ private long lastUpdate;
private static final Logger log = Logger.getLogger(Lease.class);
private static final boolean isTraceEnabled = log.isTraceEnabled();
@@ -69,6 +70,9 @@
{
this.requestPayload = (Map)requestPayload.get(ClientHolder.CLIENT_HOLDER_KEY);
this.leasePingerId = (String) requestPayload.get(LeasePinger.LEASE_PINGER_ID);
+ this.lastUpdate = Long.valueOf((String) requestPayload.get("time")).longValue();
+ log.debug(this + " initialized with lastUpdate: " + lastUpdate);
+ log.debug(this + " initialized with requestPayload: " + this.requestPayload);
}
log.debug("leasePingerId: " + leasePingerId);
this.leaseWindow = leasePeriod * 2;
@@ -90,29 +94,54 @@
{
if(requestMap != null)
{
- synchronized (lock)
+ log.debug(this + " requestMap: " + requestMap);
+ long time = 0;
+ try
{
- this.requestPayload = (Map)requestMap.get(ClientHolder.CLIENT_HOLDER_KEY);
+ String timeString = (String) requestMap.get("time");
+ log.debug(this + " timeString: " + timeString);
+ time = Long.valueOf(timeString).longValue();
+ log.debug(this + " time: " + time);
+ }
+ catch(NullPointerException e)
+ {
+ log.error("time?", e);
+ throw e;
+ }
+ log.debug(this + " last update: " + lastUpdate + ", this update: " + time);
+ if (time > lastUpdate)
+ {
+ synchronized (lock)
+ {
+ this.requestPayload = (Map)requestMap.get(ClientHolder.CLIENT_HOLDER_KEY);
- log.debug(this + " updating: new Client list:");
- Collection clientHoldersCol = requestPayload.values();
- Iterator itr = clientHoldersCol.iterator();
- while (itr.hasNext())
- {
- Object val = itr.next();
- if (val != null && val instanceof ClientHolder)
+ log.debug(this + " updating: new Client list:");
+ Collection clientHoldersCol = requestPayload.values();
+ Iterator itr = clientHoldersCol.iterator();
+ while (itr.hasNext())
{
- ClientHolder clientHolder = (ClientHolder) val;
- log.debug(this + " " + clientHolder.getSessionId());
+ Object val = itr.next();
+ if (val != null && val instanceof ClientHolder)
+ {
+ ClientHolder clientHolder = (ClientHolder) val;
+ log.debug(this + " " + clientHolder.getSessionId());
+ }
}
+
+ lastUpdate = time;
+ updateLease(leasePeriod);
}
}
+ else
+ {
+ log.debug(this + " updating lease but not client list");
+ leaseUpdated = true;
+ }
}
else
{
log.debug(this + " requestPayload == null");
}
- updateLease(leasePeriod);
}
public void updateLease(long leasePeriod)
Modified: remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/LeasePinger.java
===================================================================
--- remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/LeasePinger.java 2009-05-01 04:50:39 UTC (rev 5112)
+++ remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/LeasePinger.java 2009-05-01 04:51:34 UTC (rev 5113)
@@ -314,6 +314,7 @@
Map requestClients = new ConcurrentHashMap();
requestClients.put(ClientHolder.CLIENT_HOLDER_KEY, clientsClone);
requestClients.put(LeasePinger.LEASE_PINGER_ID, leasePingerId);
+ requestClients.put("time", Long.toString(System.currentTimeMillis()));
InvocationRequest ir = new InvocationRequest(invokerSessionID, null, "$PING$", requestClients, null, null);
invoker.invoke(ir);
Modified: remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/MicroRemoteClientInvoker.java
===================================================================
--- remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/MicroRemoteClientInvoker.java 2009-05-01 04:50:39 UTC (rev 5112)
+++ remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/MicroRemoteClientInvoker.java 2009-05-01 04:51:34 UTC (rev 5113)
@@ -423,6 +423,7 @@
String leasePingerId = new GUID().toString();
Map requestMap = new HashMap();
requestMap.put(LeasePinger.LEASE_PINGER_ID, leasePingerId);
+ requestMap.put("time", Long.toString(System.currentTimeMillis()));
log.info(this + " initiating lease for leasePingerId " + leasePingerId);
InvocationRequest ir = new InvocationRequest(invokerSessionID, null, "$PING$", requestMap, new HashMap(), null);
15 years, 7 months
JBoss Remoting SVN: r5112 - remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting.
by jboss-remoting-commits@lists.jboss.org
Author: ron.sigal(a)jboss.com
Date: 2009-05-01 00:50:39 -0400 (Fri, 01 May 2009)
New Revision: 5112
Modified:
remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/ConnectionValidator.java
Log:
Shuts down LeasePinger before notifying ConnectionListeners about bad connection.
Modified: remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/ConnectionValidator.java
===================================================================
--- remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/ConnectionValidator.java 2009-05-01 04:49:36 UTC (rev 5111)
+++ remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/ConnectionValidator.java 2009-05-01 04:50:39 UTC (rev 5112)
@@ -752,7 +752,7 @@
{
public void run()
{
- log.debug(this + " calling " + listener + ".handleConnectionException() for " + client);
+ log.debug(ConnectionValidator.this + " calling " + listener + ".handleConnectionException() for " + client);
listener.handleConnectionException(t, client);
}
}.start();
@@ -799,7 +799,7 @@
{
log.debug(ConnectionValidator.this + "'s connection is invalid");
- notifyListeners(new Exception("Could not connect to server!"));
+// notifyListeners(new Exception("Could not connect to server!"));
if (stopLeaseOnFailure)
{
@@ -823,6 +823,8 @@
cancel();
}
+
+ notifyListeners(new Exception("Could not connect to server!"));
}
}
}
15 years, 7 months
JBoss Remoting SVN: r5111 - remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting.
by jboss-remoting-commits@lists.jboss.org
Author: ron.sigal(a)jboss.com
Date: 2009-05-01 00:49:36 -0400 (Fri, 01 May 2009)
New Revision: 5111
Modified:
remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/Client.java
Log:
Changed toString() so that it includes sessionId.
Modified: remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/Client.java
===================================================================
--- remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/Client.java 2009-05-01 02:17:23 UTC (rev 5110)
+++ remoting2/branches/2.2.2-SP11_JBREM-1112/src/main/org/jboss/remoting/Client.java 2009-05-01 04:49:36 UTC (rev 5111)
@@ -1595,7 +1595,7 @@
public String toString()
{
- return "Client[" + System.identityHashCode(this) + "]";
+ return "Client[" + System.identityHashCode(this) + ":" + sessionId + "]";
}
// Package protected ----------------------------------------------------------------------------
15 years, 7 months
JBoss Remoting SVN: r5110 - remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/spi.
by jboss-remoting-commits@lists.jboss.org
Author: david.lloyd(a)jboss.com
Date: 2009-04-30 22:17:23 -0400 (Thu, 30 Apr 2009)
New Revision: 5110
Modified:
remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/spi/SpiUtils.java
Log:
remove some duplicate code
Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/spi/SpiUtils.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/spi/SpiUtils.java 2009-05-01 01:11:18 UTC (rev 5109)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/spi/SpiUtils.java 2009-05-01 02:17:23 UTC (rev 5110)
@@ -141,20 +141,8 @@
public static <T extends ConnectionHandler> ConnectionHandlerFactory connectionHandlerFactory(final Class<T> handlerClass) throws IllegalArgumentException {
return AccessController.doPrivileged(new PrivilegedAction<ConnectionHandlerFactory>() {
public ConnectionHandlerFactory run() {
- final Constructor<T> constructor;
- try {
- constructor = handlerClass.getConstructor(ConnectionHandler.class);
- } catch (NoSuchMethodException e) {
- throw new IllegalArgumentException("No valid constructor is present");
- }
- if ((handlerClass.getModifiers() & constructor.getModifiers() & Modifier.PUBLIC) == 0) {
- throw new IllegalArgumentException("Class or constructor is not public");
- }
- for (Class<?> exceptionType : constructor.getExceptionTypes()) {
- if (Exception.class.isAssignableFrom(exceptionType) && ! RuntimeException.class.isAssignableFrom(exceptionType)) {
- throw new IllegalArgumentException("Constructor may not throw checked exceptions");
- }
- }
+ final Constructor<T> constructor = getPutOneArgConstructor(ConnectionHandler.class, handlerClass);
+ checkForCheckedExceptions(constructor);
return new ConnectionHandlerFactory() {
public ConnectionHandler createInstance(final ConnectionHandler localConnectionHandler) {
return AccessController.doPrivileged(new PrivilegedAction<ConnectionHandler>() {
@@ -176,6 +164,19 @@
});
}
+ private static <T> Constructor<T> getPutOneArgConstructor(final Class<?> argType, final Class<T> targetClass) {
+ final Constructor<T> constructor;
+ try {
+ constructor = targetClass.getConstructor(argType);
+ } catch (NoSuchMethodException e) {
+ throw new IllegalArgumentException("No valid constructor is present");
+ }
+ if ((targetClass.getModifiers() & constructor.getModifiers() & Modifier.PUBLIC) == 0) {
+ throw new IllegalArgumentException("Class or constructor is not public");
+ }
+ return constructor;
+ }
+
/**
* Create a connection provider factory for a public class which implements {@code ConnectionProvider} and has a
* public constructor which accepts a {@code ConnectionProviderContext} as its sole parameter.
@@ -188,20 +189,8 @@
public static <T extends ConnectionProvider> ConnectionProviderFactory connectionProviderFactory(final Class<T> providerClass) throws IllegalArgumentException {
return AccessController.doPrivileged(new PrivilegedAction<ConnectionProviderFactory>() {
public ConnectionProviderFactory run() {
- final Constructor<T> constructor;
- try {
- constructor = providerClass.getConstructor(ConnectionProviderContext.class);
- } catch (NoSuchMethodException e) {
- throw new IllegalArgumentException("No valid constructor is present");
- }
- if ((providerClass.getModifiers() & constructor.getModifiers() & Modifier.PUBLIC) == 0) {
- throw new IllegalArgumentException("Class or constructor is not public");
- }
- for (Class<?> exceptionType : constructor.getExceptionTypes()) {
- if (Exception.class.isAssignableFrom(exceptionType) && ! RuntimeException.class.isAssignableFrom(exceptionType)) {
- throw new IllegalArgumentException("Constructor may not throw checked exceptions");
- }
- }
+ final Constructor<T> constructor = getPutOneArgConstructor(ConnectionProviderContext.class, providerClass);
+ checkForCheckedExceptions(constructor);
return new ConnectionProviderFactory() {
public ConnectionProvider createInstance(final ConnectionProviderContext context) {
return AccessController.doPrivileged(new PrivilegedAction<ConnectionProvider>() {
@@ -223,6 +212,14 @@
});
}
+ private static void checkForCheckedExceptions(final Constructor<?> constructor) {
+ for (Class<?> exceptionType : constructor.getExceptionTypes()) {
+ if (! Error.class.isAssignableFrom(exceptionType) && ! RuntimeException.class.isAssignableFrom(exceptionType)) {
+ throw new IllegalArgumentException("Constructor may not throw checked exceptions");
+ }
+ }
+ }
+
/**
* Get a remote request context that simply ignores a cancel request.
*
15 years, 7 months
JBoss Remoting SVN: r5109 - remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3.
by jboss-remoting-commits@lists.jboss.org
Author: david.lloyd(a)jboss.com
Date: 2009-04-30 21:11:18 -0400 (Thu, 30 Apr 2009)
New Revision: 5109
Modified:
remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/EndpointImpl.java
Log:
Close the handle when the context is closed
Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/EndpointImpl.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/EndpointImpl.java 2009-05-01 01:10:07 UTC (rev 5108)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/EndpointImpl.java 2009-05-01 01:11:18 UTC (rev 5109)
@@ -367,11 +367,17 @@
connectionProviders.remove(uriScheme, provider);
}
});
- return new AbstractSimpleCloseable(executor) {
+ final AbstractSimpleCloseable handle = new AbstractSimpleCloseable(executor) {
protected void closeAction() throws IOException {
context.close();
}
};
+ context.addCloseHandler(new CloseHandler<ConnectionProviderContext>() {
+ public void handleClose(final ConnectionProviderContext closed) {
+ IoUtils.safeClose(handle);
+ }
+ });
+ return handle;
}
public String toString() {
15 years, 7 months
JBoss Remoting SVN: r5108 - remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3.
by jboss-remoting-commits@lists.jboss.org
Author: david.lloyd(a)jboss.com
Date: 2009-04-30 21:10:07 -0400 (Thu, 30 Apr 2009)
New Revision: 5108
Modified:
remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/Endpoint.java
remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/EndpointImpl.java
Log:
Javadoc fixes, slight API tweak
Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/Endpoint.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/Endpoint.java 2009-05-01 01:01:01 UTC (rev 5107)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/Endpoint.java 2009-05-01 01:10:07 UTC (rev 5108)
@@ -74,11 +74,12 @@
<I, O> Client<I, O> createClient(RequestHandler handler, Class<I> requestClass, Class<O> replyClass) throws IOException;
/**
- * Open a connection with a peer.
+ * Open a connection with a peer. Returns a future connection which may be used to cancel the connection attempt.
+ * This method does not block; use the return value to wait for a result if you wish to block.
*
* @param destination the destination
- * @return
- * @throws IOException
+ * @return the future connection
+ * @throws IOException if an error occurs while starting the connect attempt
*/
IoFuture<? extends Connection> connect(URI destination) throws IOException;
@@ -90,7 +91,7 @@
* @param providerFactory the provider factory
* @return a handle which may be used to remove the registration
*/
- void addConnectionProvider(String uriScheme, ConnectionProviderFactory providerFactory);
+ SimpleCloseable addConnectionProvider(String uriScheme, ConnectionProviderFactory providerFactory);
/**
* Flags which can be passed in to listener registration methods.
Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/EndpointImpl.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/EndpointImpl.java 2009-05-01 01:01:01 UTC (rev 5107)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/EndpointImpl.java 2009-05-01 01:10:07 UTC (rev 5108)
@@ -351,7 +351,7 @@
return futureResult;
}
- public void addConnectionProvider(final String uriScheme, final ConnectionProviderFactory providerFactory) {
+ public SimpleCloseable addConnectionProvider(final String uriScheme, final ConnectionProviderFactory providerFactory) {
final SecurityManager sm = System.getSecurityManager();
if (sm != null) {
sm.checkPermission(ADD_CONNECTION_PROVIDER_PERM);
@@ -367,6 +367,11 @@
connectionProviders.remove(uriScheme, provider);
}
});
+ return new AbstractSimpleCloseable(executor) {
+ protected void closeAction() throws IOException {
+ context.close();
+ }
+ };
}
public String toString() {
15 years, 7 months
JBoss Remoting SVN: r5107 - remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3.
by jboss-remoting-commits@lists.jboss.org
Author: david.lloyd(a)jboss.com
Date: 2009-04-30 21:01:01 -0400 (Thu, 30 Apr 2009)
New Revision: 5107
Modified:
remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/Remoting.java
Log:
Remove unused exception type
Modified: remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/Remoting.java
===================================================================
--- remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/Remoting.java 2009-05-01 00:24:00 UTC (rev 5106)
+++ remoting3/trunk/jboss-remoting/src/main/java/org/jboss/remoting3/Remoting.java 2009-05-01 01:01:01 UTC (rev 5107)
@@ -132,53 +132,5 @@
}
}
- /**
- * An exception indicating that there was a problem creating an endpoint.
- *
- * @apiviz.exclude
- */
- public static final class EndpointException extends RemotingException {
- private static final long serialVersionUID = -9157350594373125152L;
-
- /**
- * Constructs a <tt>EndpointException</tt> with no detail message. The cause is not initialized, and may
- * subsequently be initialized by a call to {@link #initCause(Throwable) initCause}.
- */
- public EndpointException() {
- }
-
- /**
- * Constructs a <tt>EndpointException</tt> with the specified detail message. The cause is not initialized, and
- * may subsequently be initialized by a call to {@link #initCause(Throwable) initCause}.
- *
- * @param msg the detail message
- */
- public EndpointException(String msg) {
- super(msg);
- }
-
- /**
- * Constructs a <tt>EndpointException</tt> with the specified cause. The detail message is set to:
- * <pre>
- * (cause == null ? null : cause.toString())</pre>
- * (which typically contains the class and detail message of <tt>cause</tt>).
- *
- * @param cause the cause (which is saved for later retrieval by the {@link #getCause()} method)
- */
- public EndpointException(Throwable cause) {
- super(cause);
- }
-
- /**
- * Constructs a <tt>EndpointException</tt> with the specified detail message and cause.
- *
- * @param msg the detail message
- * @param cause the cause (which is saved for later retrieval by the {@link #getCause()} method)
- */
- public EndpointException(String msg, Throwable cause) {
- super(msg, cause);
- }
- }
-
private Remoting() { /* empty */ }
}
15 years, 7 months