projects
/
sonitus.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Create threads with decent names.
[sonitus.git]
/
src
/
main
/
java
/
net
/
pterodactylus
/
sonitus
/
data
/
Pipeline.java
diff --git
a/src/main/java/net/pterodactylus/sonitus/data/Pipeline.java
b/src/main/java/net/pterodactylus/sonitus/data/Pipeline.java
index
ae4158d
..
063a0bc
100644
(file)
--- a/
src/main/java/net/pterodactylus/sonitus/data/Pipeline.java
+++ b/
src/main/java/net/pterodactylus/sonitus/data/Pipeline.java
@@
-167,13
+167,15
@@
public class Pipeline implements Iterable<ControlledComponent> {
}
}
for (Connection connection : connections) {
}
}
for (Connection connection : connections) {
- logger.info(String.format("Starting Connection from %s to %s.", connection.source.name(), FluentIterable.from(connection.sinks).transform(new Function<Sink, String>() {
+ String threadName = String.format("%s → %s.", connection.source.name(), FluentIterable.from(connection.sinks).transform(new Function<Sink, String>() {
+
@Override
public String apply(Sink sink) {
return sink.name();
}
@Override
public String apply(Sink sink) {
return sink.name();
}
- })));
- new Thread(connection).start();
+ }));
+ logger.info(String.format("Starting Thread: %s", threadName));
+ new Thread(connection, threadName).start();
}
}
}
}
@@
-330,6
+332,9
@@
public class Pipeline implements Iterable<ControlledComponent> {
/** The executor service. */
private final ExecutorService executorService;
/** The executor service. */
private final ExecutorService executorService;
+ /** The time the connection was started. */
+ private long startTime;
+
/** The number of copied bytes. */
private long counter;
/** The number of copied bytes. */
private long counter;
@@
-344,7
+349,7
@@
public class Pipeline implements Iterable<ControlledComponent> {
public Connection(Source source, Collection<Sink> sinks) {
this.source = source;
this.sinks = sinks;
public Connection(Source source, Collection<Sink> sinks) {
this.source = source;
this.sinks = sinks;
- if (sinks.size()
== 1
) {
+ if (sinks.size()
< 2
) {
executorService = MoreExecutors.sameThreadExecutor();
} else {
executorService = Executors.newCachedThreadPool();
executorService = MoreExecutors.sameThreadExecutor();
} else {
executorService = Executors.newCachedThreadPool();
@@
-356,6
+361,16
@@
public class Pipeline implements Iterable<ControlledComponent> {
//
/**
//
/**
+ * Returns the time this connection was started.
+ *
+ * @return The time this connection was started (in milliseconds since Jan 1,
+ * 1970 UTC)
+ */
+ public long startTime() {
+ return startTime;
+ }
+
+ /**
* Returns the number of bytes that this connection has received from its
* source during its lifetime.
*
* Returns the number of bytes that this connection has received from its
* source during its lifetime.
*
@@
-380,7
+395,7
@@
public class Pipeline implements Iterable<ControlledComponent> {
@Override
public void run() {
@Override
public void run() {
-
Metadata firstMetadata = null
;
+
startTime = System.currentTimeMillis()
;
while (!stopped.get()) {
try {
final byte[] buffer;
while (!stopped.get()) {
try {
final byte[] buffer;