Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions components/camel-aws/camel-aws2-timestream/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,11 @@
<version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<scope>test</scope>
</dependency>
</dependencies>

</project>
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,9 @@ private void describeEndpoints(TimestreamQueryClient timestreamQueryClient, Exch
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"describeEndpoints operation requires DescribeEndpointsRequest in POJO mode");
}
} else {
DescribeEndpointsRequest.Builder builder = DescribeEndpointsRequest.builder();
Expand Down Expand Up @@ -143,6 +146,9 @@ private void createScheduledQuery(TimestreamQueryClient timestreamQueryClient, E
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"createScheduledQuery operation requires CreateScheduledQueryRequest in POJO mode");
}
} else {
CreateScheduledQueryRequest.Builder builder = CreateScheduledQueryRequest.builder();
Expand Down Expand Up @@ -263,6 +269,9 @@ private void deleteScheduledQuery(TimestreamQueryClient timestreamQueryClient, E
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"deleteScheduledQuery operation requires DeleteScheduledQueryRequest in POJO mode");
}
} else {
DeleteScheduledQueryRequest.Builder builder = DeleteScheduledQueryRequest.builder();
Expand Down Expand Up @@ -299,6 +308,9 @@ private void executeScheduledQuery(TimestreamQueryClient timestreamQueryClient,
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"executeScheduledQuery operation requires ExecuteScheduledQueryRequest in POJO mode");
}
} else {
ExecuteScheduledQueryRequest.Builder builder = ExecuteScheduledQueryRequest.builder();
Expand Down Expand Up @@ -345,6 +357,9 @@ private void updateScheduledQuery(TimestreamQueryClient timestreamQueryClient, E
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"updateScheduledQuery operation requires UpdateScheduledQueryRequest in POJO mode");
}
} else {
UpdateScheduledQueryRequest.Builder builder = UpdateScheduledQueryRequest.builder();
Expand Down Expand Up @@ -385,6 +400,9 @@ private void describeScheduledQuery(TimestreamQueryClient timestreamQueryClient,
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"describeScheduledQuery operation requires DescribeScheduledQueryRequest in POJO mode");
}
} else {
DescribeScheduledQueryRequest.Builder builder = DescribeScheduledQueryRequest.builder();
Expand Down Expand Up @@ -415,6 +433,9 @@ private void listScheduledQueries(TimestreamQueryClient timestreamQueryClient, E
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"listScheduledQueries operation requires ListScheduledQueriesRequest in POJO mode");
}
} else {
ListScheduledQueriesRequest.Builder builder = ListScheduledQueriesRequest.builder();
Expand Down Expand Up @@ -449,6 +470,9 @@ private void prepareQuery(TimestreamQueryClient timestreamQueryClient, Exchange
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"prepareQuery operation requires PrepareQueryRequest in POJO mode");
}
} else {
PrepareQueryRequest.Builder builder = PrepareQueryRequest.builder();
Expand Down Expand Up @@ -488,6 +512,9 @@ private void query(TimestreamQueryClient timestreamQueryClient, Exchange exchang
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"query operation requires QueryRequest in POJO mode");
}
} else {
QueryRequest.Builder builder = QueryRequest.builder();
Expand Down Expand Up @@ -527,6 +554,9 @@ private void cancelQuery(TimestreamQueryClient timestreamQueryClient, Exchange e
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"cancelQuery operation requires CancelQueryRequest in POJO mode");
}
} else {
CancelQueryRequest.Builder builder = CancelQueryRequest.builder();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,9 @@ private void describeEndpoints(TimestreamWriteClient timestreamWriteClient, Exch
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"describeEndpoints operation requires DescribeEndpointsRequest in POJO mode");
}
} else {
DescribeEndpointsRequest.Builder builder = DescribeEndpointsRequest.builder();
Expand Down Expand Up @@ -149,6 +152,9 @@ private void createBatchLoadTask(TimestreamWriteClient timestreamWriteClient, Ex
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"createBatchLoadTask operation requires CreateBatchLoadTaskRequest in POJO mode");
}
} else {
CreateBatchLoadTaskRequest.Builder builder = CreateBatchLoadTaskRequest.builder();
Expand Down Expand Up @@ -210,6 +216,9 @@ private void describeBatchLoadTask(TimestreamWriteClient timestreamWriteClient,
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"describeBatchLoadTask operation requires DescribeBatchLoadTaskRequest in POJO mode");
}
} else {
DescribeBatchLoadTaskRequest.Builder builder = DescribeBatchLoadTaskRequest.builder();
Expand Down Expand Up @@ -244,6 +253,9 @@ private void resumeBatchLoadTask(TimestreamWriteClient timestreamWriteClient, Ex
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"resumeBatchLoadTask operation requires ResumeBatchLoadTaskRequest in POJO mode");
}
} else {
ResumeBatchLoadTaskRequest.Builder builder = ResumeBatchLoadTaskRequest.builder();
Expand Down Expand Up @@ -278,6 +290,9 @@ private void listBatchLoadTasks(TimestreamWriteClient timestreamWriteClient, Exc
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"listBatchLoadTasks operation requires ListBatchLoadTasksRequest in POJO mode");
}
} else {
ListBatchLoadTasksRequest.Builder builder = ListBatchLoadTasksRequest.builder();
Expand Down Expand Up @@ -315,6 +330,9 @@ private void createDatabase(TimestreamWriteClient timestreamWriteClient, Exchang
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"createDatabase operation requires CreateDatabaseRequest in POJO mode");
}
} else {
CreateDatabaseRequest.Builder builder = CreateDatabaseRequest.builder();
Expand Down Expand Up @@ -352,6 +370,9 @@ private void deleteDatabase(TimestreamWriteClient timestreamWriteClient, Exchang
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"deleteDatabase operation requires DeleteDatabaseRequest in POJO mode");
}
} else {
DeleteDatabaseRequest.Builder builder = DeleteDatabaseRequest.builder();
Expand Down Expand Up @@ -386,6 +407,9 @@ private void describeDatabase(TimestreamWriteClient timestreamWriteClient, Excha
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"describeDatabase operation requires DescribeDatabaseRequest in POJO mode");
}
} else {
DescribeDatabaseRequest.Builder builder = DescribeDatabaseRequest.builder();
Expand Down Expand Up @@ -419,6 +443,9 @@ private void updateDatabase(TimestreamWriteClient timestreamWriteClient, Exchang
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"updateDatabase operation requires UpdateDatabaseRequest in POJO mode");
}
} else {
UpdateDatabaseRequest.Builder builder = UpdateDatabaseRequest.builder();
Expand Down Expand Up @@ -456,6 +483,9 @@ private void listDatabases(TimestreamWriteClient timestreamWriteClient, Exchange
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"listDatabases operation requires ListDatabasesRequest in POJO mode");
}
} else {
ListDatabasesRequest.Builder builder = ListDatabasesRequest.builder();
Expand Down Expand Up @@ -489,6 +519,9 @@ private void createTable(TimestreamWriteClient timestreamWriteClient, Exchange e
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"createTable operation requires CreateTableRequest in POJO mode");
}
} else {
CreateTableRequest.Builder builder = CreateTableRequest.builder();
Expand Down Expand Up @@ -540,6 +573,9 @@ private void deleteTable(TimestreamWriteClient timestreamWriteClient, Exchange e
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"deleteTable operation requires DeleteTableRequest in POJO mode");
}
} else {
DeleteTableRequest.Builder builder = DeleteTableRequest.builder();
Expand Down Expand Up @@ -577,6 +613,9 @@ private void describeTable(TimestreamWriteClient timestreamWriteClient, Exchange
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"describeTable operation requires DescribeTableRequest in POJO mode");
}
} else {
DescribeTableRequest.Builder builder = DescribeTableRequest.builder();
Expand Down Expand Up @@ -614,6 +653,9 @@ private void updateTable(TimestreamWriteClient timestreamWriteClient, Exchange e
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"updateTable operation requires UpdateTableRequest in POJO mode");
}
} else {
UpdateTableRequest.Builder builder = UpdateTableRequest.builder();
Expand Down Expand Up @@ -665,6 +707,9 @@ private void listTables(TimestreamWriteClient timestreamWriteClient, Exchange ex
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"listTables operation requires ListTablesRequest in POJO mode");
}
} else {
ListTablesRequest.Builder builder = ListTablesRequest.builder();
Expand Down Expand Up @@ -702,6 +747,9 @@ private void writeRecords(TimestreamWriteClient timestreamWriteClient, Exchange
}
Message message = getMessageForResponse(exchange);
message.setBody(result);
} else {
throw new IllegalArgumentException(
"writeRecords operation requires WriteRecordsRequest in POJO mode");
}
} else {
WriteRecordsRequest.Builder builder = WriteRecordsRequest.builder();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,11 @@
import org.apache.camel.component.mock.MockEndpoint;
import org.apache.camel.test.junit6.CamelTestSupport;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
import software.amazon.awssdk.services.timestreamquery.model.*;

import static org.assertj.core.api.Assertions.assertThatThrownBy;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;

Expand Down Expand Up @@ -253,6 +256,25 @@ public void process(Exchange exchange) {
assertEquals("Query Cancelled", resultGet.cancellationMessage());
}

@ParameterizedTest
@CsvSource({
"direct:describeQueryEndpointsPojo,describeEndpoints operation requires DescribeEndpointsRequest in POJO mode",
"direct:createScheduledQueryPojo,createScheduledQuery operation requires CreateScheduledQueryRequest in POJO mode",
"direct:deleteScheduledQueryPojo,deleteScheduledQuery operation requires DeleteScheduledQueryRequest in POJO mode",
"direct:executeScheduledQueryPojo,executeScheduledQuery operation requires ExecuteScheduledQueryRequest in POJO mode",
"direct:updateScheduledQueryPojo,updateScheduledQuery operation requires UpdateScheduledQueryRequest in POJO mode",
"direct:describeScheduledQueryPojo,describeScheduledQuery operation requires DescribeScheduledQueryRequest in POJO mode",
"direct:listScheduledQueriesPojo,listScheduledQueries operation requires ListScheduledQueriesRequest in POJO mode",
"direct:prepareQueryPojo,prepareQuery operation requires PrepareQueryRequest in POJO mode",
"direct:queryPojo,query operation requires QueryRequest in POJO mode",
"direct:cancelQueryPojo,cancelQuery operation requires CancelQueryRequest in POJO mode",
})
void pojoRequestWithWrongBodyTypeThrows(String route, String expectedMessage) {
assertThatThrownBy(() -> template.requestBody(route, "not the expected request type"))
.hasRootCauseInstanceOf(IllegalArgumentException.class)
.hasRootCauseMessage(expectedMessage);
}

@Override
protected RouteBuilder createRouteBuilder() {
return new RouteBuilder() {
Expand Down Expand Up @@ -291,7 +313,24 @@ public void configure() {
from("direct:cancelQuery")
.to("aws2-timestream://query:test?awsTimestreamQueryClient=#awsTimestreamQueryClient&operation=cancelQuery")
.to("mock:result");

from("direct:createScheduledQueryPojo")
.to("aws2-timestream://query:test?awsTimestreamQueryClient=#awsTimestreamQueryClient&operation=createScheduledQuery&pojoRequest=true");
from("direct:deleteScheduledQueryPojo")
.to("aws2-timestream://query:test?awsTimestreamQueryClient=#awsTimestreamQueryClient&operation=deleteScheduledQuery&pojoRequest=true");
from("direct:executeScheduledQueryPojo")
.to("aws2-timestream://query:test?awsTimestreamQueryClient=#awsTimestreamQueryClient&operation=executeScheduledQuery&pojoRequest=true");
from("direct:updateScheduledQueryPojo")
.to("aws2-timestream://query:test?awsTimestreamQueryClient=#awsTimestreamQueryClient&operation=updateScheduledQuery&pojoRequest=true");
from("direct:describeScheduledQueryPojo")
.to("aws2-timestream://query:test?awsTimestreamQueryClient=#awsTimestreamQueryClient&operation=describeScheduledQuery&pojoRequest=true");
from("direct:listScheduledQueriesPojo")
.to("aws2-timestream://query:test?awsTimestreamQueryClient=#awsTimestreamQueryClient&operation=listScheduledQueries&pojoRequest=true");
from("direct:prepareQueryPojo")
.to("aws2-timestream://query:test?awsTimestreamQueryClient=#awsTimestreamQueryClient&operation=prepareQuery&pojoRequest=true");
from("direct:queryPojo")
.to("aws2-timestream://query:test?awsTimestreamQueryClient=#awsTimestreamQueryClient&operation=query&pojoRequest=true");
from("direct:cancelQueryPojo")
.to("aws2-timestream://query:test?awsTimestreamQueryClient=#awsTimestreamQueryClient&operation=cancelQuery&pojoRequest=true");
}
};
}
Expand Down
Loading