public class RelayDescriptorDownloader
extends java.lang.Object
RelayDescriptorParser
and downloads all missing
descriptors that have been published in the last 24 hours. Also
downloads all server and extra-info descriptors known to a directory
authority at most once a day.Constructor and Description |
---|
RelayDescriptorDownloader(RelayDescriptorParser rdp,
java.lang.String[] authorities,
java.lang.String[] authorityFingerprints,
boolean downloadCurrentConsensus,
boolean downloadCurrentMicrodescConsensus,
boolean downloadCurrentVotes,
boolean downloadMissingServerDescriptors,
boolean downloadMissingExtraInfos,
boolean downloadMissingMicrodescriptors,
boolean downloadAllServerDescriptors,
boolean downloadAllExtraInfos,
boolean downloadCompressed)
Initializes this class, including reading in missing descriptors from
stats/missing-relay-descriptors and the times when we
last downloaded all server and extra-info descriptors from
stats/last-downloaded-all-descriptors . |
Modifier and Type | Method and Description |
---|---|
void |
downloadDescriptors()
Downloads missing descriptors that we think might still be available
on the directory authorities as well as all server and extra-info
descriptors once per day.
|
void |
haveParsedConsensus(java.lang.String validAfter,
java.util.Set<java.lang.String> authorities,
java.util.Set<java.lang.String> serverDescriptors)
We have parsed a consensus.
|
void |
haveParsedExtraInfoDescriptor(java.lang.String published,
java.lang.String relayIdentity,
java.lang.String extraInfoDigest)
We have parsed an extra-info descriptor.
|
void |
haveParsedMicrodescConsensus(java.lang.String validAfter,
java.util.Set<java.lang.String> microdescriptors)
We have parsed a microdesc consensus.
|
void |
haveParsedMicrodescriptor(java.lang.String descriptorDigest)
We have parsed a microdescriptor.
|
void |
haveParsedServerDescriptor(java.lang.String published,
java.lang.String relayIdentity,
java.lang.String serverDescriptorDigest,
java.lang.String extraInfoDigest)
We have parsed a server descriptor.
|
void |
haveParsedVote(java.lang.String validAfter,
java.lang.String fingerprint,
java.util.Set<java.lang.String> serverDescriptors)
We have parsed a vote.
|
void |
writeFile()
Writes status files to disk and logs statistics about downloading
relay descriptors in this execution.
|
public RelayDescriptorDownloader(RelayDescriptorParser rdp, java.lang.String[] authorities, java.lang.String[] authorityFingerprints, boolean downloadCurrentConsensus, boolean downloadCurrentMicrodescConsensus, boolean downloadCurrentVotes, boolean downloadMissingServerDescriptors, boolean downloadMissingExtraInfos, boolean downloadMissingMicrodescriptors, boolean downloadAllServerDescriptors, boolean downloadAllExtraInfos, boolean downloadCompressed)
stats/missing-relay-descriptors
and the times when we
last downloaded all server and extra-info descriptors from
stats/last-downloaded-all-descriptors
.public void haveParsedConsensus(java.lang.String validAfter, java.util.Set<java.lang.String> authorities, java.util.Set<java.lang.String> serverDescriptors)
authorities
and
the serverDescriptors
which are in the format
"<published>,<relayid>,<descid>" to that list.public void haveParsedMicrodescConsensus(java.lang.String validAfter, java.util.Set<java.lang.String> microdescriptors)
microdescriptors
which are in the
format "<validafter>,<relayid>,<descid>" to that list.public void haveParsedVote(java.lang.String validAfter, java.lang.String fingerprint, java.util.Set<java.lang.String> serverDescriptors)
serverDescriptors
which are in the format
"<published>,<relayid>,<descid>" to that list.public void haveParsedServerDescriptor(java.lang.String published, java.lang.String relayIdentity, java.lang.String serverDescriptorDigest, java.lang.String extraInfoDigest)
public void haveParsedExtraInfoDescriptor(java.lang.String published, java.lang.String relayIdentity, java.lang.String extraInfoDigest)
public void haveParsedMicrodescriptor(java.lang.String descriptorDigest)
public void downloadDescriptors()
public void writeFile()