code: public static Object fromStorage(Object stored, Encoder encoder, Wrapper wrapper) {
        if (encoder == null || wrapper == null) {
           throw new IllegalArgumentException("Both Encoder and Wrapper must be provided!");
        }
        if (stored == null) return null;
        return encoder.fromStorage(wrapper.unwrap(stored));
     }
docs: Decode object from storage format.
  
  @param stored  Object in the storage format.
  @param encoder the {@link Encoder} used for data conversion.
  @param wrapper the {@link Wrapper} used to decorate the converted data.
  @return Object decoded and unwrapped.