package com.socrata.datasync; import com.socrata.datasync.job.IntegrationJob; import com.socrata.datasync.config.userpreferences.UserPreferencesLib; import com.socrata.datasync.job.JobStatus; import java.io.IOException; /** * Author: Adrian Laurenzi * Date: 6/13/14 */ public class LibraryExample { public static void main(String[] args) throws IOException { // Establish "global" configuration (User Preferences) UserPreferencesLib userPrefs = new UserPreferencesLib(); userPrefs.setDomain("https://some.domain.org"); // must include the 'https://' userPrefs.setUsername("USERNAME"); userPrefs.setPassword("PASSWORD"); userPrefs.setAppToken("APP_TOKEN"); // Optional uUser Preferences //userPrefs.setAdminEmail("admin@domain.org"); //userPrefs.setEmailUponError(true); //userPrefs.setLogDatasetID("abcd-1234"); //userPrefs.setOutgoingMailServer("host.com"); //userPrefs.setSmtpPort("427"); //userPrefs.setSslPort("225"); //userPrefs.setSmtpUsername("someone@host.com"); //userPrefs.setSmtpPassword("SMTP_PASSWORD"); //userPrefs.setFilesizeChunkingCutoffMB("10"); //userPrefs.setNumRowsPerChunk("10000"); // Set up job parameters IntegrationJob jobToRun = new IntegrationJob(userPrefs); jobToRun.setDatasetID("abcd-1234"); jobToRun.setFileToPublish("data_file.csv"); jobToRun.setPublishMethod(PublishMethod.replace); jobToRun.setFileToPublishHasHeaderRow(true); // Uncommend to do replace via FTP (SmartUpdate) //jobToRun.setPublishViaFTP(true); //jobToRun.setPathToFTPControlFile("control.json"); JobStatus status = jobToRun.run(); if(status.isError()) { System.err.println("Job failed: " + status.getMessage()); } else { System.out.println("Job ran successfully!"); } } }