This is an automated email from the ASF dual-hosted git repository.
ptupitsyn pushed a commit to branch ignite-14972
in repository https://gitbox.apache.org/repos/asf/ignite-3.git
The following commit(s) were added to refs/heads/ignite-14972 by this push:
new 70aa507f3 wip ClientStatement, ClientStatementBuilder
70aa507f3 is described below
commit 70aa507f3fd4f04d53d702eab4060f418b2f78bb
Author: Pavel Tupitsyn <[email protected]>
AuthorDate: Mon May 30 18:06:26 2022 +0300
wip ClientStatement, ClientStatementBuilder
---
.../internal/client/sql/ClientStatement.java | 28 ++++++++++++++++------
.../client/sql/ClientStatementBuilder.java | 8 +++----
2 files changed, 25 insertions(+), 11 deletions(-)
diff --git
a/modules/client/src/main/java/org/apache/ignite/internal/client/sql/ClientStatement.java
b/modules/client/src/main/java/org/apache/ignite/internal/client/sql/ClientStatement.java
index 6648fd0fc..eaec3a81a 100644
---
a/modules/client/src/main/java/org/apache/ignite/internal/client/sql/ClientStatement.java
+++
b/modules/client/src/main/java/org/apache/ignite/internal/client/sql/ClientStatement.java
@@ -38,10 +38,10 @@ class ClientStatement implements Statement {
private final boolean prepared;
/** */
- private final long queryTimeoutMs;
+ private final Long queryTimeoutMs;
/** */
- private final int pageSize;
+ private final Integer pageSize;
/** */
private final Map<String, Object> properties;
@@ -61,8 +61,8 @@ class ClientStatement implements Statement {
String query,
String defaultSchema,
boolean prepared,
- long queryTimeoutMs,
- int pageSize,
+ Long queryTimeoutMs,
+ Integer pageSize,
Map<String, Object> properties) {
this.query = query;
this.defaultSchema = defaultSchema;
@@ -86,6 +86,10 @@ class ClientStatement implements Statement {
return timeUnit.convert(queryTimeoutMs, TimeUnit.MILLISECONDS);
}
+ public Long queryTimeoutNullable() {
+ return queryTimeoutMs;
+ }
+
/** {@inheritDoc} */
@Override
public String defaultSchema() {
@@ -98,6 +102,10 @@ class ClientStatement implements Statement {
return pageSize;
}
+ public Integer pageSizeNullable() {
+ return pageSize;
+ }
+
/** {@inheritDoc} */
@Override
public boolean prepared() {
@@ -116,9 +124,15 @@ class ClientStatement implements Statement {
var builder = new ClientStatementBuilder()
.query(query)
.defaultSchema(defaultSchema)
- .prepared(prepared)
- .queryTimeout(queryTimeoutMs, TimeUnit.MILLISECONDS)
- .pageSize(pageSize);
+ .prepared(prepared);
+
+ if (pageSize != null) {
+ builder.pageSize(pageSize);
+ }
+
+ if (queryTimeoutMs != null) {
+ builder.queryTimeout(queryTimeoutMs, TimeUnit.MILLISECONDS);
+ }
if (properties != null) {
for (var entry : properties.entrySet()) {
diff --git
a/modules/client/src/main/java/org/apache/ignite/internal/client/sql/ClientStatementBuilder.java
b/modules/client/src/main/java/org/apache/ignite/internal/client/sql/ClientStatementBuilder.java
index 37ecddbc2..bacf9d75a 100644
---
a/modules/client/src/main/java/org/apache/ignite/internal/client/sql/ClientStatementBuilder.java
+++
b/modules/client/src/main/java/org/apache/ignite/internal/client/sql/ClientStatementBuilder.java
@@ -40,10 +40,10 @@ class ClientStatementBuilder implements
Statement.StatementBuilder {
private boolean prepared;
/** */
- private long queryTimeoutMs;
+ private Long queryTimeoutMs;
/** */
- private int pageSize;
+ private Integer pageSize;
/** {@inheritDoc} */
@Override
@@ -78,7 +78,7 @@ class ClientStatementBuilder implements
Statement.StatementBuilder {
public long queryTimeout(@NotNull TimeUnit timeUnit) {
Objects.requireNonNull(timeUnit);
- return timeUnit.convert(queryTimeoutMs, TimeUnit.MILLISECONDS);
+ return timeUnit.convert(queryTimeoutMs == null ? 0 : queryTimeoutMs,
TimeUnit.MILLISECONDS);
}
/** {@inheritDoc} */
@@ -108,7 +108,7 @@ class ClientStatementBuilder implements
Statement.StatementBuilder {
/** {@inheritDoc} */
@Override
public int pageSize() {
- return pageSize;
+ return pageSize == null ? 0: pageSize;
}
/** {@inheritDoc} */