Source code for tsdat.io.handlers

from .base import FileHandler
from .readers import NetCDFReader, CSVReader, ParquetReader, ZarrReader
from .writers import (
    NetCDFWriter,
    SplitNetCDFWriter,
    CSVWriter,
    ParquetWriter,
    ZarrWriter,
)

__all__ = [
    "NetCDFHandler",
    "SplitNetCDFHandler",
    "CSVHandler",
    "ParquetHandler",
    "ZarrHandler",
]


[docs]class NetCDFHandler(FileHandler):
[docs] extension: str = ".nc"
[docs] reader: NetCDFReader = NetCDFReader()
[docs] writer: NetCDFWriter = NetCDFWriter()
[docs]class SplitNetCDFHandler(FileHandler):
[docs] extension: str = ".nc"
[docs] reader: NetCDFReader = NetCDFReader()
[docs] writer: SplitNetCDFWriter = SplitNetCDFWriter()
[docs]class CSVHandler(FileHandler):
[docs] extension: str = ".csv"
[docs] reader: CSVReader = CSVReader()
[docs] writer: CSVWriter = CSVWriter()
[docs]class ParquetHandler(FileHandler):
[docs] extension: str = ".parquet"
[docs] reader: ParquetReader = ParquetReader()
[docs] writer: ParquetWriter = ParquetWriter()
[docs]class ZarrHandler(FileHandler):
[docs] extension: str = ".zarr"
[docs] reader: ZarrReader = ZarrReader()
[docs] writer: ZarrWriter = ZarrWriter()