Skip to content

Releases: fleeksoft/fleeksoft-io

0.0.2

30 Nov 12:53
Compare
Choose a tag to compare
  • Add okio extension
    Introduced support for Okio extension to enhance functionality and interoperability with Okio-based workflows.

  • Add URI module
    Implemented a new module for handling URI functionalities in a Kotlin Multiplatform context.

  • Add Charset Standard and Extended modules
    Integrated modules for standard and extended Charset support to provide comprehensive charset handling.

  • Bump kotlinx-io to version 0.6.0

  • Bump Kotlin version to 2.1.0

0.0.1

02 Nov 12:43
Compare
Choose a tag to compare

Core IO Module (com.fleeksoft.io:core-io)

This module delivers foundational classes essential for efficient buffer and charset management.

  • Buffer: A base container for handling data, designed to be compatible with java.nio.Buffer.
  • ByteBuffer & CharBuffer: Specialized buffers for byte and character data.
  • CharBufferFactory: A utility class for generating instances of CharBuffer and ByteBuffer.
  • Closeable: An interface for managing resources that need closing after use.
  • Readable: An interface for reading data into CharBuffer.

Main IO Module (com.fleeksoft.io:io)

This module provides key classes for managing character and byte stream reading.

  • Reader & InputStream: Abstract classes for character and raw byte stream reading.
  • ByteArrayInputStream: Facilitates the creation of InputStream from byte arrays.
  • InputStreamReader: Bridges the gap between byte and character streams.
  • BufferedReader: Wraps character streams for efficient reading.
  • StringReader & CharArrayReader: Read from strings and character arrays, respectively.
  • FilterInputStream & FilterReader: Decorators for additional stream functionality.
  • PushbackReader: Supports pushing back characters for re-reading.
  • Charset: Facilitates text encoding and decoding, leveraging com.fleeksoft.charset.
  • Extension Functions: Enhances usability with built-in functions for handling streams:
    • String.byteInputStream()
    • ByteArray.inputStream()
    • InputStream.reader()
    • Reader.buffered(), and more.

kotlinx-io Integration (com.fleeksoft.io:kotlinx-io)

This module ensures seamless interoperation with kotlinx-io, extending its capabilities.

  • Source.asInputStream(): Converts a Source into an InputStream.
  • RawSource.asInputStream(): Converts a RawSource into an InputStream.
  • InputStream.asSource(): Transforms an InputStream into a RawSource.