- All Implemented Interfaces:
Encode,Sh,Text,ValidMediaFilter,ValidMediaInput,ValidMediaOutput,Whitespace,NoClose,Closeable,Flushable,Appendable,AutoCloseable
- Author:
- AO Industries, Inc.
- See Also:
-
Field Summary
Fields inherited from class com.aoapps.encoding.MediaWriter
DEFAULT_CLOSER, DEFAULT_IS_NO_CLOSEFields inherited from class java.io.FilterWriter
outFields inherited from interface com.aoapps.encoding.Whitespace
INDENT_SPACES, NL, SPACE -
Constructor Summary
ConstructorsConstructorDescriptionShWriter(EncodingContext encodingContext, MediaEncoder encoder, Writer out) Simplified constructor.ShWriter(EncodingContext encodingContext, MediaEncoder encoder, Writer out, boolean outOptimized, Whitespace indentDelegate, Predicate<? super MediaWriter> isNoClose, IOConsumer<? super MediaWriter> closer) -
Method Summary
Modifier and TypeMethodDescriptionappend(char c) append(CharSequence csq) append(CharSequence csq, int start, int end) decDepth()Decrements the indentation depth, if enabled.Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.encode(MediaType contentType, MediaWritable<Ex> content) Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.encode(MediaType contentType, IOSupplierE<?, Ex> content) Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.encode(MediaType contentType, CharSequence csq) Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.encode(MediaType contentType, CharSequence csq, int start, int end) Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Gets the input type.incDepth()Increments the indentation depth, if enabled.indent()Writes the current indentation when indentation enabled.indent(int depthOffset) Writes the current indentation with a depth offset when indentation enabled.nbsp()Writes one non-breaking space character.nbsp(int count) Writes the given number of non-breaking space characters.nl()Writes a newline.nli()Writes a newline, followed by current indentation when indentation enabled.nli(int depthOffset) Writes a newline, followed by current indentation with a depth offset when indentation enabled.setDepth(int depth) Sets the indentation depth.setIndent(boolean indent) Enables or disabled indentation.sh()Deprecated.Already writing Bourne shell scriptsh(char ch) Deprecated.Already writing Bourne shell scriptsh(char[] cbuf) Deprecated.Already writing Bourne shell scriptsh(char[] cbuf, int offset, int len) Deprecated.Already writing Bourne shell scriptsh(ShWritable<Ex> sh) Deprecated.Already writing Bourne shell scriptsh(IOSupplierE<?, Ex> sh) Deprecated.Already writing Bourne shell scriptsh(CharSequence csq) Deprecated.Already writing Bourne shell scriptsh(CharSequence csq, int start, int end) Deprecated.Already writing Bourne shell scriptDeprecated.Already writing Bourne shell scriptsp()Writes one space character.sp(int count) Writes the given number of space characters.text(char ch) Writes the given text with proper encoding.text(char[] cbuf) Writes the given text with proper encoding.text(char[] cbuf, int offset, int len) Writes the given text with proper encoding.text(TextWritable<Ex> text) Writes the given text with proper encoding.text(IOSupplierE<?, Ex> text) Writes the given text with proper encoding.text(CharSequence csq) Writes the given text with proper encoding.text(CharSequence csq, int start, int end) Writes the given text with proper encoding.Writes the given text with proper encoding.Methods inherited from class com.aoapps.encoding.WhitespaceWriter
getDepth, getIndentMethods inherited from class com.aoapps.encoding.MediaWriter
canSkipValidation, close, getEncoder, getEncodingContext, getValidMediaOutputType, isNoClose, isValidatingMediaInputTypeMethods inherited from class com.aoapps.lang.io.EncoderWriter
getOut, write, write, write, write, write, writePrefix, writeSuffix, writeSuffixMethods inherited from class java.io.FilterWriter
flushMethods inherited from class java.io.Writer
nullWriter
-
Constructor Details
-
ShWriter
public ShWriter(EncodingContext encodingContext, MediaEncoder encoder, Writer out, boolean outOptimized, Whitespace indentDelegate, Predicate<? super MediaWriter> isNoClose, IOConsumer<? super MediaWriter> closer) - Parameters:
out- Conditionally passed throughCoercion.optimize(java.io.Writer, com.aoapps.lang.io.Encoder)outOptimized- Isoutalready known to have been passed throughCoercion.optimize(java.io.Writer, com.aoapps.lang.io.Encoder)?indentDelegate- When non-null, indentation depth is get/set on the providedWhitespace, otherwise tracks directly on this writer. This allows the indentation to be coordinated between nested content types.isNoClose- Called to determine result ofMediaWriter.isNoClose()closer- Called onMediaWriter.close(), which may optionally perform final suffix write and/or close the underlying writer, will only be called to be idempotent, implementation can assume will only be called once.
-
ShWriter
Simplified constructor.- Parameters:
out- Passed throughCoercion.optimize(java.io.Writer, com.aoapps.lang.io.Encoder)- See Also:
-
-
Method Details
-
getValidMediaInputType
Description copied from class:MediaWriterGets the input type.Gets the media type this specific type of media writer represents. This is a one-to-one relationship: every media type has a specific writer.
- Specified by:
getValidMediaInputTypein interfaceValidMediaInput- Specified by:
getValidMediaInputTypein classMediaWriter
-
append
- Specified by:
appendin interfaceAppendable- Overrides:
appendin classWhitespaceWriter- Throws:
IOException
-
append
- Specified by:
appendin interfaceAppendable- Overrides:
appendin classWhitespaceWriter- Throws:
IOException
-
append
- Specified by:
appendin interfaceAppendable- Overrides:
appendin classWhitespaceWriter- Throws:
IOException
-
encode
Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Encodes the given nested type with proper encoding.- Specified by:
encodein interfaceEncode- Specified by:
encodein interfaceSh- Specified by:
encodein interfaceText- Overrides:
encodein classWhitespaceWriter- Returns:
thiswriter- Throws:
IOException
-
encode
Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Encodes the given nested type with proper encoding.- Specified by:
encodein interfaceEncode- Specified by:
encodein interfaceSh- Specified by:
encodein interfaceText- Overrides:
encodein classWhitespaceWriter- Returns:
thiswriter- Throws:
IOException
-
encode
@Deprecated public ShWriter encode(MediaType contentType, char[] cbuf, int offset, int len) throws IOException Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Encodes the given nested type with proper encoding.- Specified by:
encodein interfaceEncode- Specified by:
encodein interfaceSh- Specified by:
encodein interfaceText- Overrides:
encodein classWhitespaceWriter- Returns:
thiswriter- Throws:
IOException
-
encode
Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Encodes the given nested type with proper encoding.Adds prefixes and suffixes by media type, such as
"…".If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
encodein interfaceEncode- Specified by:
encodein interfaceSh- Specified by:
encodein interfaceText- Overrides:
encodein classWhitespaceWriter- Returns:
thiswriter- Throws:
IOException
-
encode
@Deprecated public ShWriter encode(MediaType contentType, CharSequence csq, int start, int end) throws IOException Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Encodes the given nested type with proper encoding.Adds prefixes and suffixes by media type, such as
"…".If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
encodein interfaceEncode- Specified by:
encodein interfaceSh- Specified by:
encodein interfaceText- Overrides:
encodein classWhitespaceWriter- Returns:
thiswriter- Throws:
IOException
-
encode
Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Encodes the given nested type with proper encoding.Adds prefixes and suffixes by media type, such as
"…".If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
encodein interfaceEncode- Specified by:
encodein interfaceSh- Specified by:
encodein interfaceText- Overrides:
encodein classWhitespaceWriter- Returns:
thiswriter- Throws:
IOException
-
encode
@Deprecated public <Ex extends Throwable> ShWriter encode(MediaType contentType, IOSupplierE<?, Ex> content) throws IOException, ExDeprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Encodes the given nested type with proper encoding.Adds prefixes and suffixes by media type, such as
"…".If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
encodein interfaceEncode- Specified by:
encodein interfaceSh- Specified by:
encodein interfaceText- Overrides:
encodein classWhitespaceWriter- Type Parameters:
Ex- An arbitrary exception type that may be thrown- Returns:
thiswriter- Throws:
IOExceptionEx
-
encode
@Deprecated public <Ex extends Throwable> ShWriter encode(MediaType contentType, MediaWritable<Ex> content) throws IOException, Ex Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Encodes the given nested type with proper encoding.Adds prefixes and suffixes by media type, such as
"…".Does not perform any translation markups.
- Specified by:
encodein interfaceEncode- Specified by:
encodein interfaceSh- Specified by:
encodein interfaceText- Overrides:
encodein classWhitespaceWriter- Type Parameters:
Ex- An arbitrary exception type that may be thrown- Returns:
thiswriter- Throws:
IOExceptionEx
-
encode
Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.Encodes the given nested type with proper encoding. This is well suited for use in a try-with-resources block.Adds prefixes and suffixes by media type, such as
"…".Does not perform any translation markups.
- Specified by:
encodein interfaceEncode- Specified by:
encodein interfaceSh- Overrides:
encodein classMediaWriter- Returns:
- A new writer that may be used for the given content type.
This writer must be closed for completed calls to
MediaEncoder.writeSuffixTo(java.lang.Appendable, boolean).The returned writer will be of the specific subclass of
MediaWritermatchingcontentType(seeMediaType.getMediaWriterClass(). This meansMediaWriter.getValidMediaInputType()will becontentType. - Throws:
IOException
-
nl
Description copied from interface:WhitespaceWrites a newline.This is
'\n'on all platforms. If a different newline is required, such as"\r\n"for email, filter the output.- Specified by:
nlin interfaceWhitespace- Overrides:
nlin classWhitespaceWriter- Returns:
thiswriter- Throws:
IOException- See Also:
-
nli
Description copied from interface:WhitespaceWrites a newline, followed by current indentation when indentation enabled.This is
'\n'on all platforms. If a different newline is required, such as"\r\n"for email, filter the output.- Specified by:
nliin interfaceWhitespace- Overrides:
nliin classWhitespaceWriter- Returns:
thiswriter- Throws:
IOException- See Also:
-
nli
Description copied from interface:WhitespaceWrites a newline, followed by current indentation with a depth offset when indentation enabled.This is
'\n'on all platforms. If a different newline is required, such as"\r\n"for email, filter the output.- Specified by:
nliin interfaceWhitespace- Overrides:
nliin classWhitespaceWriter- Parameters:
depthOffset- A value added to the current indentation depth. For example, pass-1when performing a newline before a closing tag or ending curly brace.- Returns:
thiswriter- Throws:
IOException- See Also:
-
indent
Description copied from interface:WhitespaceWrites the current indentation when indentation enabled.- Specified by:
indentin interfaceWhitespace- Overrides:
indentin classWhitespaceWriter- Returns:
thiswriter- Throws:
IOException- See Also:
-
indent
Description copied from interface:WhitespaceWrites the current indentation with a depth offset when indentation enabled.- Specified by:
indentin interfaceWhitespace- Overrides:
indentin classWhitespaceWriter- Parameters:
depthOffset- A value added to the current indentation depth. For example, pass-1when performing a newline before a closing tag or ending curly brace.- Returns:
thiswriter- Throws:
IOException- See Also:
-
setIndent
Description copied from interface:WhitespaceEnables or disabled indentation.- Specified by:
setIndentin interfaceWhitespace- Overrides:
setIndentin classWhitespaceWriter- Returns:
thiswriter
-
setDepth
Description copied from interface:WhitespaceSets the indentation depth.- Specified by:
setDepthin interfaceWhitespace- Overrides:
setDepthin classWhitespaceWriter- Returns:
thiswriter
-
incDepth
Description copied from interface:WhitespaceIncrements the indentation depth, if enabled.- Specified by:
incDepthin interfaceWhitespace- Overrides:
incDepthin classWhitespaceWriter- Returns:
thiswriter
-
decDepth
Description copied from interface:WhitespaceDecrements the indentation depth, if enabled.- Specified by:
decDepthin interfaceWhitespace- Overrides:
decDepthin classWhitespaceWriter- Returns:
thiswriter
-
sp
Description copied from interface:WhitespaceWrites one space character.- Specified by:
spin interfaceWhitespace- Overrides:
spin classWhitespaceWriter- Returns:
thiswriter- Throws:
IOException- See Also:
-
sp
Description copied from interface:WhitespaceWrites the given number of space characters.- Specified by:
spin interfaceWhitespace- Overrides:
spin classWhitespaceWriter- Parameters:
count- Whencount <= 0, nothing is written.- Returns:
thiswriter- Throws:
IOException- See Also:
-
nbsp
Description copied from interface:Text- Specified by:
nbspin interfaceText- Returns:
thiswriter- Throws:
IOException- See Also:
-
nbsp
Description copied from interface:TextWrites the given number of non-breaking space characters.- Specified by:
nbspin interfaceText- Parameters:
count- Whencount <= 0, nothing is written.- Returns:
thiswriter- Throws:
IOException- See Also:
-
text
Description copied from interface:Text- Specified by:
textin interfaceText- Returns:
thiswriter- Throws:
IOException
-
text
Description copied from interface:Text- Specified by:
textin interfaceText- Returns:
thiswriter- Throws:
IOException
-
text
Description copied from interface:Text- Specified by:
textin interfaceText- Returns:
thiswriter- Throws:
IOException
-
text
Description copied from interface:TextWrites the given text with proper encoding.Adds prefixes and suffixes by media type, such as
"…".If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
textin interfaceText- Returns:
thiswriter- Throws:
IOException
-
text
Description copied from interface:TextWrites the given text with proper encoding.Adds prefixes and suffixes by media type, such as
"…".If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
textin interfaceText- Returns:
thiswriter- Throws:
IOException
-
text
Description copied from interface:TextWrites the given text with proper encoding.Adds prefixes and suffixes by media type, such as
"…".If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
textin interfaceText- Returns:
thiswriter- Throws:
IOException
-
text
Description copied from interface:TextWrites the given text with proper encoding.Adds prefixes and suffixes by media type, such as
"…".If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
textin interfaceText- Type Parameters:
Ex- An arbitrary exception type that may be thrown- Returns:
thiswriter- Throws:
IOExceptionEx
-
text
Description copied from interface:TextWrites the given text with proper encoding.Adds prefixes and suffixes by media type, such as
"…".Does not perform any translation markups.
- Specified by:
textin interfaceText- Type Parameters:
Ex- An arbitrary exception type that may be thrown- Returns:
thiswriter- Throws:
IOExceptionEx
-
sh
Deprecated.Already writing Bourne shell script- Specified by:
shin interfaceSh- Returns:
thiswriter- Throws:
IOException
-
sh
Deprecated.Already writing Bourne shell script- Specified by:
shin interfaceSh- Returns:
thiswriter- Throws:
IOException
-
sh
Deprecated.Already writing Bourne shell script- Specified by:
shin interfaceSh- Returns:
thiswriter- Throws:
IOException
-
sh
Deprecated.Already writing Bourne shell scriptWrites the given shell script with proper encoding.Adds prefixes and suffixes by media type.
If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
shin interfaceSh- Returns:
thiswriter- Throws:
IOException
-
sh
Deprecated.Already writing Bourne shell scriptWrites the given shell script with proper encoding.Adds prefixes and suffixes by media type.
If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
shin interfaceSh- Returns:
thiswriter- Throws:
IOException
-
sh
Deprecated.Already writing Bourne shell scriptWrites the given shell script with proper encoding.Adds prefixes and suffixes by media type.
If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
shin interfaceSh- Returns:
thiswriter- Throws:
IOException
-
sh
Deprecated.Already writing Bourne shell scriptWrites the given shell script with proper encoding.Adds prefixes and suffixes by media type.
If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
shin interfaceSh- Type Parameters:
Ex- An arbitrary exception type that may be thrown- Returns:
thiswriter- Throws:
IOExceptionEx
-
sh
Deprecated.Already writing Bourne shell scriptWrites the given shell script with proper encoding.Adds prefixes and suffixes by media type.
Does not perform any translation markups.
- Specified by:
shin interfaceSh- Type Parameters:
Ex- An arbitrary exception type that may be thrown- Returns:
thiswriter- Throws:
IOExceptionEx
-
sh
Deprecated.Already writing Bourne shell scriptWrites the given shell script with proper encoding. This is well suited for use in a try-with-resources block.Adds prefixes and suffixes by media type.
Does not perform any translation markups.
- Specified by:
shin interfaceSh- Returns:
- A new writer that may be used for arbitrary shell script.
This writer must be closed for completed calls to
MediaEncoder.writeSuffixTo(java.lang.Appendable, boolean). - Throws:
IOException
-
