java.lang.Object
java.lang.ProcessBuilder.Redirect
- Enclosing class:
- ProcessBuilder
public abstract static class ProcessBuilder.Redirect extends Object
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 SummaryNested Classes Modifier and Type Class Description static classProcessBuilder.Redirect.TypeThe type of aProcessBuilder.Redirect.
- 
Field SummaryFields Modifier and Type Field Description static ProcessBuilder.RedirectDISCARDIndicates that subprocess output will be discarded.static ProcessBuilder.RedirectINHERITIndicates that subprocess I/O source or destination will be the same as those of the current process.static ProcessBuilder.RedirectPIPEIndicates that subprocess I/O will be connected to the current Java process over a pipe.
- 
Method SummaryModifier and Type Method Description static ProcessBuilder.RedirectappendTo(File file)Returns a redirect to append to the specified file.booleanequals(Object obj)Compares the specified object with thisRedirectfor equality.Filefile()Returns theFilesource or destination associated with this redirect, ornullif there is no such file.static ProcessBuilder.Redirectfrom(File file)Returns a redirect to read from the specified file.inthashCode()Returns a hash code value for thisRedirect.static ProcessBuilder.Redirectto(File file)Returns a redirect to write to the specified file.abstract ProcessBuilder.Redirect.Typetype()Returns the type of thisRedirect.
- 
Field Details- 
PIPEIndicates 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
- 
INHERITIndicates 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
- 
DISCARDIndicates 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() is the filename appropriate for the operating system and may be null && Redirect.DISCARD.type() == Redirect.Type.WRITE- Since:
- 9
 
 
- 
- 
Method Details- 
typeReturns the type of thisRedirect.- Returns:
- the type of this Redirect
 
- 
fileReturns theFilesource or destination associated with this redirect, ornullif there is no such file.- Returns:
- the file associated with this redirect,
         or nullif there is no such file
 
- 
fromReturns 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- The- Filefor the- Redirect.
- Returns:
- a redirect to read from the specified file
 
- 
toReturns 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- The- Filefor the- Redirect.
- Returns:
- a redirect to write to the specified file
 
- 
appendToReturns 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- The- Filefor the- Redirect.
- Returns:
- a redirect to append to the specified file
 
- 
equalsCompares 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.- Overrides:
- equalsin class- Object
- Parameters:
- obj- the reference object with which to compare.
- Returns:
- trueif this object is the same as the obj argument;- falseotherwise.
- See Also:
- Object.hashCode(),- HashMap
 
- 
hashCodepublic int hashCode()Returns a hash code value for thisRedirect.- Overrides:
- hashCodein class- Object
- Returns:
- a hash code value for this Redirect
- See Also:
- Object.equals(java.lang.Object),- System.identityHashCode(java.lang.Object)
 
 
-