private void copyMissingLogs(
     JwList<String> missingFilenames, String targetPath, String sourcePath) {
   for (String e : missingFilenames) {
     String sourceFilename = JwUtility.joinPath(sourcePath, e);
     String targetFilename = JwUtility.joinPath(targetPath, e);
     File sourceFile = new File(sourceFilename);
     File targetFile = new File(targetFilename);
     JwUtility.copyFile(sourceFile, targetFile);
   }
 }
 public JwSqlUpdate composeUpdate(AcUploadDownloadFile e) {
   JwSqlUpdate st = createUpdate();
   st.setTable(TABLE);
   st.setValue(PATH, JwUtility.truncate(e.getPath(), PATH_MAX_LENGTH, true));
   st.setValue(FILE_NAME, JwUtility.truncate(e.getFileName(), FILE_NAME_MAX_LENGTH, true));
   st.setValue(DESCRIPTION, JwUtility.truncate(e.getDescription(), DESCRIPTION_MAX_LENGTH, true));
   st.setValue(CREATED_UTC_TS, e.getCreatedUtcTs());
   st.where().isEqual(ID, e.getId());
   return st;
 }
 private void ftpMissingLogs(
     JwList<String> missingFilenames, String targetPath, String sourcePath) {
   JwFtpClient logFtpClient = null;
   try {
     logFtpClient = AcFtpClient.getLogFtpClient();
     for (String e : missingFilenames) {
       String sourceFilename = JwUtility.joinPath(sourcePath, e);
       String targetFilename = JwUtility.joinPath(targetPath, e);
       logFtpClient.put(targetFilename, sourceFilename);
     }
   } finally {
     if (logFtpClient != null) logFtpClient.close();
   }
 }
  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 JwList<AcDomesticCandidateRouteTmp> getAllWhere(String whereClause, Integer rowLimit) {
   JwSqlSelect st = getSelect();
   if (JwUtility.hasValue(whereClause)) st.where().setCondition(whereClause);
   return composeList(st, rowLimit);
 }
 public JwList<AcMobileProfile> getAllWhere(String whereClause, Integer rowLimit) {
   JwSqlSelect st = getSelect();
   if (JwUtility.hasValue(whereClause)) st.where().setCondition(whereClause);
   return composeList(st, rowLimit);
 }
 private void initializeLocalTargetDirectory() {
   File f = new File(getTargetLogPath());
   if (f.exists()) return;
   JwUtility.createDirectory(f);
 }
 private String getTargetLogPath() {
   return JwUtility.joinPath(getTargetRootPath(), getLocalHostname());
 }
 private String getLocalHostname() {
   return JwUtility.getCanonicalLocalHostname();
 }