| /* |
| * The contents of this file are subject to the terms |
| * of the Common Development and Distribution License |
| * (the License). You may not use this file except in |
| * compliance with the License. |
| * |
| * You can obtain a copy of the license at |
| * https://glassfish.dev.java.net/public/CDDLv1.0.html or |
| * glassfish/bootstrap/legal/CDDLv1.0.txt. |
| * See the License for the specific language governing |
| * permissions and limitations under the License. |
| * |
| * When distributing Covered Code, include this CDDL |
| * Header Notice in each file and include the License file |
| * at glassfish/bootstrap/legal/CDDLv1.0.txt. |
| * If applicable, add the following below the CDDL Header, |
| * with the fields enclosed by brackets [] replaced by |
| * you own identifying information: |
| * "Portions Copyrighted [year] [name of copyright owner]" |
| * |
| * Copyright 2006 Sun Microsystems, Inc. All rights reserved. |
| */ |
| |
| |
| package javax.jms; |
| |
| /** A <CODE>ServerSessionPool</CODE> object is an object implemented by an |
| * application server to provide a pool of <CODE>ServerSession</CODE> objects |
| * for processing the messages of a <CODE>ConnectionConsumer</CODE> (optional). |
| * |
| * <P>Its only method is <CODE>getServerSession</CODE>. The JMS API does not |
| * architect how the pool is implemented. It could be a static pool of |
| * <CODE>ServerSession</CODE> objects, or it could use a sophisticated |
| * algorithm to dynamically create <CODE>ServerSession</CODE> objects as |
| * needed. |
| * |
| * <P>If the <CODE>ServerSessionPool</CODE> is out of |
| * <CODE>ServerSession</CODE> objects, the <CODE>getServerSession</CODE> call |
| * may block. If a <CODE>ConnectionConsumer</CODE> is blocked, it cannot |
| * deliver new messages until a <CODE>ServerSession</CODE> is |
| * eventually returned. |
| * |
| * @version 1.0 - 9 March 1998 |
| * @author Mark Hapner |
| * @author Rich Burridge |
| * |
| * @see javax.jms.ServerSession |
| */ |
| |
| public interface ServerSessionPool { |
| |
| /** Return a server session from the pool. |
| * |
| * @return a server session from the pool |
| * |
| * @exception JMSException if an application server fails to |
| * return a <CODE>ServerSession</CODE> out of its |
| * server session pool. |
| */ |
| |
| ServerSession |
| getServerSession() throws JMSException; |
| } |