public override void Open (AddressEntry entry)
{
string host, portStr, family;
int port;
if (!entry.Properties.TryGetValue ("host", out host))
host = "localhost";
if (!entry.Properties.TryGetValue ("port", out portStr))
throw new Exception ("No port specified");
if (!Int32.TryParse (portStr, out port))
throw new Exception ("Invalid port: \"" + port + "\"");
if (!entry.Properties.TryGetValue ("family", out family))
family = null;
Open (host, port, family);
}