Skip to content
Permalink

Comparing changes

This is a direct comparison between two commits made in this repository or its related repositories. View the default comparison for this range or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: scijava/scijava-common
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: ff9f379c3764f79156722c1468ea6f75854b5eb3
Choose a base ref
..
head repository: scijava/scijava-common
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: c88632aafc8108572af61c14c8bbdf2d20c0d3c5
Choose a head ref
Showing with 2,556 additions and 425 deletions.
  1. +13 −5 .travis.yml
  2. +2 −9 .travis/build.sh
  3. +0 −2 .travis/notify.sh
  4. +0 −14 .travis/settings.xml
  5. BIN .travis/signingkey.asc.enc
  6. +2 −2 pom.xml
  7. +1 −2 src/main/java/org/scijava/app/SciJavaApp.java
  8. +1 −0 src/main/java/org/scijava/console/ConsoleService.java
  9. +6 −19 src/main/java/org/scijava/console/DefaultConsoleService.java
  10. +10 −30 src/main/java/org/scijava/console/MultiOutputStream.java
  11. +162 −0 src/main/java/org/scijava/convert/FileListConverters.java
  12. +1 −2 src/main/java/org/scijava/display/ActiveDisplayPreprocessor.java
  13. +1 −2 src/main/java/org/scijava/display/DisplayPostprocessor.java
  14. +82 −190 src/main/java/org/scijava/log/AbstractLogService.java
  15. +67 −0 src/main/java/org/scijava/log/CallingClassUtils.java
  16. +109 −0 src/main/java/org/scijava/log/DefaultLogger.java
  17. +0 −4 src/main/java/org/scijava/log/DefaultUncaughtExceptionHandler.java
  18. +44 −0 src/main/java/org/scijava/log/IgnoreAsCallingClass.java
  19. +96 −0 src/main/java/org/scijava/log/LogLevel.java
  20. +49 −0 src/main/java/org/scijava/log/LogListener.java
  21. +149 −0 src/main/java/org/scijava/log/LogMessage.java
  22. +44 −52 src/main/java/org/scijava/log/LogService.java
  23. +145 −0 src/main/java/org/scijava/log/LogSource.java
  24. +1 −0 src/main/java/org/scijava/log/Logged.java
  25. +220 −0 src/main/java/org/scijava/log/Logger.java
  26. +10 −24 src/main/java/org/scijava/log/StderrLogService.java
  27. +1 −3 src/main/java/org/scijava/module/DefaultModuleService.java
  28. +1 −2 src/main/java/org/scijava/module/process/GatewayPreprocessor.java
  29. +78 −0 src/main/java/org/scijava/module/process/LoggerPreprocessor.java
  30. +1 −1 src/main/java/org/scijava/module/process/SaveInputsPreprocessor.java
  31. +2 −3 src/main/java/org/scijava/module/process/ServicePreprocessor.java
  32. +1 −2 src/main/java/org/scijava/module/process/ValidityPreprocessor.java
  33. +3 −1 src/main/java/org/scijava/object/LazyObjects.java
  34. +1 −2 src/main/java/org/scijava/platform/DefaultPlatform.java
  35. +4 −4 src/main/java/org/scijava/ui/DefaultUIService.java
  36. +34 −1 src/main/java/org/scijava/ui/FileListPreprocessor.java
  37. +2 −2 src/main/java/org/scijava/ui/UIService.java
  38. +7 −3 src/main/java/org/scijava/ui/UserInterface.java
  39. +11 −0 src/main/java/org/scijava/util/StringUtils.java
  40. +53 −0 src/main/java/org/scijava/util/VersionUtils.java
  41. +51 −1 src/main/java/org/scijava/widget/FileListWidget.java
  42. +1 −2 src/test/java/org/scijava/command/CommandModuleTest.java
  43. +103 −0 src/test/java/org/scijava/convert/FileListConverterTest.java
  44. +68 −0 src/test/java/org/scijava/log/CallingClassUtilsTest.java
  45. +108 −0 src/test/java/org/scijava/log/DefaultLoggerTest.java
  46. +86 −0 src/test/java/org/scijava/log/LogMessageTest.java
  47. +236 −39 src/test/java/org/scijava/log/LogServiceTest.java
  48. +118 −0 src/test/java/org/scijava/log/LogSourceTest.java
  49. +78 −0 src/test/java/org/scijava/log/StderrLogServiceTest.java
  50. +63 −0 src/test/java/org/scijava/log/TestLogListener.java
  51. +116 −0 src/test/java/org/scijava/module/process/LoggerPreprocessorTest.java
  52. +1 −2 src/test/java/org/scijava/plugin/PluginInfoTest.java
  53. +16 −0 src/test/java/org/scijava/util/StringUtilsTest.java
  54. +97 −0 src/test/java/org/scijava/util/VersionUtilsTest.java
18 changes: 13 additions & 5 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,20 @@
language: java
jdk: oraclejdk8
branches:
only: master
only:
- master
- "/.*-[0-9]+\\..*/"
install: true
script: ".travis/build.sh"
after_success: ".travis/notify.sh Travis-Success"
after_failure: ".travis/notify.sh Travis-Failure"
cache:
directories:
- "~/.m2/repository"
env:
global:
- secure: l5k7gyNsC7cS1QcqPcSzxQeueZmakAvYRDBevIGA61yDjL/cK4Pyy/7yNz4CHo+mgHaHul9uLIQuZvQdeAs4FqHi37brY1//emVI4BiUow+XDvge7DttDJ+JjBlGsZrxX0YKtnn/V83WO23RtGGQUZ8PBwpNWYB52stDpizhqqg=
- secure: Hs3V7J4BmasiXNWOBzFuxYcPeImFYo8Ze3UWqg85gRa1YxKNbnJLGPjQoIcUxXQU34Fa0qvvWcPUyEjne+nAbWtAVrq/xRSVj5Fnen+UmH3fjV1aR6Rsr56gkdqlaeIfcxaaeGTeguHQB1LSNCIvcF5s8f6J+37l65UUxGsL3+4=
- secure: Xkwu2u/v0+kBqW2Mt80FpMS+2NRMnfRaZ6ptiEW44sViKkaENnJegmYVjdSm9RAwAJx9DEp6KYTLH4Hh56JbWp6s8qGcxm2vCbAWBE6ZesOj3oTvv/T4lucxarocZ8hK9NqfY9iCePjl8R10UDePThZgWBFidUQjvPbH+LcXo9g=
- secure: Jgj204N4hKv+7sUrXGtXMvUoXYuHAerhUvwbHsm0BJFpzUSyHP5QWJH2tHvCUL9Yb4VhNEjc46RLFVmiIXynJwAdAWJodT/VEnOTb5Cf7+0UHK4qCyjyjVHiWq1cf+R8Lr9fuKRqxUAdz9Hw6g0Yt23TX8kCa+wQW9lwchn0IG8=
- secure: RuGzuPrxyvBRJwsCpSJ10p9PdP2Hzc9lxb29L//Y/Fkc3bJwNMlNa0ST83oGNHJapYc4dWuFk22Ooy/2YioNgsVvR4n5MAslqXQXSY0VDle1Nbf1pudAlPU+quaiYxcAyyysjUUtqc5wADVgpkrDA7GJzAuCOWb4aSwiiIn6u4A=
- secure: bnsjVlj9MBJto8ahZdMwGpVPjZeyF7r5tZh+t+NhDuZsP0WMlURzGZ9/lJOO4quklgiWCyeVDB5uvDvsdG9BReBe5Q8Q6WZyxhxYtP2iLV0zRWSWsGKk0stGcrmJKk8wbicIJdXD8suiP+2Li5GfxTge/hkhL4CL0OOr6b1JqrM=
before_install:
- openssl aes-256-cbc -K $encrypted_d2fbfc37eea9_key -iv $encrypted_d2fbfc37eea9_iv
-in .travis/signingkey.asc.enc -out .travis/signingkey.asc -d
11 changes: 2 additions & 9 deletions .travis/build.sh
Original file line number Diff line number Diff line change
@@ -1,10 +1,3 @@
#!/bin/sh
dir="$(dirname "$0")"
if [ "$TRAVIS_SECURE_ENV_VARS" = true \
-a "$TRAVIS_PULL_REQUEST" = false \
-a "$TRAVIS_BRANCH" = master ]
then
mvn -Pdeploy-to-imagej deploy --settings "$dir/settings.xml"
else
mvn install
fi
curl -fsLO https://raw.githubusercontent.com/scijava/scijava-scripts/master/travis-build.sh
sh travis-build.sh
2 changes: 0 additions & 2 deletions .travis/notify.sh

This file was deleted.

14 changes: 0 additions & 14 deletions .travis/settings.xml

This file was deleted.

Binary file added .travis/signingkey.asc.enc
Binary file not shown.
4 changes: 2 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
@@ -5,12 +5,12 @@
<parent>
<groupId>org.scijava</groupId>
<artifactId>pom-scijava</artifactId>
<version>13.1.0</version>
<version>17.1.1</version>
<relativePath />
</parent>

<artifactId>scijava-common</artifactId>
<version>2.65.1-SNAPSHOT</version>
<version>2.66.2-SNAPSHOT</version>

<name>SciJava Common</name>
<description>SciJava Common is a shared library for SciJava software. It provides a plugin framework, with an extensible mechanism for service discovery, backed by its own annotation processor, so that plugins can be loaded dynamically. It is used by downstream projects in the SciJava ecosystem, such as ImageJ and SCIFIO.</description>
3 changes: 1 addition & 2 deletions src/main/java/org/scijava/app/SciJavaApp.java
Original file line number Diff line number Diff line change
@@ -41,8 +41,7 @@
* @author Curtis Rueden
* @see AppService
*/
@Plugin(type = App.class, name = SciJavaApp.NAME,
priority = Priority.LOW)
@Plugin(type = App.class, name = SciJavaApp.NAME, priority = Priority.LOW)
public class SciJavaApp extends AbstractApp {

public static final String NAME = "SciJava";
1 change: 1 addition & 0 deletions src/main/java/org/scijava/console/ConsoleService.java
Original file line number Diff line number Diff line change
@@ -49,6 +49,7 @@
*/
public interface ConsoleService extends
HandlerService<LinkedList<String>, ConsoleArgument>, SciJavaService
// TODO: SJC3: Extend Listenable<OutputListener, OutputEvent>
{

/** Handles arguments from an external source such as the command line. */
25 changes: 6 additions & 19 deletions src/main/java/org/scijava/console/DefaultConsoleService.java
Original file line number Diff line number Diff line change
@@ -37,6 +37,7 @@
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;

import org.scijava.Context;
import org.scijava.console.OutputEvent.Source;
@@ -69,9 +70,7 @@ public class DefaultConsoleService extends
private OutputStreamReporter out, err;

/** List of listeners for {@code stdout} and {@code stderr} output. */
private ArrayList<OutputListener> listeners;

private OutputListener[] cachedListeners;
private List<OutputListener> listeners;

// -- ConsoleService methods --

@@ -116,26 +115,19 @@ public void processArgs(final String... args) {
@Override
public void addOutputListener(final OutputListener l) {
if (listeners == null) initListeners();
synchronized (listeners) {
listeners.add(l);
cacheListeners();
}
listeners.add(l);
}

@Override
public void removeOutputListener(final OutputListener l) {
if (listeners == null) initListeners();
synchronized (listeners) {
listeners.remove(l);
cacheListeners();
}
listeners.remove(l);
}

@Override
public void notifyListeners(final OutputEvent event) {
if (listeners == null) initListeners();
final OutputListener[] toNotify = cachedListeners;
for (final OutputListener l : toNotify)
for (final OutputListener l : listeners)
l.outputOccurred(event);
}

@@ -163,16 +155,11 @@ private synchronized void initListeners() {
err = new OutputStreamReporter(Source.STDERR);
syserr.getParent().addOutputStream(err);

listeners = new ArrayList<>();
cachedListeners = listeners.toArray(new OutputListener[0]);
listeners = new CopyOnWriteArrayList<>();
}

// -- Helper methods --

private void cacheListeners() {
cachedListeners = listeners.toArray(new OutputListener[listeners.size()]);
}

private MultiPrintStream multiPrintStream(final PrintStream ps) {
if (ps instanceof MultiPrintStream) return (MultiPrintStream) ps;
return new MultiPrintStream(ps);
40 changes: 10 additions & 30 deletions src/main/java/org/scijava/console/MultiOutputStream.java
Original file line number Diff line number Diff line change
@@ -35,6 +35,8 @@
import java.io.IOException;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;

/**
* A {@code MultiOutputStream} is a collection of constituent
@@ -49,81 +51,59 @@
*/
public class MultiOutputStream extends OutputStream {

private final ArrayList<OutputStream> streams;

private OutputStream[] cachedStreams;
private final List<OutputStream> streams;

/**
* Forwards output to a list of output streams.
*
* @param os Output streams which will receive this stream's output.
*/
public MultiOutputStream(final OutputStream... os) {
streams = new ArrayList<>(os.length);
for (int i = 0; i < os.length; i++) {
streams.add(os[i]);
}
cacheStreams();
streams = new CopyOnWriteArrayList<>(os);
}

// -- MultiOutputStream methods --

/** Adds an output stream to those receiving this stream's output. */
public void addOutputStream(final OutputStream os) {
synchronized (streams) {
streams.add(os);
cacheStreams();
}
streams.add(os);
}

/** Removes an output stream from those receiving this stream's output. */
public void removeOutputStream(final OutputStream os) {
synchronized (streams) {
streams.remove(os);
cacheStreams();
}
streams.remove(os);
}

// -- OutputStream methods --

@Override
public void write(final int b) throws IOException {
final OutputStream[] toWrite = cachedStreams;
for (final OutputStream stream : toWrite)
for (final OutputStream stream : streams)
stream.write(b);
}

@Override
public void write(final byte[] buf, final int off, final int len)
throws IOException
{
final OutputStream[] toWrite = cachedStreams;
for (final OutputStream stream : toWrite)
for (final OutputStream stream : streams)
stream.write(buf, off, len);
}

// -- Closeable methods --

@Override
public void close() throws IOException {
final OutputStream[] toClose = cachedStreams;
for (final OutputStream stream : toClose)
for (final OutputStream stream : streams)
stream.close();
}

// -- Flushable methods --

@Override
public void flush() throws IOException {
final OutputStream[] toFlush = cachedStreams;
for (final OutputStream stream : toFlush)
for (final OutputStream stream : streams)
stream.flush();
}

// -- Helper methods --

private void cacheStreams() {
cachedStreams = streams.toArray(new OutputStream[streams.size()]);
}

}
Loading