/*
* This code was generated by AWS Flow Framework Annotation Processor.
* Refer to Amazon Simple Workflow Service documentation at http://aws.amazon.com/documentation/swf
*
* Any changes made directly to this file will be lost when
* the code is regenerated.
*/
package com.eucalyptus.simplequeue.workflow;
import com.amazonaws.services.simpleworkflow.flow.ActivitiesClientBase;
import com.amazonaws.services.simpleworkflow.flow.ActivitySchedulingOptions;
import com.amazonaws.services.simpleworkflow.flow.DataConverter;
import com.amazonaws.services.simpleworkflow.flow.core.Promise;
import com.amazonaws.services.simpleworkflow.flow.generic.GenericActivityClient;
import com.amazonaws.services.simpleworkflow.model.ActivityType;
public class CloudWatchActivitiesClientImpl extends ActivitiesClientBase implements CloudWatchActivitiesClient {
public CloudWatchActivitiesClientImpl() {
this(null, new com.amazonaws.services.simpleworkflow.flow.JsonDataConverter(), null);
}
public CloudWatchActivitiesClientImpl(GenericActivityClient genericClient) {
this(genericClient, new com.amazonaws.services.simpleworkflow.flow.JsonDataConverter(), null);
}
public CloudWatchActivitiesClientImpl(GenericActivityClient genericClient,
DataConverter dataConverter, ActivitySchedulingOptions schedulingOptions) {
super(genericClient, dataConverter, schedulingOptions);
}
@Override
public final Promise<java.util.Collection<java.lang.String>> getPartitions() {
return getPartitionsImpl((ActivitySchedulingOptions)null);
}
@Override
public final Promise<java.util.Collection<java.lang.String>> getPartitions(Promise<?>... waitFor) {
return getPartitionsImpl((ActivitySchedulingOptions)null, waitFor);
}
@Override
public final Promise<java.util.Collection<java.lang.String>> getPartitions(ActivitySchedulingOptions optionsOverride, Promise<?>... waitFor) {
return getPartitionsImpl(optionsOverride, waitFor);
}
@SuppressWarnings({ "unchecked", "rawtypes" })
protected Promise<java.util.Collection<java.lang.String>> getPartitionsImpl(final ActivitySchedulingOptions optionsOverride, Promise<?>... waitFor) {
ActivityType _activityType = new ActivityType();
_activityType.setName("CloudWatchActivities.getPartitions");
_activityType.setVersion("2.0");
Promise[] _input_ = new Promise[0];
return (Promise)scheduleActivity(_activityType, _input_, optionsOverride, java.util.Collection.class, waitFor);
}
@Override
public final Promise<Void> performWork(String partitionInfo) {
return performWorkImpl(Promise.asPromise(partitionInfo), (ActivitySchedulingOptions)null);
}
@Override
public final Promise<Void> performWork(String partitionInfo, Promise<?>... waitFor) {
return performWorkImpl(Promise.asPromise(partitionInfo), (ActivitySchedulingOptions)null, waitFor);
}
@Override
public final Promise<Void> performWork(String partitionInfo, ActivitySchedulingOptions optionsOverride, Promise<?>... waitFor) {
return performWorkImpl(Promise.asPromise(partitionInfo), optionsOverride, waitFor);
}
@Override
public final Promise<Void> performWork(Promise<String> partitionInfo) {
return performWorkImpl(partitionInfo, (ActivitySchedulingOptions)null);
}
@Override
public final Promise<Void> performWork(Promise<String> partitionInfo, Promise<?>... waitFor) {
return performWorkImpl(partitionInfo, (ActivitySchedulingOptions)null, waitFor);
}
@Override
public final Promise<Void> performWork(Promise<String> partitionInfo, ActivitySchedulingOptions optionsOverride, Promise<?>... waitFor) {
return performWorkImpl(partitionInfo, optionsOverride, waitFor);
}
@SuppressWarnings({ "unchecked", "rawtypes" })
protected Promise<Void> performWorkImpl(final Promise<String> partitionInfo, final ActivitySchedulingOptions optionsOverride, Promise<?>... waitFor) {
ActivityType _activityType = new ActivityType();
_activityType.setName("CloudWatchActivities.performWork");
_activityType.setVersion("2.0");
Promise[] _input_ = new Promise[1];
_input_[0] = partitionInfo;
return (Promise)scheduleActivity(_activityType, _input_, optionsOverride, Void.class, waitFor);
}
}