3 * An interface for compression classes
5 * @author Roland Haeder <roland __NOSPAM__ [at] __REMOVE_ME__ mxchange [dot] org>
8 interface Compressor extends FrameworkInterface {
10 * A compression stream
12 * @param $streamData Mixed non-object stream data
13 * @return $streamData The compressed stream data
14 * @throws InvalidObjectException If the stream is an object
16 function compressStream ($streamData);
19 * A decompression stream
21 * @param $streamData Mixed non-object stream data
22 * @return $streamData The decompressed stream data
23 * @throws InvalidObjectException If the stream is an object
25 function decompressStream ($streamData);
28 * Getter for the file extension of this compressor
30 * @return $string The compressor's file extension
32 function getCompressorExtension ();