Class ThreadOutputMuxer
java.lang.Object
org.apache.maven.lifecycle.internal.builder.multithreaded.ThreadOutputMuxer
NOTE: This class is not part of any public api and can be changed or deleted without prior notice.
This class in particular may spontaneously self-combust and be replaced by a plexus-compliant thread aware
logger implementation at any time.
- Since:
- 3.0
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) class
A simple but safe solution for printing to the console.private class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Set<ProjectSegment>
private ProjectSegment
private final ByteArrayOutputStream
private final PrintStream
private final PrintStream
private final ThreadOutputMuxer.ConsolePrinter
private final Map<ProjectSegment,
PrintStream> private final ThreadLocal<ProjectSegment>
private final Iterator<ProjectSegment>
private final Map<ProjectSegment,
ByteArrayOutputStream> -
Constructor Summary
ConstructorsConstructorDescriptionThreadOutputMuxer
(ProjectBuildList segmentChunks, PrintStream originalSystemOut) -
Method Summary
Modifier and TypeMethodDescriptionvoid
associateThreadWithProjectSegment
(ProjectSegment projectBuild) void
close()
private void
private PrintStream
private boolean
ownsRealOutputStream
(ProjectSegment projectBuild) private void
setNext()
void
setThisModuleComplete
(ProjectSegment projectBuild)
-
Field Details
-
projects
-
projectBuildThreadLocal
-
streams
-
printStreams
-
defaultOutputStreamForUnknownData
-
defaultPrintStream
-
completedBuilds
-
currentBuild
-
originalSystemOUtStream
-
printer
-
-
Constructor Details
-
ThreadOutputMuxer
-
-
Method Details
-
close
public void close() -
setNext
private void setNext() -
ownsRealOutputStream
-
getThreadBoundPrintStream
-
associateThreadWithProjectSegment
-
setThisModuleComplete
-
disconnectThreadFromProject
private void disconnectThreadFromProject()
-