public void close() {
    if (deserializers.size() == 0) return;

    Collection<Deserializer> clone = new ArrayList<Deserializer>(deserializers.values());

    deserializers.clear();

    for (Deserializer deserializer : clone) {
      try {
        deserializer.close();
      } catch (IOException exception) {
        // do nothing
      }
    }
  }