diff options
author | Tarun Gupta <tarun1995gupta@gmail.com> | 2015-07-27 15:01:45 (GMT) |
---|---|---|
committer | Alex Clayton <alex.clayton@isode.com> | 2016-01-12 11:31:04 (GMT) |
commit | b4cf2bb8d7b69d95b4a10d610ad259998d2aee5b (patch) | |
tree | b942953236a7c712eed6ce4a5f261019691c0dca /src/com/isode/stroke/network/HostAddress.java | |
parent | c168fcd0c2468ec939b8d164175e9c5776a63147 (diff) | |
download | stroke-b4cf2bb8d7b69d95b4a10d610ad259998d2aee5b.zip stroke-b4cf2bb8d7b69d95b4a10d610ad259998d2aee5b.tar.bz2 |
Make Networks equivalent with Swiften.
Adds ProxyProviders, DomainNameResolvers and DummyConnection.
License:
This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
Test-Information:
Tests added for ChainedConnector, Connector and HostAddress.
Test also added for ComponentConnector, which needed bits of Network.
Five assertions are commented in ConnectorTest, which fails and will be updated after review.
Change-Id: I8a62841eb2f9c109bc3a94865b7a003b33493e11
Diffstat (limited to 'src/com/isode/stroke/network/HostAddress.java')
-rw-r--r-- | src/com/isode/stroke/network/HostAddress.java | 36 |
1 files changed, 32 insertions, 4 deletions
diff --git a/src/com/isode/stroke/network/HostAddress.java b/src/com/isode/stroke/network/HostAddress.java index c1b3600..a8eea1b 100644 --- a/src/com/isode/stroke/network/HostAddress.java +++ b/src/com/isode/stroke/network/HostAddress.java @@ -10,6 +10,7 @@ package com.isode.stroke.network; import java.net.InetAddress; +import java.net.UnknownHostException; public class HostAddress { @@ -17,12 +18,39 @@ public class HostAddress { address_ = null; } + public HostAddress(String address) { + try { + address_ = InetAddress.getByName(address); + } + catch (UnknownHostException e) { + address_ = null; + } + } + public HostAddress(InetAddress address) { address_ = address; } - /* public HostAddress(const String&); - public HostAddress(const unsigned char* address, int length); - public HostAddress(const boost::asio::ip::address& address);*/ + + public HostAddress(final char[] address, int length) { + try { + assert(length == 4 || length == 16); + byte[] data = new byte[length]; + if (length == 4) { + for (int i = 0; i < length; ++i) { + data[i] = (byte)address[i]; + } + } + else { + for (int i = 0; i < length; ++i) { + data[i] = (byte)address[i]; + } + } + address_ = InetAddress.getByAddress(data); + } catch (UnknownHostException e) { + address_ = null; + } + } + @Override public String toString() { @@ -57,5 +85,5 @@ public class HostAddress { return address_; } - private final InetAddress address_; + private InetAddress address_; } |