[tor-bugs] #12868 [metrics-lib]: cyclic dependency

Tor Bug Tracker & Wiki blackhole at torproject.org
Sun Aug 24 19:50:03 UTC 2014


#12868: cyclic dependency
-----------------------------+--------------------------
     Reporter:  iwakeh       |      Owner:  karsten
         Type:  defect       |     Status:  needs_review
     Priority:  normal       |  Milestone:
    Component:  metrics-lib  |    Version:
   Resolution:               |   Keywords:
Actual Points:               |  Parent ID:
       Points:               |
-----------------------------+--------------------------
Changes (by iwakeh):

 * status:  new => needs_review


Comment:

 === Cycles are gone ===
 The three properties
 {{{
 onionoo.parser
 onionoo.property
 onionoo.downloader
 }}}

 contain the implementations for the DescriptoDownloader, DescriptorParser,
 and DescriptorReader implementations.

 The default implementations are hard coded
 {{{
 LOADER_DEFAULT =
 "org.torproject.descriptor.impl.DescriptorDownloaderImpl";
 PARSER_DEFAULT = "org.torproject.descriptor.impl.DescriptorParserImpl";
 READER_DEFAULT = "org.torproject.descriptor.impl.DescriptorReaderImpl";
 }}}

 The default is chosen, if no property was given.
 If class loading fails a runtime exception
 {{{ImplementationNotAccessibleException}}} is thrown.

 One questionable thing (concerning backwards compatibility) is that I
 moved the DescriptorParseException up from the {{{impl}}} package. I
 think, it should be added to the api or turned into a runtime exception.

 === build.xml ===
 I switched to java 7, but I also introduced a property for the java
 version. So it'll be easy to change.
 I also included a {{{clean}}} task.

 The patch is attached. Please review.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/12868#comment:7>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list