Overview Package Class Use Source Tree Index Deprecated About
GNU Classpath (0.95)
Frames | No Frames

Source for java.net.Proxy

 1:  /* Proxy.java -- Represends a proxy for a network connection
 2:  Copyright (C) 2006, 2007 Free Software Foundation, Inc.
 3: 
 4: This file is part of GNU Classpath.
 5: 
 6: GNU Classpath is free software; you can redistribute it and/or modify
 7: it under the terms of the GNU General Public License as published by
 8: the Free Software Foundation; either version 2, or (at your option)
 9: any later version.
 10: 
 11: GNU Classpath is distributed in the hope that it will be useful, but
 12: WITHOUT ANY WARRANTY; without even the implied warranty of
 13: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 14: General Public License for more details.
 15: 
 16: You should have received a copy of the GNU General Public License
 17: along with GNU Classpath; see the file COPYING. If not, write to the
 18: Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 19: 02110-1301 USA.
 20: 
 21: Linking this library statically or dynamically with other modules is
 22: making a combined work based on this library. Thus, the terms and
 23: conditions of the GNU General Public License cover the whole
 24: combination.
 25: 
 26: As a special exception, the copyright holders of this library give you
 27: permission to link this library with independent modules to produce an
 28: executable, regardless of the license terms of these independent
 29: modules, and to copy and distribute the resulting executable under
 30: terms of your choice, provided that you also meet, for each linked
 31: independent module, the terms and conditions of the license of that
 32: module. An independent module is a module which is not derived from
 33: or based on this library. If you modify this library, you may extend
 34: this exception to your version of the library, but you are not
 35: obligated to do so. If you do not wish to do so, delete this
 36: exception statement from your version. */
 37: 
 38:  package java.net;
 39: 
 40: 
 41:  /**
 42:  * Defines a proxy setting. This setting contains a type (https, socks,
 43:  * direct) and a socket address.
 44:  * 
 45:  * @since 1.5
 46:  */
 47:  public class Proxy
 48: {
 49:  /**
 50:  * Represents the proxy type.
 51:  */
 52:  public enum Type 
 53:  { 
 54:  DIRECT, HTTP, SOCKS;
 55: 
 56:  /**
 57:  * For compatability with Sun's JDK
 58:  */
 59:  private static final long serialVersionUID = -2231209257930100533L;
 60:  }
 61: 
 62:  public static final Proxy NO_PROXY = new Proxy(Type.DIRECT, null);
 63: 
 64:  private Type type;
 65:  private SocketAddress address;
 66: 
 67:  /**
 68:  * Creates a new <code>Proxy</code> object.
 69:  *
 70:  * @param type The type for this proxy
 71:  * @param address The address of this proxy
 72:  */
 73:  public Proxy(Type type, SocketAddress address)
 74:  {
 75:  this.type = type;
 76:  this.address = address;
 77:  }
 78: 
 79:  /**
 80:  * Returns the socket address for this proxy object.
 81:  *
 82:  * @return the socket address
 83:  */
 84:  public SocketAddress address()
 85:  {
 86:  return address;
 87:  }
 88: 
 89:  /**
 90:  * Returns the of this proxy instance.
 91:  *
 92:  * @return the type
 93:  *
 94:  * @see Type
 95:  */
 96:  public Type type()
 97:  {
 98:  return type;
 99:  }
 100: 
 101:  /**
 102:  * Compares the given object with this object.
 103:  *
 104:  * @return <code>true</code> if both objects or equals,
 105:  * <code>false</code> otherwise.
 106:  */
 107:  public final boolean equals(Object obj)
 108:  {
 109:  if (! (obj instanceof Proxy))
 110:  return false;
 111: 
 112:  Proxy tmp = (Proxy) obj;
 113: 
 114:  return (type.equals(tmp.type)
 115:  && (address == null ? tmp.address == null
 116:  : address.equals(tmp.address)));
 117:  }
 118: 
 119:  /**
 120:  * Returns the hashcode for this <code>Proxy</code> object.
 121:  *
 122:  * @return the hashcode
 123:  */
 124:  public final int hashCode()
 125:  {
 126:  return type.hashCode() ^ (address == null ? 0 : address.hashCode());
 127:  }
 128: 
 129:  /**
 130:  * Returns a string representation of this <code>Proxy</code> object.
 131:  *
 132:  * @return the string
 133:  */
 134:  public String toString()
 135:  {
 136:  return type.toString() + (address == null ? ""
 137:  : (":" + address.toString()));
 138:  }
 139: }
Overview Package Class Use Source Tree Index Deprecated About
GNU Classpath (0.95)

AltStyle によって変換されたページ (->オリジナル) /