Package com.adobe.internal.io
Class TagSearchingOutputStream
- java.lang.Object
-
- java.io.OutputStream
-
- java.io.FilterOutputStream
-
- com.adobe.internal.io.TagSearchingOutputStream
-
- All Implemented Interfaces:
java.io.Closeable,java.io.Flushable,java.lang.AutoCloseable
public class TagSearchingOutputStream extends java.io.FilterOutputStreamAnOutputStreamthat searches for a specific tag in the data stream and when found it calls back.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceTagSearchingOutputStream.CallbackThe mechanism to let the client know that the tag has been found.
-
Constructor Summary
Constructors Constructor Description TagSearchingOutputStream(java.io.OutputStream out, byte[] tag, TagSearchingOutputStream.Callback callback)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()intoutputTag()Queries whether the tag being searched for is output or not and if so if it is before or after the call toTagSearchingOutputStream.Callback.tagFound(TagSearchingOutputStream).intoutputTag(int tagOutput)Sets whether the tag being searched for is output or not and if so if it is before or after the call toTagSearchingOutputStream.Callback.tagFound(TagSearchingOutputStream).booleansearchForTag()Query whether the tag searching is turned on or off.booleansearchForTag(boolean search)Turn on or off the tag searching.voidwrite(int b)
-
-
-
Constructor Detail
-
TagSearchingOutputStream
public TagSearchingOutputStream(java.io.OutputStream out, byte[] tag, TagSearchingOutputStream.Callback callback) throws java.io.IOExceptionConstructor.- Throws:
java.io.IOException
-
-
Method Detail
-
searchForTag
public boolean searchForTag(boolean search) throws java.io.IOExceptionTurn on or off the tag searching. This must not be called during theTagSearchingOutputStream.Callback.tagFound(TagSearchingOutputStream). If tag searching should be turned off after the return from the callback then the client can use the return value from the callback method to turn searching off.- Parameters:
search-trueif tag should be searched for;falseotherwise- Returns:
- the tag search state before the call
- Throws:
java.io.IOException
-
searchForTag
public boolean searchForTag() throws java.io.IOExceptionQuery whether the tag searching is turned on or off.- Returns:
- the current tag search state
trueif tag searching is on;falseotherwise - Throws:
java.io.IOException
-
outputTag
public int outputTag(int tagOutput) throws java.io.IOExceptionSets whether the tag being searched for is output or not and if so if it is before or after the call toTagSearchingOutputStream.Callback.tagFound(TagSearchingOutputStream). By default the tag being searched for will not be output.- Parameters:
tagOutput-0if tag should not be output;-1(or any -ve number) if the tag should be output before the callback;1(or any +ve number) if the tag should be output after the callback- Returns:
- the tag output state before the call
- Throws:
java.io.IOException
-
outputTag
public int outputTag() throws java.io.IOExceptionQueries whether the tag being searched for is output or not and if so if it is before or after the call toTagSearchingOutputStream.Callback.tagFound(TagSearchingOutputStream). By default the tag being searched for will not be output.-1(or any -ve number) if the tag should be output before the callback;1(or any +ve number) if thte tag should be output after the callback- Returns:
- the current tag output state
0if tag should not be output;-1(or any -ve number) if the tag should be output before the callback;1(or any +ve number) if the tag should be output after the callback - Throws:
java.io.IOException
-
write
public void write(int b) throws java.io.IOException- Overrides:
writein classjava.io.FilterOutputStream- Throws:
java.io.IOException
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Overrides:
closein classjava.io.FilterOutputStream- Throws:
java.io.IOException
-
-