001/* 002 * Copyright 2009 Red Hat, Inc. 003 * Red Hat licenses this file to you under the Apache License, version 004 * 2.0 (the "License"); you may not use this file except in compliance 005 * with the License. You may obtain a copy of the License at 006 * http://www.apache.org/licenses/LICENSE-2.0 007 * Unless required by applicable law or agreed to in writing, software 008 * distributed under the License is distributed on an "AS IS" BASIS, 009 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 010 * implied. See the License for the specific language governing 011 * permissions and limitations under the License. 012 */ 013 014package org.hornetq.api.core.client; 015 016import org.hornetq.api.core.HornetQException; 017import org.hornetq.core.remoting.FailureListener; 018 019/** 020 * A SessionFailureListener notifies the client when a failure occurred on the session. 021 * 022 * @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a> 023 */ 024public interface SessionFailureListener extends FailureListener 025{ 026 /** 027 * Notifies that a connection has failed due to the specified exception. 028 * <br> 029 * This method is called <em>before the session attempts to reconnect/failover</em>. 030 * 031 * @param exception exception which has caused the connection to fail 032 */ 033 void beforeReconnect(HornetQException exception); 034}