1
2
3
4
5
6
7
8
9
10
11
12
13
14 package org.eclipse.jetty.client;
15
16 import java.net.InetSocketAddress;
17
18
19
20
21 public class Address
22 {
23 private final String host;
24 private final int port;
25
26 public static Address from(String hostAndPort)
27 {
28 String host;
29 int port;
30 int colon = hostAndPort.indexOf(':');
31 if (colon >= 0)
32 {
33 host = hostAndPort.substring(0, colon);
34 port = Integer.parseInt(hostAndPort.substring(colon + 1));
35 }
36 else
37 {
38 host = hostAndPort;
39 port = 0;
40 }
41 return new Address(host, port);
42 }
43
44 public Address(String host, int port)
45 {
46 this.host = host.trim();
47 this.port = port;
48 }
49
50 public boolean equals(Object obj)
51 {
52 if (this == obj) return true;
53 if (obj == null || getClass() != obj.getClass()) return false;
54 Address that = (Address)obj;
55 if (!host.equals(that.host)) return false;
56 return port == that.port;
57 }
58
59 public int hashCode()
60 {
61 int result = host.hashCode();
62 result = 31 * result + port;
63 return result;
64 }
65
66 public String getHost()
67 {
68 return host;
69 }
70
71 public int getPort()
72 {
73 return port;
74 }
75
76 public InetSocketAddress toSocketAddress()
77 {
78 return new InetSocketAddress(getHost(), getPort());
79 }
80
81 @Override
82 public String toString()
83 {
84 return host + ":" + port;
85 }
86 }