public class ICalRawWriter extends Object implements Closeable, Flushable
Constructor and Description |
---|
ICalRawWriter(Writer writer,
ICalVersion version)
Creates an iCalendar raw writer.
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Closes the underlying
Writer object. |
void |
flush()
Flushes the underlying
Writer object. |
FoldedLineWriter |
getFoldedLineWriter()
Gets the writer that this object wraps.
|
ICalVersion |
getVersion()
Gets the iCalendar version that the writer is adhering to.
|
boolean |
isCaretEncodingEnabled()
Gets whether the writer will apply circumflex accent encoding on
parameter values (disabled by default).
|
void |
setCaretEncodingEnabled(boolean enable)
Sets whether the writer will apply circumflex accent encoding on
parameter values (disabled by default).
|
void |
setVersion(ICalVersion version)
Sets the iCalendar version that the writer should adhere to.
|
void |
writeBeginComponent(String componentName)
Writes a property marking the beginning of a component (in other words,
writes a "BEGIN:NAME" property).
|
void |
writeEndComponent(String componentName)
Writes a property marking the end of a component (in other words, writes
a "END:NAME" property).
|
void |
writeProperty(String propertyName,
ICalParameters parameters,
String value)
Writes a property to the iCalendar data stream.
|
void |
writeProperty(String propertyName,
String value)
Writes a property to the iCalendar data stream.
|
void |
writeVersion()
Writes a "VERSION" property, based on the iCalendar version that the
writer is adhering to.
|
public ICalRawWriter(Writer writer, ICalVersion version)
writer
- the writer to the data streamversion
- the version to adhere topublic FoldedLineWriter getFoldedLineWriter()
public boolean isCaretEncodingEnabled()
Gets whether the writer will apply circumflex accent encoding on parameter values (disabled by default). This escaping mechanism allows for newlines and double quotes to be included in parameter values.
When disabled, the writer will replace newlines with spaces and double quotes with single quotes.
Character | Replacement (when disabled) |
Replacement (when enabled) |
---|---|---|
" |
' |
^' |
newline | space |
^n |
^ |
^ |
^^ |
Example:
GEO;X-ADDRESS="Pittsburgh Pirates^n115 Federal St^nPitt sburgh, PA 15212":40.446816;80.00566
public void setCaretEncodingEnabled(boolean enable)
Sets whether the writer will apply circumflex accent encoding on parameter values (disabled by default). This escaping mechanism allows for newlines and double quotes to be included in parameter values.
When disabled, the writer will replace newlines with spaces and double quotes with single quotes.
Character | Replacement (when disabled) |
Replacement (when enabled) |
---|---|---|
" |
' |
^' |
newline | space |
^n |
^ |
^ |
^^ |
Example:
GEO;X-ADDRESS="Pittsburgh Pirates^n115 Federal St^nPitt sburgh, PA 15212":40.446816;80.00566
enable
- true to use circumflex accent encoding, false not topublic ICalVersion getVersion()
public void setVersion(ICalVersion version)
version
- the versionpublic void writeBeginComponent(String componentName) throws IOException
componentName
- the component name (e.g. "VEVENT")IOException
- if there's an I/O problempublic void writeEndComponent(String componentName) throws IOException
componentName
- the component name (e.g. "VEVENT")IOException
- if there's an I/O problempublic void writeVersion() throws IOException
IOException
- if there's an I/O problempublic void writeProperty(String propertyName, String value) throws IOException
propertyName
- the property name (e.g. "VERSION")value
- the property value (e.g. "2.0")IllegalArgumentException
- if the property name contains invalid
charactersIOException
- if there's an I/O problempublic void writeProperty(String propertyName, ICalParameters parameters, String value) throws IOException
propertyName
- the property name (e.g. "VERSION")parameters
- the property parametersvalue
- the property value (e.g. "2.0")IllegalArgumentException
- if the property name contains invalid
charactersIOException
- if there's an I/O problempublic void flush() throws IOException
Writer
object.flush
in interface Flushable
IOException
- if there's a problem flushing the writerpublic void close() throws IOException
Writer
object.close
in interface Closeable
close
in interface AutoCloseable
IOException
Copyright © 2013-2015 Michael Angstadt. All Rights Reserved.