code: @Override
    public void close() {
      if (mClosed.getAndSet(true)) {
        return;
      }
      try {
        mLocalOutputStream.close();
        mKodoClient.uploadFile(mKey, mFile);
      } catch (Exception e) {
        e.printStackTrace();
      }
      mFile.delete();
    }
docs: Closes this output stream. When an output stream is closed, the local temporary file is
  uploaded to KODO Service. Once the file is uploaded, the temporary file is deleted.