View Javadoc

    1   /***
    2    *
    3    * Copyright 2004 Hiram Chirino
    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  package org.codehaus.activemq.ra;
    19
    20  import javax.resource.spi.ConnectionRequestInfo;
    21  import java.io.Serializable;
    22
    23
    24  /***
    25   * @version $Revision: 1.6 $
    26   */
    27  public class ActiveMQConnectionRequestInfo implements ConnectionRequestInfo, Serializable, Cloneable {
    28
    29      private static final long serialVersionUID = -5754338187296859149L;
    30
    31      String userName;
    32      String password;
    33      String serverUrl;
    34      String clientid;
    35      boolean xa;
    36
    37
    38      public ActiveMQConnectionRequestInfo copy() {
    39          try {
    40              return (ActiveMQConnectionRequestInfo) clone();
    41          }
    42          catch (CloneNotSupportedException e) {
    43              throw new RuntimeException("Could not clone: ", e);
    44          }
    45      }
    46
    47
    48      /***
    49       * @see javax.resource.spi.ConnectionRequestInfo#hashCode()
    50       */
    51      public int hashCode() {
    52          int rc = 0;
    53          if (userName != null) {
    54              rc ^= userName.hashCode();
    55          }
    56          if (password != null) {
    57              rc ^= password.hashCode();
    58          }
    59          if (serverUrl != null) {
    60              rc ^= serverUrl.hashCode();
    61          }
    62          if (clientid != null) {
    63              rc ^= clientid.hashCode();
    64          }
    65          if (xa) {
    66              rc ^= 0xabcdef;
    67          }
    68          return rc;
    69      }
    70
    71
    72      /***
    73       * @see javax.resource.spi.ConnectionRequestInfo#equals(java.lang.Object)
    74       */
    75      public boolean equals(Object o) {
    76          if (o == null) {
    77              return false;
    78          }
    79          if (!getClass().equals(o.getClass())) {
    80              return false;
    81          }
    82          ActiveMQConnectionRequestInfo i = (ActiveMQConnectionRequestInfo) o;
    83          if (userName == null ^ i.userName == null) {
    84              return false;
    85          }
    86          if (userName != null && !userName.equals(i.userName)) {
    87              return false;
    88          }
    89          if (password == null ^ i.password == null) {
    90              return false;
    91          }
    92          if (password != null && !password.equals(i.password)) {
    93              return false;
    94          }
    95          if (serverUrl == null ^ i.serverUrl == null) {
    96              return false;
    97          }
    98          if (serverUrl != null && !serverUrl.equals(i.serverUrl)) {
    99              return false;
    100         }
    101         if (clientid == null ^ i.clientid == null) {
    102             return false;
    103         }
    104         if (clientid != null && !clientid.equals(i.clientid)) {
    105             return false;
    106         }
    107         if (xa != i.xa) {
    108             return false;
    109         }
    110         return true;
    111     }
    112
    113     /***
    114      * @return Returns the url.
    115      */
    116     public String getServerUrl() {
    117         return serverUrl;
    118     }
    119
    120     /***
    121      * @param url The url to set.
    122      */
    123     public void setServerUrl(String url) {
    124         this.serverUrl = url;
    125     }
    126
    127     /***
    128      * @return Returns the password.
    129      */
    130     public String getPassword() {
    131         return password;
    132     }
    133
    134     /***
    135      * @param password The password to set.
    136      */
    137     public void setPassword(String password) {
    138         this.password = password;
    139     }
    140
    141     /***
    142      * @return Returns the userid.
    143      */
    144     public String getUserName() {
    145         return userName;
    146     }
    147
    148     /***
    149      * @param userid The userid to set.
    150      */
    151     public void setUserName(String userid) {
    152         this.userName = userid;
    153     }
    154
    155     /***
    156      * @return Returns the clientid.
    157      */
    158     public String getClientid() {
    159         return clientid;
    160     }
    161
    162     /***
    163      * @param clientid The clientid to set.
    164      */
    165     public void setClientid(String clientid) {
    166         this.clientid = clientid;
    167     }
    168
    169     /***
    170      * @return Is an XA connection to be created?
    171      */
    172     public boolean isXa() {
    173         return xa;
    174     }
    175
    176     /***
    177      * Enables or disables whether XA connections should be created
    178      */
    179     public void setXa(boolean xa) {
    180         this.xa = xa;
    181     }
    182
    183 }