You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by zh...@apache.org on 2015/12/28 10:10:24 UTC

kylin git commit: KYLIN-1254 CubeController unit test update, update model create case

Repository: kylin
Updated Branches:
  refs/heads/1.x-staging 2533fe5d3 -> 1e0a79ef1


KYLIN-1254 CubeController unit test update,update model create case


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

Branch: refs/heads/1.x-staging
Commit: 1e0a79ef1ac7e951d4b79f6143176bd32682ceb1
Parents: 2533fe5
Author: jian <ji...@apache.org>
Authored: Mon Dec 28 17:09:38 2015 +0800
Committer: jian <ji...@apache.org>
Committed: Mon Dec 28 17:10:06 2015 +0800

----------------------------------------------------------------------
 .../kylin/rest/controller/ModelController.java       | 15 +++++++++++++++
 .../kylin/rest/controller/CubeControllerTest.java    | 11 +++++++----
 2 files changed, 22 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/1e0a79ef/server/src/main/java/org/apache/kylin/rest/controller/ModelController.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/kylin/rest/controller/ModelController.java b/server/src/main/java/org/apache/kylin/rest/controller/ModelController.java
index 811ad3e..e9ce7ef 100644
--- a/server/src/main/java/org/apache/kylin/rest/controller/ModelController.java
+++ b/server/src/main/java/org/apache/kylin/rest/controller/ModelController.java
@@ -23,6 +23,7 @@ import java.io.IOException;
 import org.apache.kylin.common.KylinConfig;
 import org.apache.kylin.metadata.MetadataManager;
 import org.apache.kylin.metadata.model.DataModelDesc;
+import org.apache.kylin.rest.exception.InternalErrorException;
 import org.apache.kylin.rest.service.CubeService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -59,6 +60,20 @@ public class ModelController {
 
     }
 
+    @RequestMapping(value = "/{modelName}", method = {RequestMethod.DELETE})
+    @ResponseBody
+    public void deleteModel(@PathVariable String modelName) {
+        MetadataManager metaManager = MetadataManager.getInstance(cubeService.getConfig());
+        DataModelDesc modeDesc = metaManager.getDataModelDesc(modelName);
+        try {
+            metaManager.dropModel(modeDesc);
+        } catch (IOException e) {
+            throw new InternalErrorException("Failed to delete model", e);
+        }
+    }
+
+
+
     public void setCubeService(CubeService cubeService) {
         this.cubeService = cubeService;
     }

http://git-wip-us.apache.org/repos/asf/kylin/blob/1e0a79ef/server/src/test/java/org/apache/kylin/rest/controller/CubeControllerTest.java
----------------------------------------------------------------------
diff --git a/server/src/test/java/org/apache/kylin/rest/controller/CubeControllerTest.java b/server/src/test/java/org/apache/kylin/rest/controller/CubeControllerTest.java
index 09ce6c5..feb8261 100644
--- a/server/src/test/java/org/apache/kylin/rest/controller/CubeControllerTest.java
+++ b/server/src/test/java/org/apache/kylin/rest/controller/CubeControllerTest.java
@@ -43,6 +43,7 @@ import com.google.common.collect.Lists;
 public class CubeControllerTest extends ServiceTestBase {
     private static final String SRC_CUBE_NAME = "test_kylin_cube_with_slr_ready";
     private static final String TEST_CUBE_NAME = SRC_CUBE_NAME + "_test_save";
+    private static final String TEST_MODEL_NAME = SRC_CUBE_NAME + "_test_model_save";
 
     private CubeController cubeController;
     private CubeDescController cubeDescController;
@@ -72,11 +73,12 @@ public class CubeControllerTest extends ServiceTestBase {
 
         srcCubeDesc = getCubeDescByName(SRC_CUBE_NAME);
 
-        saveTestCube(TEST_CUBE_NAME);
+        saveTestCube(TEST_CUBE_NAME,TEST_MODEL_NAME);
     }
 
     @After
     public void tearDown() throws Exception {
+        modelController.deleteModel(TEST_MODEL_NAME);
         cubeController.deleteCube(TEST_CUBE_NAME);
         super.after();
     }
@@ -89,17 +91,18 @@ public class CubeControllerTest extends ServiceTestBase {
         return cubes[0];
     }
 
-    private void saveTestCube(final String newCubeName) throws IOException {
+    private void saveTestCube(final String newCubeName,final String newModelName) throws IOException {
         CubeDesc newCube = new CubeDesc();
 
         try {
+            modelController.deleteModel(newModelName);
             cubeController.deleteCube(newCubeName);
         } catch (Exception e) {
             // it may not exist, ignore the exception
         }
 
         newCube.setName(newCubeName);
-        newCube.setModelName(newCubeName);
+        newCube.setModelName(newModelName);
         newCube.setModel(srcCubeDesc.getModel());
         newCube.setDimensions(srcCubeDesc.getDimensions());
         newCube.setHBaseMapping(srcCubeDesc.getHBaseMapping());
@@ -107,7 +110,7 @@ public class CubeControllerTest extends ServiceTestBase {
         newCube.setConfig(srcCubeDesc.getConfig());
         newCube.setRowkey(srcCubeDesc.getRowkey());
 
-        newCube.getModel().setName(newCubeName);
+        newCube.getModel().setName(newModelName);
         newCube.getModel().setLastModified(0);
 
         CubeRequest cubeRequest = new CubeRequest();