public void register ( final Class < ? extends OCompression > compression ) { try { final OCompression tempInstance = compression . newInstance ( ) ; final String name = tempInstance . name ( ) ; if ( compressions . containsKey ( name ) ) throw new IllegalArgumentException ( "Compression with name '" + name + "' was already registered" ) ; if ( compressionClasses . containsKey ( tempInstance . name ( ) ) ) throw new IllegalArgumentException ( "Compression with name '" + name + "' was already registered" ) ; compressionClasses . put ( name , compression ) ; } catch ( Exception e ) { OLogManager . instance ( ) . error ( this , "Cannot register storage compression algorithm '%s'" , e , compression ) ; } }
Registers a stateless implementations the same instance will be shared on all the storages .