/*
* Copyright 2008-2010 Plura Processing, LP
*/
package test;
import java.util.Calendar;
import com.pluraprocessing.node.affiliate.desktop.JavaPluraConnector;
import com.pluraprocessing.node.exception.PluraIOException;
import com.pluraprocessing.node.exception.PluraInitializationException;
import com.pluraprocessing.node.exception.PluraIntervalException;
import com.pluraprocessing.node.exception.PluraLoadException;
import com.pluraprocessing.node.exception.PluraParameterException;
import com.pluraprocessing.node.exception.PluraStateException;
public class TestDesktopInterface {
/*
* This method tests Sample Client Tracking Code JavaPluraConnector functionality for Java Applications and Java Signed Applets
*/
public static void main(String[] args) {
JavaPluraConnector plura = null;
try {
//instantiate new JavaPluraConnector with affiliate id = 00000000-0000-0000-0000-000000000000, cpu percentage = .5,
//bandwidth percentage = .8, client id = "test", max plura threads = 4 (to use 4 cores on a computer)
plura = new JavaPluraConnector("00000000-0000-0000-0000-000000000000", .5, .8, "test", 4);
Calendar cal = Calendar.getInstance();
cal.set(2008, 10, 1);
System.out.println("get work units for client id 'test'");
int numberWorkUnits = plura.getWorkUnitsCompletedByClient("test", cal); //get the number of work units that client 'test' did on October 1, 2008
giveUserReward(numberWorkUnits, "test"); //reward client 'test' for doing work
}
catch (PluraInitializationException e) {
e.printStackTrace(System.out);
}
catch (InterruptedException e) {
e.printStackTrace(System.out);
}
catch (PluraLoadException e) {
e.printStackTrace(System.out);
}
catch (PluraParameterException e) {
e.printStackTrace(System.out);
}
catch (PluraIntervalException e) {
e.printStackTrace(System.out);
}
catch (PluraIOException e) {
e.printStackTrace(System.out);
}
catch (PluraStateException e) {
e.printStackTrace(System.out);
}
finally {
if (plura != null) {
plura.stop(); //Stop Plura before the application exits (even if it exits on error) so that Plura threads are not abandoned.
}
}
}
private static void giveUserReward(int numberWorkUnits, String clientId) {
//reward user with clientId for doing numberWorkUnits of Plura work
}
}