From ffd5aa0dd188d35214f9ea1edc792a4e77184b32 Mon Sep 17 00:00:00 2001 From: hys9958 Date: Tue, 2 Dec 2014 16:04:43 +0900 Subject: [PATCH] TAJO-1220: Implement JDBC function for 'createStatement' and 'setEscapeProcessing'. --- .../java/org/apache/tajo/jdbc/JdbcConnection.java | 12 +++++++++++- .../java/org/apache/tajo/jdbc/TajoStatement.java | 7 ++++--- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/tajo-jdbc/src/main/java/org/apache/tajo/jdbc/JdbcConnection.java b/tajo-jdbc/src/main/java/org/apache/tajo/jdbc/JdbcConnection.java index 4250da417d..9eb24bfbb3 100644 --- a/tajo-jdbc/src/main/java/org/apache/tajo/jdbc/JdbcConnection.java +++ b/tajo-jdbc/src/main/java/org/apache/tajo/jdbc/JdbcConnection.java @@ -183,7 +183,17 @@ public Statement createStatement() throws SQLException { @Override public Statement createStatement(int resultSetType, int resultSetConcurrency) throws SQLException { - throw new SQLFeatureNotSupportedException("createStatement"); + //Just support 'CONCUR_READ_ONLY' only. + if (resultSetConcurrency != ResultSet.CONCUR_READ_ONLY) { + throw new SQLException("Statement with resultset concurrency " + + resultSetConcurrency + " is not supported"); + } + //Not support 'TYPE_SCROLL_SENSITIVE'. + if (resultSetType == ResultSet.TYPE_SCROLL_SENSITIVE) { + throw new SQLException("Statement with resultset type " + + resultSetType + " is not supported"); + } + return new TajoStatement(this, tajoClient); } @Override diff --git a/tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoStatement.java b/tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoStatement.java index 830821147b..eb7f8c953f 100644 --- a/tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoStatement.java +++ b/tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoStatement.java @@ -311,10 +311,11 @@ public void setCursorName(String name) throws SQLException { throw new SQLFeatureNotSupportedException("setCursorName not supported"); } + /** + * Not necessary. + */ @Override - public void setEscapeProcessing(boolean enable) throws SQLException { - throw new SQLFeatureNotSupportedException("setEscapeProcessing not supported"); - } + public void setEscapeProcessing(boolean enable) throws SQLException {} @Override public void setFetchDirection(int direction) throws SQLException {