- All Implemented Interfaces:
Encode
,Style
,Text
,Url
,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_CLOSE
Fields inherited from class java.io.FilterWriter
out
Fields inherited from interface com.aoapps.encoding.Whitespace
INDENT_SPACES, NL, SPACE
-
Constructor Summary
ConstructorDescriptionStyleWriter
(EncodingContext encodingContext, MediaEncoder encoder, Writer out) Simplified constructor.StyleWriter
(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.<Ex extends Throwable>
StyleWriterencode
(MediaType contentType, MediaWritable<Ex> content) Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods.<Ex extends Throwable>
StyleWriterencode
(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.sp()
Writes one space character.sp
(int count) Writes the given number of space characters.style()
Deprecated.Already writing CSS stylesheetstyle
(char ch) Deprecated.Already writing CSS stylesheetstyle
(char[] cbuf) Deprecated.Already writing CSS stylesheetstyle
(char[] cbuf, int offset, int len) Deprecated.Already writing CSS stylesheet<Ex extends Throwable>
StyleWriterstyle
(StyleWritable<Ex> style) Deprecated.Already writing CSS stylesheet<Ex extends Throwable>
StyleWriterstyle
(IOSupplierE<?, Ex> style) Deprecated.Already writing CSS stylesheetstyle
(CharSequence csq) Deprecated.Already writing CSS stylesheetstyle
(CharSequence csq, int start, int end) Deprecated.Already writing CSS stylesheetDeprecated.Already writing CSS stylesheettext
(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.<Ex extends Throwable>
StyleWritertext
(TextWritable<Ex> text) Writes the given text with proper encoding.<Ex extends Throwable>
StyleWritertext
(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.url
(char ch) Writes the given RFC 3986 URI or RFC 3987 IRI with proper encoding.url
(char[] cbuf) Writes the given RFC 3986 URI or RFC 3987 IRI with proper encoding.url
(char[] cbuf, int offset, int len) Writes the given RFC 3986 URI or RFC 3987 IRI with proper encoding.<Ex extends Throwable>
StyleWriterurl
(UrlWritable<Ex> url) Writes the given RFC 3986 URI or RFC 3987 IRI with proper encoding.<Ex extends Throwable>
StyleWriterurl
(IOSupplierE<?, Ex> url) Writes the given RFC 3986 URI or RFC 3987 IRI with proper encoding.url
(CharSequence csq) Writes the given RFC 3986 URI or RFC 3987 IRI with proper encoding.url
(CharSequence csq, int start, int end) Writes the given RFC 3986 URI or RFC 3987 IRI with proper encoding.Writes the given RFC 3986 URI or RFC 3987 IRI with proper encoding.Methods inherited from class com.aoapps.encoding.WhitespaceWriter
getDepth, getIndent
Methods inherited from class com.aoapps.encoding.MediaWriter
canSkipValidation, close, getEncoder, getEncodingContext, getValidMediaOutputType, isNoClose, isValidatingMediaInputType
Methods inherited from class com.aoapps.lang.io.EncoderWriter
getOut, write, write, write, write, write, writePrefix, writeSuffix, writeSuffix
Methods inherited from class java.io.FilterWriter
flush
Methods inherited from class java.io.Writer
nullWriter
-
Constructor Details
-
StyleWriter
public StyleWriter(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
- Isout
already 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.
-
StyleWriter
Simplified constructor.- Parameters:
out
- Passed throughCoercion.optimize(java.io.Writer, com.aoapps.lang.io.Encoder)
- See Also:
-
-
Method Details
-
getValidMediaInputType
Description copied from class:MediaWriter
Gets 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:
getValidMediaInputType
in interfaceValidMediaInput
- Specified by:
getValidMediaInputType
in classMediaWriter
-
append
- Specified by:
append
in interfaceAppendable
- Overrides:
append
in classWhitespaceWriter
- Throws:
IOException
-
append
- Specified by:
append
in interfaceAppendable
- Overrides:
append
in classWhitespaceWriter
- Throws:
IOException
-
append
- Specified by:
append
in interfaceAppendable
- Overrides:
append
in 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. -
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. -
encode
@Deprecated public StyleWriter 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. -
encode
Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods. -
encode
@Deprecated public StyleWriter 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. -
encode
Deprecated.Encoding of arbitrary content types is not expected since all supported types have per-type methods. -
encode
@Deprecated public <Ex extends Throwable> StyleWriter 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:
encode
in interfaceEncode
- Specified by:
encode
in interfaceStyle
- Specified by:
encode
in interfaceText
- Specified by:
encode
in interfaceUrl
- Overrides:
encode
in classWhitespaceWriter
- Type Parameters:
Ex
- An arbitrary exception type that may be thrown- Returns:
this
writer- Throws:
IOException
Ex
-
encode
@Deprecated public <Ex extends Throwable> StyleWriter 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:
encode
in interfaceEncode
- Specified by:
encode
in interfaceStyle
- Specified by:
encode
in interfaceText
- Specified by:
encode
in interfaceUrl
- Overrides:
encode
in classWhitespaceWriter
- Type Parameters:
Ex
- An arbitrary exception type that may be thrown- Returns:
this
writer- Throws:
IOException
Ex
-
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:
encode
in interfaceEncode
- Specified by:
encode
in interfaceStyle
- Specified by:
encode
in interfaceUrl
- Overrides:
encode
in 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
MediaWriter
matchingcontentType
(seeMediaType.getMediaWriterClass()
. This meansMediaWriter.getValidMediaInputType()
will becontentType
. - Throws:
IOException
-
nl
Description copied from interface:Whitespace
Writes 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:
nl
in interfaceWhitespace
- Overrides:
nl
in classWhitespaceWriter
- Returns:
this
writer- Throws:
IOException
- See Also:
-
nli
Description copied from interface:Whitespace
Writes 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:
nli
in interfaceWhitespace
- Overrides:
nli
in classWhitespaceWriter
- Returns:
this
writer- Throws:
IOException
- See Also:
-
nli
Description copied from interface:Whitespace
Writes 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:
nli
in interfaceWhitespace
- Overrides:
nli
in classWhitespaceWriter
- Parameters:
depthOffset
- A value added to the current indentation depth. For example, pass-1
when performing a newline before a closing tag or ending curly brace.- Returns:
this
writer- Throws:
IOException
- See Also:
-
indent
Description copied from interface:Whitespace
Writes the current indentation when indentation enabled.- Specified by:
indent
in interfaceWhitespace
- Overrides:
indent
in classWhitespaceWriter
- Returns:
this
writer- Throws:
IOException
- See Also:
-
indent
Description copied from interface:Whitespace
Writes the current indentation with a depth offset when indentation enabled.- Specified by:
indent
in interfaceWhitespace
- Overrides:
indent
in classWhitespaceWriter
- Parameters:
depthOffset
- A value added to the current indentation depth. For example, pass-1
when performing a newline before a closing tag or ending curly brace.- Returns:
this
writer- Throws:
IOException
- See Also:
-
setIndent
Description copied from interface:Whitespace
Enables or disabled indentation.- Specified by:
setIndent
in interfaceWhitespace
- Overrides:
setIndent
in classWhitespaceWriter
- Returns:
this
writer
-
setDepth
Description copied from interface:Whitespace
Sets the indentation depth.- Specified by:
setDepth
in interfaceWhitespace
- Overrides:
setDepth
in classWhitespaceWriter
- Returns:
this
writer
-
incDepth
Description copied from interface:Whitespace
Increments the indentation depth, if enabled.- Specified by:
incDepth
in interfaceWhitespace
- Overrides:
incDepth
in classWhitespaceWriter
- Returns:
this
writer
-
decDepth
Description copied from interface:Whitespace
Decrements the indentation depth, if enabled.- Specified by:
decDepth
in interfaceWhitespace
- Overrides:
decDepth
in classWhitespaceWriter
- Returns:
this
writer
-
sp
Description copied from interface:Whitespace
Writes one space character.- Specified by:
sp
in interfaceWhitespace
- Overrides:
sp
in classWhitespaceWriter
- Returns:
this
writer- Throws:
IOException
- See Also:
-
sp
Description copied from interface:Whitespace
Writes the given number of space characters.- Specified by:
sp
in interfaceWhitespace
- Overrides:
sp
in classWhitespaceWriter
- Parameters:
count
- Whencount <= 0
, nothing is written.- Returns:
this
writer- Throws:
IOException
- See Also:
-
style
Deprecated.Already writing CSS stylesheetWrites the given CSS stylesheet with proper encoding.Adds prefixes and suffixes by media type, such as
<style>…</style>
.- Specified by:
style
in interfaceStyle
- Returns:
this
writer- Throws:
IOException
-
style
Deprecated.Already writing CSS stylesheetWrites the given CSS stylesheet with proper encoding.Adds prefixes and suffixes by media type, such as
<style>…</style>
.- Specified by:
style
in interfaceStyle
- Returns:
this
writer- Throws:
IOException
-
style
Deprecated.Already writing CSS stylesheetWrites the given CSS stylesheet with proper encoding.Adds prefixes and suffixes by media type, such as
<style>…</style>
.- Specified by:
style
in interfaceStyle
- Returns:
this
writer- Throws:
IOException
-
style
Deprecated.Already writing CSS stylesheetWrites the given CSS stylesheet with proper encoding.Adds prefixes and suffixes by media type, such as
<style>…</style>
.If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
style
in interfaceStyle
- Returns:
this
writer- Throws:
IOException
-
style
Deprecated.Already writing CSS stylesheetWrites the given CSS stylesheet with proper encoding.Adds prefixes and suffixes by media type, such as
<style>…</style>
.If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
style
in interfaceStyle
- Returns:
this
writer- Throws:
IOException
-
style
Deprecated.Already writing CSS stylesheetWrites the given CSS stylesheet with proper encoding.Adds prefixes and suffixes by media type, such as
<style>…</style>
.If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
style
in interfaceStyle
- Returns:
this
writer- Throws:
IOException
-
style
@Deprecated public <Ex extends Throwable> StyleWriter style(IOSupplierE<?, Ex> style) throws IOException, ExDeprecated.Already writing CSS stylesheetWrites the given CSS stylesheet with proper encoding.Adds prefixes and suffixes by media type, such as
<style>…</style>
.If the string is translated, comments will be added giving the translation lookup id to aid in translation of server-translated values.
- Specified by:
style
in interfaceStyle
- Type Parameters:
Ex
- An arbitrary exception type that may be thrown- Returns:
this
writer- Throws:
IOException
Ex
-
style
@Deprecated public <Ex extends Throwable> StyleWriter style(StyleWritable<Ex> style) throws IOException, Ex Deprecated.Already writing CSS stylesheetWrites the given CSS stylesheet with proper encoding.Adds prefixes and suffixes by media type, such as
<style>…</style>
.Does not perform any translation markups.
- Specified by:
style
in interfaceStyle
- Type Parameters:
Ex
- An arbitrary exception type that may be thrown- Returns:
this
writer- Throws:
IOException
Ex
-
style
Deprecated.Already writing CSS stylesheetWrites the given CSS stylesheet with proper encoding. This is well suited for use in a try-with-resources block.Adds prefixes and suffixes by media type, such as
<style>…</style>
.Does not perform any translation markups.
- Specified by:
style
in interfaceStyle
- Returns:
- A new writer that may be used for arbitrary CSS stylesheet.
This writer must be closed for completed calls to
MediaEncoder.writeSuffixTo(java.lang.Appendable, boolean)
. - Throws:
IOException
-
nbsp
Description copied from interface:Text
- Specified by:
nbsp
in interfaceText
- Returns:
this
writer- Throws:
IOException
- See Also:
-
nbsp
Description copied from interface:Text
Writes the given number of non-breaking space characters.- Specified by:
nbsp
in interfaceText
- Parameters:
count
- Whencount <= 0
, nothing is written.- Returns:
this
writer- Throws:
IOException
- See Also:
-
text
Description copied from interface:Text
- Specified by:
text
in interfaceText
- Returns:
this
writer- Throws:
IOException
-
text
Description copied from interface:Text
- Specified by:
text
in interfaceText
- Returns:
this
writer- Throws:
IOException
-
text
Description copied from interface:Text
- Specified by:
text
in interfaceText
- Returns:
this
writer- Throws:
IOException
-
text
Description copied from interface:Text
Writes 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:
text
in interfaceText
- Returns:
this
writer- Throws:
IOException
-
text
Description copied from interface:Text
Writes 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:
text
in interfaceText
- Returns:
this
writer- Throws:
IOException
-
text
Description copied from interface:Text
Writes 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:
text
in interfaceText
- Returns:
this
writer- Throws:
IOException
-
text
Description copied from interface:Text
Writes 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:
text
in interfaceText
- Type Parameters:
Ex
- An arbitrary exception type that may be thrown- Returns:
this
writer- Throws:
IOException
Ex
-
text
Description copied from interface:Text
Writes the given text with proper encoding.Adds prefixes and suffixes by media type, such as
"…"
.Does not perform any translation markups.
- Specified by:
text
in interfaceText
- Type Parameters:
Ex
- An arbitrary exception type that may be thrown- Returns:
this
writer- Throws:
IOException
Ex
-
url
Description copied from interface:Url
Writes the given RFC 3986 URI or RFC 3987 IRI with proper encoding.- Specified by:
url
in interfaceUrl
- Returns:
this
writer- Throws:
IOException
-
url
Description copied from interface:Url
Writes the given RFC 3986 URI or RFC 3987 IRI with proper encoding.- Specified by:
url
in interfaceUrl
- Returns:
this
writer- Throws:
IOException
-
url
Description copied from interface:Url
Writes the given RFC 3986 URI or RFC 3987 IRI with proper encoding.- Specified by:
url
in interfaceUrl
- Returns:
this
writer- Throws:
IOException
-
url
Description copied from interface:Url
Writes the given RFC 3986 URI or RFC 3987 IRI 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:
url
in interfaceUrl
- Returns:
this
writer- Throws:
IOException
-
url
Description copied from interface:Url
Writes the given RFC 3986 URI or RFC 3987 IRI 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:
url
in interfaceUrl
- Returns:
this
writer- Throws:
IOException
-
url
Description copied from interface:Url
Writes the given RFC 3986 URI or RFC 3987 IRI 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:
url
in interfaceUrl
- Returns:
this
writer- Throws:
IOException
-
url
Description copied from interface:Url
Writes the given RFC 3986 URI or RFC 3987 IRI 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:
url
in interfaceUrl
- Type Parameters:
Ex
- An arbitrary exception type that may be thrown- Returns:
this
writer- Throws:
IOException
Ex
-
url
Description copied from interface:Url
Writes the given RFC 3986 URI or RFC 3987 IRI with proper encoding.Adds prefixes and suffixes by media type, such as
"…"
.Does not perform any translation markups.
- Specified by:
url
in interfaceUrl
- Type Parameters:
Ex
- An arbitrary exception type that may be thrown- Returns:
this
writer- Throws:
IOException
Ex
-