Java 用の aws sdk を使用してルールを作成しようとしています (スタンドアロンの aws iot Java sdk ではありません)。
これまでのところ、これらを行ってきました
public class Application extends Controller {
static AWSIotClient awsIotClient;
private static void init() {
AWSCredentials credentials = null;
try {
credentials = new ProfileCredentialsProvider().getCredentials();
} catch (Exception e) {
throw new AmazonClientException(
"Cannot load the credentials from the credential profiles file. " +
"Please make sure that your credentials file is at the correct " +
"location (~/.aws/credentials), and is in valid format.",
e);
}
awsIotClient = new AWSIotClient(credentials);
Region usEast1 = Region.getRegion(Regions.US_EAST_1);
awsIotClient.setRegion(usEast1);
Logger.info("Creds init");
}
public static Result index() {
init();
CreateTopicRuleRequest another_test = new CreateTopicRuleRequest();
another_test.setRuleName("test");
TopicRulePayload topicRulePayload = new TopicRulePayload();
topicRulePayload.setDescription("A test rule");
topicRulePayload.setSql("SELECT state.reported.turbineStatus FROM '$aws/things/turbine1/shadow/update/accepted' WHERE state.reported.turbineStatus=true");
topicRulePayload.setActions(); // stuck here
another_test.setTopicRulePayload(topicRulePayload);
CreateTopicRuleResult test = awsIotClient.createTopicRule(another_test);
return ok(index.render("iot"));
}
}
上記のコードでは、私はその部分で立ち往生していますtopicRulePayload.setActions();
それにアクションを設定するにはどうすればよいですか?ソースコードを調べたところ、コレクションを使用していることがわかりました。