Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: net/jxta/ext/config/PublicAddress.java


1   /*
2    *  Copyright (c) 2001 Sun Microsystems, Inc.  All rights
3    *  reserved.
4    *
5    *  Redistribution and use in source and binary forms, with or without
6    *  modification, are permitted provided that the following conditions
7    *  are met:
8    *
9    *  1. Redistributions of source code must retain the above copyright
10   *  notice, this list of conditions and the following disclaimer.
11   *
12   *  2. Redistributions in binary form must reproduce the above copyright
13   *  notice, this list of conditions and the following disclaimer in
14   *  the documentation and/or other materials provided with the
15   *  distribution.
16   *
17   *  3. The end-user documentation included with the redistribution,
18   *  if any, must include the following acknowledgment:
19   *  "This product includes software developed by the
20   *  Sun Microsystems, Inc. for Project JXTA."
21   *  Alternately, this acknowledgment may appear in the software itself,
22   *  if and wherever such third-party acknowledgments normally appear.
23   *
24   *  4. The names "Sun", "Sun Microsystems, Inc.", "JXTA" and "Project JXTA"
25   *  must not be used to endorse or promote products derived from this
26   *  software without prior written permission. For written
27   *  permission, please contact Project JXTA at http://www.jxta.org.
28   *
29   *  5. Products derived from this software may not be called "JXTA",
30   *  nor may "JXTA" appear in their name, without prior written
31   *  permission of Sun.
32   *
33   *  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
34   *  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
35   *  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
36   *  DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
37   *  ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
38   *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
39   *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
40   *  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
41   *  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
42   *  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
43   *  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
44   *  SUCH DAMAGE.
45   *  ====================================================================
46   *
47   *  This software consists of voluntary contributions made by many
48   *  individuals on behalf of Project JXTA.  For more
49   *  information on Project JXTA, please see
50   *  <http://www.jxta.org/>.
51   *
52   *  This license is based on the BSD license adopted by the Apache Foundation.
53   *
54   *  $Id: PublicAddress.java,v 1.6 2004/05/18 22:00:48 gonzo Exp $
55   */
56  package net.jxta.ext.config;
57  
58  /**
59   *  Public address container.
60   *
61   *@author     james todd [gonzo at jxta dot org]
62   *@created    November 13, 2003
63   */
64  public class PublicAddress
65  extends Address {
66  
67      private boolean isExclusive = false;
68  
69      /**
70       *  Constructor for the PublicAddress object
71       */
72      public PublicAddress() {
73          this(null);
74      }
75      
76      public PublicAddress(PublicAddress pa) {
77          super(pa);
78        
79          setExclusive(pa != null ? pa.isExclusive() : false);
80      }
81  
82      /**
83       *  Gets the exclusive attribute of the PublicAddress object
84       *
85       *@return    The exclusive value
86       */
87      public boolean isExclusive() {
88          return this.isExclusive;
89      }
90  
91  
92      /**
93       *  Sets the exclusive attribute of the PublicAddress object
94       *
95       *@param  isExclusive  The new exclusive value
96       */
97      public void setExclusive(boolean isExclusive) {
98          this.isExclusive = isExclusive;
99      }
100 
101 
102     /**
103      *  Description of the Method
104      *
105      *@param  o  Description of the Parameter
106      *@return    Description of the Return Value
107      */
108     public boolean equals(Object o) {
109         return (o instanceof PublicAddress &&
110                 super.equals(o) &&
111                 ((PublicAddress)o).isExclusive() == isExclusive());
112     }
113     
114     public int hashCode() {
115         return super.hashCode() ^ (isExclusive() ? 1 : 0);
116     }
117 }
118