Serializable
, DataStructure
public class RouterAddress extends DataStructureImpl
Modifier and Type | Field | Description |
---|---|---|
static String |
PROP_HOST |
|
static String |
PROP_PORT |
Constructor | Description |
---|---|
RouterAddress() |
|
RouterAddress(String style,
OrderedProperties options,
int cost) |
For efficiency when created by a Transport.
|
Modifier and Type | Method | 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()