View Javadoc

    1   /***
    2    *
    3    * Copyright 2004 Protique Ltd
    4    *
    5    * Licensed under the Apache License, Version 2.0 (the "License");
    6    * you may not use this file except in compliance with the License.
    7    * You may obtain a copy of the License at
    8    *
    9    * http://www.apache.org/licenses/LICENSE-2.0
    10   *
    11   * Unless required by applicable law or agreed to in writing, software
    12   * distributed under the License is distributed on an "AS IS" BASIS,
    13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    14   * See the License for the specific language governing permissions and
    15   * limitations under the License.
    16   *
    17   **/
    18
    19  package org.codehaus.activemq.service.boundedvm;
    20
    21
    22  import javax.jms.JMSException;
    23  import org.codehaus.activemq.filter.Filter;
    24  import org.codehaus.activemq.message.ActiveMQMessage;
    25  import org.codehaus.activemq.message.ConsumerInfo;
    26
    27  /***
    28   * A holder for Transient  consumer info and message routing
    29   *
    30   * @version $Revision: 1.3 $
    31   */
    32  public abstract class TransientSubscription  {
    33      protected Filter filter;
    34      protected ConsumerInfo consumerInfo;
    35
    36
    37      /***
    38       * Construct the TransientSubscription
    39       * @param filter
    40       * @param info
    41       */
    42
    43      public TransientSubscription(Filter filter,ConsumerInfo info){
    44          this.filter = filter;
    45          this.consumerInfo = info;
    46      }
    47
    48
    49      /***
    50       * determines if the Subscription is interested in the message
    51       *
    52       * @param message
    53       * @return true if this Subscription will accept the message
    54       * @throws JMSException
    55       */
    56      public abstract boolean isTarget(ActiveMQMessage message) throws JMSException;
    57
    58      /***
    59       * @return Returns the consumerInfo.
    60       */
    61      public ConsumerInfo getConsumerInfo() {
    62          return consumerInfo;
    63      }
    64      /***
    65       * @param consumerInfo The consumerInfo to set.
    66       */
    67      public void setConsumerInfo(ConsumerInfo consumerInfo) {
    68          this.consumerInfo = consumerInfo;
    69      }
    70      /***
    71       * @return Returns the filter.
    72       */
    73      public Filter getFilter() {
    74          return filter;
    75      }
    76      /***
    77       * @param filter The filter to set.
    78       */
    79      public void setFilter(Filter filter) {
    80          this.filter = filter;
    81      }
    82
    83      /***
    84       * close the subscription
    85       */
    86      public void close(){
    87      }
    88  }