
com.sun.messaging.jmq.jmsclient.notification.ConnectionExitEvent Maven / Gradle / Ivy
/*
* Copyright (c) 2000, 2020 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0, which is available at
* http://www.eclipse.org/legal/epl-2.0.
*
* This Source Code may also be made available under the following Secondary
* Licenses when the conditions for such availability set forth in the
* Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
* version 2 with the GNU Classpath Exception, which is available at
* https://www.gnu.org/software/classpath/license.html.
*
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
*/
package com.sun.messaging.jmq.jmsclient.notification;
import com.sun.messaging.jms.notification.ConnectionEvent;
import com.sun.messaging.jms.Connection;
import jakarta.jms.JMSException;
/**
* MQ Connection exit Event.
*
*
* This event is used by MQ client runtime only. This event is not delivered to the application.
*
*
* This event is generated by MQ client runtime and delivered to the EventHandler. When EventHandler receives this
* event, it calls the Connection Exception Listener, and then closes the handler.
*/
public class ConnectionExitEvent extends ConnectionEvent {
private static final long serialVersionUID = 6413143654738548999L;
// if there is any exception that caused the connection to be closed,
// it is set to this event.
private JMSException exception = null;
public static final String CONNECTION_EXIT = "E500";
/**
* Construct a connection closed event.
*
* @param conn the connection that the event is associated with. MQ may automatically reconnect to the same broker or a
* different broker depends on the client runtime configuration.
* @param evCode the event code that represents this event object.
* @param evMessage the event message that describes this event object.
* @param jmse the JMSException that caused this event.
*/
public ConnectionExitEvent(Connection conn, String evCode, String evMessage, JMSException jmse) {
super(conn, evCode, evMessage);
this.exception = jmse;
}
/**
* Get the JMSException that caused the connection to be closed.
*
* @return the JMSException that caused the connection to be closed. return null if no JMSException associated with this
* event. Such as connection closed caused by admin requested shutdown.
*/
public JMSException getJMSException() {
return exception;
}
}