code: public DbxEntry.File chunkedUploadFinish(String targetPath, DbxWriteMode writeMode, String uploadId)
          throws DbxException
      {
          DbxPathV1.checkArgNonRoot("targetPath", targetPath);
  
          String apiPath = "1/commit_chunked_upload/auto" + targetPath;
  
          String[] params = {
              "upload_id", uploadId,
          };
          params = LangUtil.arrayConcat(params, writeMode.params);
  
          return doPost(host.getContent(), apiPath, params, null, new DbxRequestUtil.ResponseHandler<DbxEntry.File>() {
              @Override
              public DbxEntry.File handle(HttpRequestor.Response response) throws DbxException
              {
                  if (response.getStatusCode() != 200) throw DbxRequestUtil.unexpectedStatus(response);
                  return DbxRequestUtil.readJsonFromResponse(DbxEntry.File.Reader, response);
              }
          });
      }
docs: Creates a file in the user's Dropbox at the given path, with file data previously uploaded
  via {@link #chunkedUploadFirst} and {@link #chunkedUploadAppend}.
  
  @param targetPath
  The path to the file on Dropbox (see {@link DbxPathV1}).  If a file at
  that path already exists on Dropbox, then the {@code writeMode} parameter
  will determine what happens.
  
  @param writeMode
  Determines what to do if there's already a file at the given {@code targetPath}.
  
  @param uploadId
  The identifier returned by {@link #chunkedUploadFirst} to identify the uploaded data.