public class RouterAddress extends DataStructureImpl
Modifier and Type | Field and Description |
---|---|
static String |
PROP_HOST |
static String |
PROP_PORT |
Constructor and Description |
---|
RouterAddress() |
RouterAddress(String style,
OrderedProperties options,
int cost)
For efficiency when created by a Transport.
|
Modifier and Type | Method and Description |
---|---|
boolean |
deepEquals(RouterAddress addr)
Everything, including Transport, host, port, options, and cost
|
boolean |
equals(Object object)
Transport, host, and port only.
|
int |
getCost()
Retrieve the weighted cost of this address, relative to other methods of
contacting this router.
|
Date |
getExpiration()
Deprecated.
unused for now
|
long |
getExpirationTime()
Deprecated.
unused for now
|
String |
getHost()
Convenience, same as getOption("host").
|
byte[] |
getIP()
Caching version of InetAddress.getByName(getOption("host")).getAddress(), which is slow.
|
String |
getOption(String opt) |
Properties |
getOptions()
Deprecated.
use getOptionsMap()
|
Map<Object,Object> |
getOptionsMap()
Retrieve the transport specific options necessary for communication
|
int |
getPort()
Caching version of Integer.parseInt(getOption("port"))
Caches valid ports 1-65535 only.
|
String |
getTransportStyle()
Retrieve the type of transport that must be used to communicate on this address.
|
int |
hashCode()
Just use a few items for speed (expiration is always null).
|
void |
readBytes(InputStream in)
As of 0.9.3, expiration MUST be all zeros as it is ignored on
readin and the signature will fail.
|
void |
setCost(int cost)
Configure the weighted cost of using the address.
|
void |
setExpiration(Date expiration)
Deprecated.
unused for now
|
void |
setOptions(Properties options)
Deprecated.
unused, use 3-arg constructor
|
void |
setTransportStyle(String transportStyle)
Deprecated.
unused, use 3-arg constructor
|
String |
toString()
This is used on peers.jsp so sort options so it looks better.
|
void |
writeBytes(OutputStream out)
As of 0.9.3, expiration MUST be all zeros as it is ignored on
readin and the signature will fail.
|
calculateHash, fromBase64, fromByteArray, read, toBase64, toByteArray
public static final String PROP_HOST
public static final String PROP_PORT
public RouterAddress()
public RouterAddress(String style, OrderedProperties options, int cost)
options
- not copied; do not reuse or modifycost
- 0-255public int getCost()
public void setCost(int cost)
@Deprecated public Date getExpiration()
@Deprecated public long getExpirationTime()
@Deprecated public void setExpiration(Date expiration)
public String getTransportStyle()
@Deprecated public void setTransportStyle(String transportStyle)
IllegalStateException
- if was already set@Deprecated public Properties getOptions()
public Map<Object,Object> getOptionsMap()
@Deprecated public void setOptions(Properties options)
options
- non-nullIllegalStateException
- if was already setpublic byte[] getIP()
public String getHost()
public int getPort()
public void readBytes(InputStream in) throws DataFormatException, IOException
in
- stream to read fromIllegalStateException
- if was already read inDataFormatException
- if the data is improperly formattedIOException
- if there was a problem reading the streampublic void writeBytes(OutputStream out) throws DataFormatException, IOException
out
- stream to write toDataFormatException
- if the data was incomplete or not yet ready to be writtenIOException
- if there was a problem writing to the streampublic boolean equals(Object object)
public boolean deepEquals(RouterAddress addr)
addr
- may be nullpublic int hashCode()