docs: @Override
      public void dispose() throws SimpleImageException {
          super.dispose();
  
          if (needClean) {
              if (stream != null) {
                  try {
                      stream.flush();
                      stream.close();
                  } catch (IOException e) {
                      throw new SimpleImageException(e);
                  }
              }
          }
  
          this.stream = null;
          this.image = null;
          this.param = null;
      }