From db2276d59f896aef4409d5388d7c79b7a21c6e77 Mon Sep 17 00:00:00 2001 From: jiazhong Date: Wed, 10 Dec 2014 12:41:13 +0800 Subject: [PATCH] return loaded & unloaded table info when load hive tables --- cube/src/main/java/com/kylinolap/cube/project/ProjectManager.java | 7 +++---- .../main/java/com/kylinolap/rest/controller/TableController.java | 6 +++--- server/src/main/java/com/kylinolap/rest/service/CubeService.java | 2 +- webapp/app/js/controllers/sourceMeta.js | 6 +++++- 4 files changed, 12 insertions(+), 9 deletions(-) diff --git a/cube/src/main/java/com/kylinolap/cube/project/ProjectManager.java b/cube/src/main/java/com/kylinolap/cube/project/ProjectManager.java index 3b5cdc0..f4f856c 100644 --- a/cube/src/main/java/com/kylinolap/cube/project/ProjectManager.java +++ b/cube/src/main/java/com/kylinolap/cube/project/ProjectManager.java @@ -190,11 +190,10 @@ public ProjectInstance updateCubeToProject(String cubeName, String newProjectNam return addCubeToProject(cubeName, newProjectName, owner); } - public ProjectInstance updateTableToProject(String tables, String projectName) throws IOException { + public ProjectInstance updateTableToProject(String[] tables, String projectName) throws IOException { ProjectInstance projectInstance = getProject(projectName); - String[] tokens = StringUtils.split(tables, ","); - for (int i = 0; i < tokens.length; i++) { - String token = tokens[i].trim(); + for (int i = 0; i < tables.length; i++) { + String token = tables[i].trim(); int cut = token.indexOf('.'); String tableName = cut >= 0 ? token.substring(cut + 1).trim() : token.trim(); if (StringUtils.isNotEmpty(tableName)) { diff --git a/server/src/main/java/com/kylinolap/rest/controller/TableController.java b/server/src/main/java/com/kylinolap/rest/controller/TableController.java index f7ab06a..0ffdfe5 100644 --- a/server/src/main/java/com/kylinolap/rest/controller/TableController.java +++ b/server/src/main/java/com/kylinolap/rest/controller/TableController.java @@ -131,9 +131,9 @@ public String reloadSourceTable() { for (String loadedTable : loadedTables) { int cut = loadedTable.indexOf('.'); String tableName = cut >= 0 ? loadedTable.substring(cut + 1).trim() : loadedTable.trim(); - if (inputTable.toUpperCase().equals(tableName)||inputTable.toUpperCase().equals(loadedTable)) { + if (inputTable.trim().toUpperCase().equals(tableName)||inputTable.trim().toUpperCase().equals(loadedTable)) { tableLoaded = true; - continue; + break; } } if(!tableLoaded){ @@ -141,7 +141,7 @@ public String reloadSourceTable() { } } - cubeMgmtService.syncTableToProject(tables, project); + cubeMgmtService.syncTableToProject(loadedTables, project); result.put("result.loaded", loadedTables); result.put("result.unloaded",unloadedTables.toArray(new String[unloadedTables.size()]) ); diff --git a/server/src/main/java/com/kylinolap/rest/service/CubeService.java b/server/src/main/java/com/kylinolap/rest/service/CubeService.java index 8534b52..9417618 100644 --- a/server/src/main/java/com/kylinolap/rest/service/CubeService.java +++ b/server/src/main/java/com/kylinolap/rest/service/CubeService.java @@ -592,7 +592,7 @@ private void releaseAllSegments(CubeInstance cube) throws IOException, JobExcept } @PreAuthorize(Constant.ACCESS_HAS_ROLE_ADMIN) - public void syncTableToProject(String tables, String project) throws IOException { + public void syncTableToProject(String[] tables, String project) throws IOException { getProjectManager().updateTableToProject(tables, project); } } diff --git a/webapp/app/js/controllers/sourceMeta.js b/webapp/app/js/controllers/sourceMeta.js index 862080d..f89b3f8 100644 --- a/webapp/app/js/controllers/sourceMeta.js +++ b/webapp/app/js/controllers/sourceMeta.js @@ -155,6 +155,10 @@ KylinApp $modalInstance.dismiss('cancel'); }; $scope.add = function () { + if($scope.tableNames.trim()===""){ + SweetAlert.swal('','Please input table(s) you want to synchronize.', 'info'); + return; + } $scope.cancel(); rainbowBar.show(); loadingRequest.show(); @@ -175,7 +179,7 @@ KylinApp SweetAlert.swal('Success!','The following table(s) have been successfully synchronized: ' + loadTableInfo , 'success'); } if(result['result.loaded'].length!=0&&result['result.unloaded'].length!=0){ - SweetAlert.swal('Partial loaded!','The following table(s) have been successfully synchronized: ' + loadTableInfo+"\n Failed to synchronize following table(s):" + unloadedTableInfo, 'warning'); + SweetAlert.swal('Partial loaded!','The following table(s) have been successfully synchronized: ' + loadTableInfo+"\n\n Failed to synchronize following table(s):" + unloadedTableInfo, 'warning'); }