Class ProcessBuilder.Redirect
java.lang.Object
java.lang.ProcessBuilder.Redirect
- Enclosing class:
ProcessBuilder
Represents a source of subprocess input or a destination of
subprocess output.
Each
Redirect instance is one of the following:
- the special value
Redirect.PIPE - the special value
Redirect.INHERIT - the special value
Redirect.DISCARD - a redirection to read from a file, created by an invocation of
Redirect.from(File) - a redirection to write to a file, created by an invocation of
Redirect.to(File) - a redirection to append to a file, created by an invocation of
Redirect.appendTo(File)
Each of the above categories has an associated unique
Type.
- Since:
- 1.7
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ProcessBuilder.RedirectIndicates that subprocess output will be discarded.static final ProcessBuilder.RedirectIndicates that subprocess I/O source or destination will be the same as those of the current process.static final ProcessBuilder.RedirectIndicates that subprocess I/O will be connected to the current Java process over a pipe. -
Method Summary
Modifier and TypeMethodDescriptionstatic ProcessBuilder.RedirectReturns a redirect to append to the specified file.booleanCompares the specified object with thisRedirectfor equality.file()Returns theFilesource or destination associated with this redirect, ornullif there is no such file.static ProcessBuilder.RedirectReturns a redirect to read from the specified file.inthashCode()Returns a hash code value for thisRedirect.static ProcessBuilder.RedirectReturns a redirect to write to the specified file.abstract ProcessBuilder.Redirect.Typetype()Returns the type of thisRedirect.Methods declared in class Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitModifier and TypeMethodDescriptionprotected Objectclone()Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.protected voidfinalize()Deprecated, for removal: This API element is subject to removal in a future version.May cause performance issues, deadlocks and hangs.getClass()Answers the unique instance of java.lang.Class which represents the class of the receiver.final voidnotify()Causes one thread which iswaiting on the receiver to be made ready to run.final voidCauses all threads which arewaiting on the receiver to be made ready to run.toString()Answers a string containing a concise, human-readable description of the receiver.final voidwait()Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated bynotifyornotifyAll).final voidwait(long time) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.final voidwait(long time, int frac) Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated bynotifyornotifyAll) or the expiration of the timeout.
-
Field Details
-
PIPE
Indicates that subprocess I/O will be connected to the current Java process over a pipe. This is the default handling of subprocess standard I/O.It will always be true that
Redirect.PIPE.file() == null && Redirect.PIPE.type() == Redirect.Type.PIPE -
INHERIT
Indicates that subprocess I/O source or destination will be the same as those of the current process. This is the normal behavior of most operating system command interpreters (shells).It will always be true that
Redirect.INHERIT.file() == null && Redirect.INHERIT.type() == Redirect.Type.INHERIT -
DISCARD
Indicates that subprocess output will be discarded. A typical implementation discards the output by writing to an operating system specific "null file".It will always be true that
Redirect.DISCARD.file() != null && // is the filename appropriate for the operating system Redirect.DISCARD.type() == Redirect.Type.WRITE;- Since:
- 9
-
-
Method Details
-
type
Returns the type of thisRedirect.- Returns:
- the type of this
Redirect
-
file
-
from
Returns a redirect to read from the specified file.It will always be true that
Redirect.from(file).file() == file && Redirect.from(file).type() == Redirect.Type.READ- Parameters:
file- TheFilefor theRedirect.- Returns:
- a redirect to read from the specified file
-
to
Returns a redirect to write to the specified file. If the specified file exists when the subprocess is started, its previous contents will be discarded.It will always be true that
Redirect.to(file).file() == file && Redirect.to(file).type() == Redirect.Type.WRITE- Parameters:
file- TheFilefor theRedirect.- Returns:
- a redirect to write to the specified file
-
appendTo
Returns a redirect to append to the specified file. Each write operation first advances the position to the end of the file and then writes the requested data. Whether the advancement of the position and the writing of the data are done in a single atomic operation is system-dependent and therefore unspecified.It will always be true that
Redirect.appendTo(file).file() == file && Redirect.appendTo(file).type() == Redirect.Type.APPEND- Parameters:
file- TheFilefor theRedirect.- Returns:
- a redirect to append to the specified file
-
equals
Compares the specified object with thisRedirectfor equality. Returnstrueif and only if the two objects are identical or both objects areRedirectinstances of the same type associated with non-null equalFileinstances. -
hashCode
-