public JwSqlInsert _checkAndComposeInsert(JwList<AcUploadDownloadFile> v, boolean insertIds) {
    for (AcUploadDownloadFile e : v) {
      defaultUpdateCount(e);
      e.validate();
      verifyNoMatching(e);
    }

    JwSqlInsert st = createInsert();
    st.setTable(TABLE);
    populateInsertColumns(st, insertIds);

    for (AcUploadDownloadFile e : v) {
      st.startNewRow();
      if (insertIds) st.addIntegerValue(e.getId());
      st.addStringValue(JwUtility.truncate(e.getPath(), PATH_MAX_LENGTH, true));
      st.addStringValue(JwUtility.truncate(e.getFileName(), FILE_NAME_MAX_LENGTH, true));
      st.addStringValue(JwUtility.truncate(e.getDescription(), DESCRIPTION_MAX_LENGTH, true));
      st.addTimestampValue(e.getCreatedUtcTs());
    }
    return st;
  }
 public void update(AcUploadDownloadFile e) {
   e.validate();
   JwSqlUpdate st = composeUpdate(e);
   int i = execute(st);
   if (i != 1) error("Unable to update AcUploadDownloadFile.  Rows updated: %s.", i);
 }