You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ak...@apache.org on 2015/09/10 05:26:14 UTC
ignite git commit: IGNITE-843 Confirm / skip on load metadata.
Repository: ignite
Updated Branches:
refs/heads/ignite-843 7162dc3f9 -> 13ba99a48
IGNITE-843 Confirm / skip on load metadata.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/13ba99a4
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/13ba99a4
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/13ba99a4
Branch: refs/heads/ignite-843
Commit: 13ba99a48dcba5ff1708edcb12fdab8624393c6d
Parents: 7162dc3
Author: Alexey Kuznetsov <ak...@apache.org>
Authored: Thu Sep 10 10:26:37 2015 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Thu Sep 10 10:26:37 2015 +0700
----------------------------------------------------------------------
.../src/main/js/controllers/common-module.js | 18 +++++-
.../main/js/controllers/metadata-controller.js | 60 ++++++++++++++------
.../js/routes/generator/generator-common.js | 11 +---
.../src/main/js/views/includes/controls.jade | 2 +-
.../src/main/js/views/templates/confirm.jade | 2 +-
5 files changed, 66 insertions(+), 27 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/13ba99a4/modules/control-center-web/src/main/js/controllers/common-module.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/common-module.js b/modules/control-center-web/src/main/js/controllers/common-module.js
index 119eb20..ccd61ef 100644
--- a/modules/control-center-web/src/main/js/controllers/common-module.js
+++ b/modules/control-center-web/src/main/js/controllers/common-module.js
@@ -717,19 +717,35 @@ controlCenterModule.service('$confirm', function ($modal, $rootScope, $q) {
var deferred;
+ var dfltCancelTitle = 'Cancel';
+
+ // Configure title of cancel button.
+ scope.cancelTitle = dfltCancelTitle;
+
scope.ok = function () {
deferred.resolve();
confirmModal.hide();
};
+ /**
+ * Generate reject event on cancel for special event processing.
+ */
+ scope.cancel = function () {
+ deferred.reject('cancelled');
+
+ confirmModal.hide();
+ };
+
var confirmModal = $modal({templateUrl: '/confirm', scope: scope, placement: 'center', show: false});
var parentShow = confirmModal.show;
- confirmModal.show = function (content) {
+ confirmModal.show = function (content, cancelTitle) {
scope.content = content || 'Confirm deletion?';
+ scope.cancelTitle = cancelTitle || dfltCancelTitle;
+
deferred = $q.defer();
parentShow();
http://git-wip-us.apache.org/repos/asf/ignite/blob/13ba99a4/modules/control-center-web/src/main/js/controllers/metadata-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/metadata-controller.js b/modules/control-center-web/src/main/js/controllers/metadata-controller.js
index db3497a..48e7838 100644
--- a/modules/control-center-web/src/main/js/controllers/metadata-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/metadata-controller.js
@@ -373,6 +373,43 @@ controlCenterModule.controller('metadataController', [
function saveImported() {
loadMetaModal.hide();
+ var delayed = [];
+
+ /**
+ * Save the tied metadata by one on confirm variant selected only.
+ *
+ * @param ix Index of deleayed metadata to select.
+ */
+ function saveDelayed(ix) {
+ if (ix < delayed.length) {
+ var existMeta = delayed[ix][0];
+ var meta = delayed[ix][1];
+
+ $confirm.show(
+ '<span>' +
+ 'Metadata with name "' + meta.databaseTable + '" already exist.<br/><br/>' +
+ 'Are you sure you want to overwrite it?' +
+ '</span>', 'Skip').then(function () {
+ existMeta.databaseSchema = meta.databaseSchema;
+ existMeta.databaseTable = meta.databaseTable;
+ existMeta.keyType = meta.keyType;
+ existMeta.valueType = meta.valueType;
+ existMeta.queryFields = meta.queryFields;
+ existMeta.ascendingFields = meta.ascendingFields;
+ existMeta.descendingFields = meta.descendingFields;
+ existMeta.groups = meta.groups;
+ existMeta.keyFields = meta.keyFields;
+ existMeta.valueFields = meta.valueFields;
+
+ save(existMeta, true);
+
+ saveDelayed(ix + 1);
+ }, function () {
+ saveDelayed(ix + 1);
+ })
+ }
+ }
+
_.forEach($scope.loadMeta.tables, function (table) {
if (table.use) {
if (tables.indexOf(table.tbl) == -1) {
@@ -449,12 +486,11 @@ controlCenterModule.controller('metadataController', [
var metaName = toProperCase(tableName);
- var meta = _.find($scope.metadatas, function (meta) {
+ var metaFound = _.find($scope.metadatas, function (meta) {
return meta.name == metaName;
});
- if (!meta)
- meta = {space: $scope.spaces[0], name: metaName};
+ var meta = {space: $scope.spaces[0], name: metaName};
meta.databaseSchema = table.schema;
meta.databaseTable = tableName;
@@ -467,19 +503,8 @@ controlCenterModule.controller('metadataController', [
meta.keyFields = keyFields;
meta.valueFields = valFields;
- var idx = _.findIndex($scope.metadatas, function (metadata) {
- return metadata.databaseTable == tableName;
- });
-
- if (idx >= 0) {
- $confirm.show(
- '<span>' +
- 'Metadata with name "' + tableName + '" already exist.<br/><br/>' +
- 'Are you sure you want to overwrite it?' +
- '</span>').then(function () {
- save(meta, true);
- })
- }
+ if ($common.isDefined(metaFound))
+ delayed.push([metaFound, meta]);
else
save(meta, true);
@@ -488,6 +513,9 @@ controlCenterModule.controller('metadataController', [
}
});
+ // Process delayed metadata.
+ saveDelayed(0);
+
$common.showInfo('Cache type metadata loaded from database.');
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/13ba99a4/modules/control-center-web/src/main/js/routes/generator/generator-common.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/routes/generator/generator-common.js b/modules/control-center-web/src/main/js/routes/generator/generator-common.js
index 5789506..5503c37 100644
--- a/modules/control-center-web/src/main/js/routes/generator/generator-common.js
+++ b/modules/control-center-web/src/main/js/routes/generator/generator-common.js
@@ -17,6 +17,8 @@
// For server side we should load required libraries.
if (typeof window === 'undefined') {
+ _ = require('lodash');
+
$dataStructures = require('../../helpers/data-structures');
}
@@ -61,14 +63,7 @@ $generatorCommon.builder = function () {
res.datasources = [];
res.append = function (s) {
- if (this.lineStart) {
- for (var i = 0; i < this.deep; i++)
- this.push(' ');
-
- this.lineStart = false;
- }
-
- this.push(s);
+ this.push((this.lineStart ? _.repeat(' ', this.deep) : '') + s);
return this;
};
http://git-wip-us.apache.org/repos/asf/ignite/blob/13ba99a4/modules/control-center-web/src/main/js/views/includes/controls.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/includes/controls.jade b/modules/control-center-web/src/main/js/views/includes/controls.jade
index 4070fe6..d3335d2 100644
--- a/modules/control-center-web/src/main/js/views/includes/controls.jade
+++ b/modules/control-center-web/src/main/js/views/includes/controls.jade
@@ -480,7 +480,7 @@ mixin preview(preview, id)
mixin save-remove-buttons(objectName)
-var removeTip = '"Remove current ' + objectName + '"'
- .panel-tip-container(ng-hide='backupItem._id')
+ .panel-tip-container(ng-hide='!backupItem || backupItem._id')
a.btn.btn-primary(ng-disabled='!formChanged(ui.inputForm)' ng-click='formChanged(ui.inputForm) ? saveItem() : ""' bs-tooltip data-title='{{saveBtnTipText(ui.inputForm, "#{objectName}")}}' data-placement='bottom' data-trigger='hover') Save
.btn-group.panel-tip-container(ng-show='backupItem._id')
a.btn.btn-primary(id='save-item' ng-disabled='!formChanged(ui.inputForm)' ng-click='formChanged(ui.inputForm) ? saveItem() : ""' bs-tooltip data-title='{{saveBtnTipText(ui.inputForm, "#{objectName}")}}' data-placement='bottom' data-trigger='hover') Save
http://git-wip-us.apache.org/repos/asf/ignite/blob/13ba99a4/modules/control-center-web/src/main/js/views/templates/confirm.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/templates/confirm.jade b/modules/control-center-web/src/main/js/views/templates/confirm.jade
index 21e125b..c2ead41 100644
--- a/modules/control-center-web/src/main/js/views/templates/confirm.jade
+++ b/modules/control-center-web/src/main/js/views/templates/confirm.jade
@@ -23,5 +23,5 @@
.modal-body(ng-show='content')
p(ng-bind-html='content' style='text-align: center;')
.modal-footer
- button.btn.btn-default(id='confirm-btn-cancel' type='button' ng-click='$hide()') Cancel
+ button.btn.btn-default(id='confirm-btn-cancel' type='button' ng-click='cancel()') {{cancelTitle}}
button.btn.btn-primary(id='confirm-btn-confirm' type='button' ng-click='ok()') Confirm