XML 形式のログファイルに対してそのテキスト部分を出力するための outputStream クラス (See: outputStream).
XML のタグに当たる文字を escape する機能を提供している.
((cite: hotspot/src/share/vm/utilities/xmlstream.hpp))
// Sub-stream for writing quoted text, as opposed to markup.
// Characters written to this stream are subject to quoting,
// as '<' => "<", etc.
class xmlTextStream : public outputStream {
各 xmlStream オブジェクトの _text_init フィールドに(のみ)格納されている.
(xmlStream クラスの _text_init フィールドは, ポインタ型ではなく実体なので, xmlStream オブジェクトの生成時に一緒に生成される)
内部の処理的には, xmlStream オブジェクトの単なるラッパーといった感じ.
(内部には, 移譲先として使用する xmlStream オブジェクトを保持している)
((cite: hotspot/src/share/vm/utilities/xmlstream.hpp))
xmlStream* _outer_xmlStream;
(スーパークラスである outputStream クラスのメソッド以外で) 定義されているメソッドは以下の2つだけ.
どちらも xmlStream オブジェクトの flush() メソッド, write_text() メソッドを呼び出すだけ.
((cite: hotspot/src/share/vm/utilities/xmlstream.hpp))
virtual void flush(); // _outer.flush();
virtual void write(const char* str, size_t len); // _outer->write_text()
See: here for details
XML 形式のログファイルに書き出すタイプの outputStream (See: outputStream).
((cite: hotspot/src/share/vm/utilities/xmlstream.hpp))
// Output stream for writing XML-structured logs.
// To write markup, use special calls elem, head/tail, etc.
// Use the xmlStream::text() stream to write unmarked text.
// Text written that way will be quoted as necessary using '<', etc.
// Characters written directly to an xmlStream via print_cr, etc.,
// are directly written to the encapsulated stream, xmlStream::out().
// This can be used to produce markup directly, character by character.
// (Such writes are not checked for markup syntax errors.)
class xmlStream : public outputStream {
以下の箇所に(のみ)格納されている.
以下の箇所で(のみ)生成されている.
See: here for details
This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.