[tor-bugs] #4439 [Metrics Utilities]: Develop a Java/Python API that wraps relay descriptor sources and provides unified access to them
Tor Bug Tracker & Wiki
torproject-admin at torproject.org
Mon Dec 5 07:31:15 UTC 2011
#4439: Develop a Java/Python API that wraps relay descriptor sources and provides
unified access to them
-------------------------------+--------------------------------------------
Reporter: karsten | Owner: karsten
Type: task | Status: new
Priority: normal | Milestone:
Component: Metrics Utilities | Version:
Keywords: | Parent:
Points: | Actualpoints:
-------------------------------+--------------------------------------------
Comment(by karsten):
I finished an initial, non-functional version of the Java API this
weekend. I'd love to hear your thoughts on the design, atagar.
From the README:
{{{
DescripTor is a Java API that makes various Tor descriptor types available
for statistical analysis and for building services and applications.
The descriptor types supported by DescripTor include relay and bridge
descriptors which are part of Tor's directory protocol as well as Torperf
data files, GetTor statistics files, and TorDNSEL's exit lists. Access to
these descriptors is unified to facilitate access to publicly available
data about the Tor network.
This API is designed for Java programs that process Tor descriptors in
batches. A Java program using this API first sets up a descriptor source
by defining where to find descriptors and which descriptors it considers
relevant. The descriptor source then makes the descriptors available in a
descriptor store. The program can then query the descriptor store for the
contained descriptors. Changes to the descriptor sources after
descriptors are made available in the descriptor store will not be
noticed. This simple programming model was designed for periodically
running, batch-processing applications and not for continuously running
applications that rely on learning about changes to an underlying
descriptor source.
}}}
I could imagine that a good order to read the API is to start with the
example applications in `org.torproject.descriptor.example` and looking at
the relevant interfaces in `org.torproject.descriptor` whenever they're
referenced from the examples.
I'm attaching the code tarball to this ticket. Once there's a Git
repository, I'll move the code there. But what's a good name for this API
and the repository? I came up with "DescripTor," but maybe there's
something better? (I fear the English language may run out of words
ending in -tor...)
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/4439#comment:8>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list