code: @Override
      public final void to(String path, WriteCache cache) throws IOException {
          if (cache == null) {
              to(path);
              return;
          }
          if (path == null) throw new NullPointerException();
          FileOutputStream fos = null;
          try {
              fos = new FileOutputStream(new File(path));
              ObjectOutputStream oos = new ObjectOutputStream(fos);
              to(oos, cache);
          } finally {
              if (fos != null) fos.close();
          }
      }
docs: {@inheritDoc}