You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by ka...@apache.org on 2017/07/07 08:38:08 UTC

[06/50] [abbrv] kylin git commit: Fix for KYLIN-2668. Added Regex to accept after ‘jdbc:kylin:’ up to the ‘//‘. and parsed out as properties.

Fix for KYLIN-2668. Added Regex to accept after ‘jdbc:kylin:’ up to the ‘//‘. and parsed out as properties.

Added test to test the url, project and ssl is enabled.

Signed-off-by: shaofengshi <sh...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/2f084601
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/2f084601
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/2f084601

Branch: refs/heads/KYLIN-2606
Commit: 2f084601b938d6051c0fe02a9fc075be549547f0
Parents: 2bc90f9
Author: Joe Swingle <jo...@hobsons.com>
Authored: Tue Jun 13 10:56:22 2017 -0400
Committer: shaofengshi <sh...@apache.org>
Committed: Thu Jun 29 10:39:58 2017 +0800

----------------------------------------------------------------------
 .../main/java/org/apache/kylin/jdbc/KylinConnection.java  |  4 ++--
 jdbc/src/test/java/org/apache/kylin/jdbc/DriverTest.java  | 10 ++++++++++
 2 files changed, 12 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/2f084601/jdbc/src/main/java/org/apache/kylin/jdbc/KylinConnection.java
----------------------------------------------------------------------
diff --git a/jdbc/src/main/java/org/apache/kylin/jdbc/KylinConnection.java b/jdbc/src/main/java/org/apache/kylin/jdbc/KylinConnection.java
index 6852998..6fb228a 100644
--- a/jdbc/src/main/java/org/apache/kylin/jdbc/KylinConnection.java
+++ b/jdbc/src/main/java/org/apache/kylin/jdbc/KylinConnection.java
@@ -51,9 +51,9 @@ public class KylinConnection extends AvaticaConnection {
         super(driver, factory, url, info);
 
         String odbcUrl = url;
-        odbcUrl = odbcUrl.replace(Driver.CONNECT_STRING_PREFIX + "//", "");
+        odbcUrl = odbcUrl.replaceAll((Driver.CONNECT_STRING_PREFIX + "[[A-Za-z0-9]*=[A-Za-z0-9]*;]*//").toString(), "");
+        
         String[] temps = odbcUrl.split("/");
-
         assert temps.length == 2;
 
         this.baseUrl = temps[0];

http://git-wip-us.apache.org/repos/asf/kylin/blob/2f084601/jdbc/src/test/java/org/apache/kylin/jdbc/DriverTest.java
----------------------------------------------------------------------
diff --git a/jdbc/src/test/java/org/apache/kylin/jdbc/DriverTest.java b/jdbc/src/test/java/org/apache/kylin/jdbc/DriverTest.java
index 0887634..4fd9d33 100644
--- a/jdbc/src/test/java/org/apache/kylin/jdbc/DriverTest.java
+++ b/jdbc/src/test/java/org/apache/kylin/jdbc/DriverTest.java
@@ -19,6 +19,7 @@
 package org.apache.kylin.jdbc;
 
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
 
 import java.sql.Connection;
 import java.sql.PreparedStatement;
@@ -188,6 +189,15 @@ public class DriverTest {
         state.close();
         conn.close();
     }
+    
+    @Test
+    public void testSSLFromURL() throws SQLException{
+        Driver driver = new DummyDriver();
+        Connection conn = driver.connect("jdbc:kylin:ssl=True;//test_url/test_db", null);
+        assertEquals("test_url", ((KylinConnection)conn).getBaseUrl());
+        assertEquals("test_db", ((KylinConnection)conn).getProject());
+        assertTrue(Boolean.parseBoolean( (String)((KylinConnection)conn).getConnectionProperties().get("ssl")));
+    }
 
     private void printResultSet(ResultSet rs) throws SQLException {
         ResultSetMetaData meta = rs.getMetaData();