001 /** 002 * 003 * Copyright 2004 Protique Ltd 004 * 005 * Licensed under the Apache License, Version 2.0 (the "License"); 006 * you may not use this file except in compliance with the License. 007 * You may obtain a copy of the License at 008 * 009 * http://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 * 017 **/ 018 019 package org.activemq.service; 020 021 import javax.jms.JMSException; 022 023 /** 024 * <p><code>Service</code> represents some service of some kind with a simple start/stop lifecycle.</p> 025 * <b>Note</b> that usually once a service has been stopped it should be discarded and a new service 026 * instance created again. 027 * 028 * @version $Revision: 1.1.1.1 $ 029 */ 030 public interface Service { 031 032 /** 033 * Called to start the service 034 * 035 * @throws JMSException 036 */ 037 public void start() throws JMSException; 038 039 /** 040 * Called to shutdown the service 041 * 042 * @throws JMSException 043 */ 044 public void stop() throws JMSException; 045 046 }