Files
py_enjoy/pyenjoy/template/io/WriterBuffer.py
2026-02-27 17:10:54 +08:00

54 lines
1.6 KiB
Python

#!/usr/bin/env python3.9
# -*- coding: utf-8 -*-
"""
JFinal WriterBuffer - Writer Buffer
"""
class WriterBuffer:
"""Writer buffer for template output"""
def __init__(self):
"""Initialize writer buffer"""
self._encoding = "UTF-8"
self._buffer_size = 8192
self._reentrant_buffer_size = 1024
self._encoder_factory = None
def set_encoding(self, encoding: str):
"""Set encoding"""
self._encoding = encoding
if self._encoder_factory:
# Set encoding on encoder factory if available
pass
def set_buffer_size(self, buffer_size: int):
"""Set buffer size"""
self._buffer_size = buffer_size
def set_reentrant_buffer_size(self, reentrant_buffer_size: int):
"""Set reentrant buffer size"""
self._reentrant_buffer_size = reentrant_buffer_size
def set_encoder_factory(self, encoder_factory):
"""Set encoder factory"""
self._encoder_factory = encoder_factory
def get_encoding(self) -> str:
"""Get encoding"""
return self._encoding
def get_buffer_size(self) -> int:
"""Get buffer size"""
return self._buffer_size
def get_reentrant_buffer_size(self) -> int:
"""Get reentrant buffer size"""
return self._reentrant_buffer_size
def get_encoder_factory(self):
"""Get encoder factory"""
return self._encoder_factory
def __repr__(self) -> str:
return f"WriterBuffer(encoding={self._encoding}, buffer_size={self._buffer_size})"