ops4j/org.ops4j.pax.logging — pull request #8 by chrisdolan (2011-10-26 04:20:06+00:00)
Title: BufferingLog FQCN support and a Logback implementation

Sorry to put to commits in the same pull request... I can break them up if needed.

1) FQCN for BufferingLog - this one is simple. Early log messages (before the pax-logging-service is activated) were being annotated with the wrong origin class.

2) Logback support - this one is big and has a few details that need consideration.
a) it includes two monkey-patched Logback classes to fix some places where Logback was not flexible enough to hook in OSGi details. I've submitted both patches to Logback and one has been accepted.
b) I duplicated the four SPI classes. Surely there's a better way, but it's beyond my Maven-fu to copy them from pax-logging-server dynamically. Maybe they should really be in pax-logging-api?
c) my unit tests use EasyMock instead of JMock. Hopefully not a big deal?
d) my code uses FindBugs @NonNull annotations. These are not retained to runtime, so hopefully not a problem?
e) I've copied and modified a handful of classes in org.ops4j.pax.logging.service.internal. Perhaps these should be refactored into a shared service base package to reduce code duplication?

Thanks for your consideration. A very similar version of this code has been running at my employer for the last 3 months (I cleaned up and changed package names for this submission)