public synchronized void setDBDecoderFactory(@Nullable final DBDecoderFactory factory) {
        this.decoderFactory = factory;

        //Are we are using default factory?
        // If yes then we can use CollectibleDBObjectCodec directly, otherwise it will be wrapped.
        Decoder<DBObject> decoder = (factory == null || factory == DefaultDBDecoder.FACTORY)
                                    ? getDefaultDBObjectCodec()
                                    : new DBDecoderAdapter(factory.create(), this, getBufferPool());
        this.objectCodec = new CompoundDBObjectCodec(objectCodec.getEncoder(), decoder);
    }
public synchronized void setDBDecoderFactory(@Nullable final DBDecoderFactory factory) {
        this.decoderFactory = factory;

        
        
        Decoder<DBObject> decoder = (factory == null || factory == DefaultDBDecoder.FACTORY)
                                    ? getDefaultDBObjectCodec()
                                    : new DBDecoderAdapter(factory.create(), this, getBufferPool());
        this.objectCodec = new CompoundDBObjectCodec(objectCodec.getEncoder(), decoder);
    }
public synchronized void setDBDecoderFactory ( @ Nullable final DBDecoderFactory factory ) { this . decoderFactory = factory ; //Are we are using default factory? // If yes then we can use CollectibleDBObjectCodec directly, otherwise it will be wrapped. Decoder < DBObject > decoder = ( factory == null || factory == DefaultDBDecoder . FACTORY ) ? getDefaultDBObjectCodec ( ) : new DBDecoderAdapter ( factory . create ( ) , this , getBufferPool ( ) ) ; this . objectCodec = new CompoundDBObjectCodec ( objectCodec . getEncoder ( ) , decoder ) ; }
Set a custom decoder factory for this collection.  Set to null to use the default from MongoOptions.

@param factory the factory to set.
Set a custom decoder factory for this collection . Set to null to use the default from MongoOptions .