Package net.kano.joscar

Provides various tools and interfaces used throughout the joscar library.


Interface Summary
LiveWritable Provides an interface for an object that can write itself in some form or another to a stream.
Writable Extends the interface for a LiveWritable to provide an interface for objects which can write themselves in some format or another to a stream and know the length of that data beforehand.

Class Summary
BinaryTools Provides a set of methods for converting binary data sent over an OSCAR connection to various logical structures.
ByteBlock Provides a read-only interface to an underlying block of data.
CopyOnWriteArrayList This class implements a variant of java.util.ArrayList in which all mutative operations (add, set, and so on) are implemented by making a fresh copy of the underlying array.
CopyOnWriteArraySet This class implements a java.util.Set that uses a CopyOnWriteArrayList for all of its operations.
DefensiveTools A set of utilities for ensuring the validity (and non-nullness) of arguments passed into methods or constructors.
EncodedStringInfo A simple structure containing a block of data and the name of the charset that was used to encode that block of data from a text string.
FileWritable Provides an efficient means of using the contents of a file as a LiveWritable.
ImEncodedString A class representing a string encoded using "IM encoding," or the method of unicode encoding used when sending instant messages.
ImEncodingParams Represents a set of IM encoding parameters that define the way an IM-encoded string is encoded and decoded.
JoscarTools Provides a set of methods and fields designed for retrieving information about the joscar library itself.
MinimalEncoder Provides a means of encoding a set of strings in the "smallest" encoding possible.
MiscTools Provides a set of miscellaneous tools used throughout joscar.
OscarTools Provides a set of tools for performing OSCAR-specific functions.
OscarTools.HttpHeaderInfo A structure containing HTTP header information along with the binary data sent in the HTTP stream.
SeqNum Represents a sequence of numbers within a given range and allows for automatically-wrapping sequential traversal of such a sequence.
StringBlock A very simple but very common data structure containing a string and the total size of the structure that held that string (including the string itself).

Package net.kano.joscar Description

Provides various tools and interfaces used throughout the joscar library.