You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by an...@apache.org on 2015/11/11 10:29:21 UTC
ignite git commit: IGNITE-1867 Fixed generation, preview. Rename
Repository: ignite
Updated Branches:
refs/heads/ignite-843-rc1 ce83ff394 -> fa7b0c9cb
IGNITE-1867 Fixed generation, preview. Rename
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/fa7b0c9c
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/fa7b0c9c
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/fa7b0c9c
Branch: refs/heads/ignite-843-rc1
Commit: fa7b0c9cbbe54ce0c5ee5fd9c27d1c8627110f4c
Parents: ce83ff3
Author: Andrey <an...@gridgain.com>
Authored: Wed Nov 11 16:29:06 2015 +0700
Committer: Andrey <an...@gridgain.com>
Committed: Wed Nov 11 16:29:06 2015 +0700
----------------------------------------------------------------------
.../main/js/controllers/caches-controller.js | 6 +-
.../src/main/js/controllers/common-module.js | 16 +--
.../main/js/controllers/metadata-controller.js | 26 ++--
.../main/js/controllers/summary-controller.js | 3 +-
modules/control-center-web/src/main/js/db.js | 4 +-
.../js/helpers/generator/generator-common.js | 4 +-
.../main/js/helpers/generator/generator-java.js | 131 +++++++++----------
.../main/js/helpers/generator/generator-pom.js | 9 ++
.../main/js/helpers/generator/generator-xml.js | 124 ++++++++++--------
.../src/main/js/views/includes/controls.jade | 10 +-
10 files changed, 175 insertions(+), 158 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/fa7b0c9c/modules/control-center-web/src/main/js/controllers/caches-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/caches-controller.js b/modules/control-center-web/src/main/js/controllers/caches-controller.js
index 2ee1690..41584b8 100644
--- a/modules/control-center-web/src/main/js/controllers/caches-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/caches-controller.js
@@ -300,8 +300,10 @@ consoleModule.controller('cachesController', [
$scope.preview.query.java = $generatorJava.cacheQuery(val, varName).asString();
$scope.preview.query.allDefaults = $common.isEmptyString($scope.preview.query.xml);
- $scope.preview.store.xml = $generatorXml.cacheStore(val).asString();
- $scope.preview.store.java = $generatorJava.cacheStore(val, varName).asString();
+ var storeFactory = $generatorXml.cacheStore(val, metas);
+
+ $scope.preview.store.xml = $generatorXml.generateDataSources(storeFactory.datasources).asString() + storeFactory.asString();
+ $scope.preview.store.java = $generatorJava.cacheStore(val, metas, varName).asString();
$scope.preview.store.allDefaults = $common.isEmptyString($scope.preview.store.xml);
$scope.preview.concurrency.xml = $generatorXml.cacheConcurrency(val).asString();
http://git-wip-us.apache.org/repos/asf/ignite/blob/fa7b0c9c/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 680f3a4..3c784f5 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
@@ -1133,10 +1133,10 @@ consoleModule.service('$table', ['$common', '$focus', function ($common, $focus)
_tableFocus('Key' + field.focusId, index);
}
else if (ui == 'table-db-fields') {
- field.curDatabaseName = val.databaseName;
- field.curDatabaseType = val.databaseType;
- field.curJavaName = val.javaName;
- field.curJavaType = val.javaType;
+ field.curDatabaseFieldName = val.databaseFieldName;
+ field.curDatabaseFieldType = val.databaseFieldType;
+ field.curJavaFieldName = val.javaFieldName;
+ field.curJavaFieldType = val.javaFieldType;
_tableFocus('DatabaseName' + field.focusId, index);
}
@@ -1166,10 +1166,10 @@ consoleModule.service('$table', ['$common', '$focus', function ($common, $focus)
_tableFocus('Key' + field.focusId, -1);
}
else if (ui == 'table-db-fields') {
- field.newDatabaseName = null;
- field.newDatabaseType = null;
- field.newJavaName = null;
- field.newJavaType = null;
+ field.newDatabaseFieldName = null;
+ field.newDatabaseFieldType = null;
+ field.newJavaFieldName = null;
+ field.newJavaFieldType = null;
_tableFocus('DatabaseName' + field.focusId, -1);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/fa7b0c9c/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 d2ea8b2..8e81c2c 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
@@ -503,8 +503,8 @@ consoleModule.controller('metadataController', [
}
function dbField(name, jdbcType) {
- return {databaseName: name, databaseType: jdbcType.dbName,
- javaName: toJavaName(name), javaType: jdbcType.javaType}
+ return {databaseFieldName: name, databaseFieldType: jdbcType.dbName,
+ javaFieldName: toJavaName(name), javaFieldType: jdbcType.javaType}
}
var _containKey = false;
@@ -1043,15 +1043,15 @@ consoleModule.controller('metadataController', [
function tableDbFieldValue(field, index) {
return index < 0
- ? {databaseName: field.newDatabaseName, databaseType: field.newDatabaseType, javaName: field.newJavaName, javaType: field.newJavaType}
- : {databaseName: field.curDatabaseName, databaseType: field.curDatabaseType, javaName: field.curJavaName, javaType: field.curJavaType}
+ ? {databaseFieldName: field.newDatabaseFieldName, databaseFieldType: field.newDatabaseFieldType, javaFieldName: field.newJavaFieldName, javaFieldType: field.newJavaFieldType}
+ : {databaseFieldName: field.curDatabaseFieldName, databaseFieldType: field.curDatabaseFieldType, javaFieldName: field.curJavaFieldName, javaFieldType: field.curJavaFieldType}
}
$scope.tableDbFieldSaveVisible = function (field, index) {
var dbFieldValue = tableDbFieldValue(field, index);
- return !$common.isEmptyString(dbFieldValue.databaseName) && $common.isDefined(dbFieldValue.databaseType) &&
- !$common.isEmptyString(dbFieldValue.javaName) && $common.isDefined(dbFieldValue.javaType);
+ return !$common.isEmptyString(dbFieldValue.databaseFieldName) && $common.isDefined(dbFieldValue.databaseFieldType) &&
+ !$common.isEmptyString(dbFieldValue.javaFieldName) && $common.isDefined(dbFieldValue.javaFieldType);
};
var dbFieldTables = {
@@ -1069,12 +1069,12 @@ consoleModule.controller('metadataController', [
var model = item[field.model];
- if (!$common.isValidJavaIdentifier(dbFieldTable.msg + ' java name', dbFieldValue.javaName, $table.tableFieldId(index, 'JavaName' + dbFieldTable.id)))
+ if (!$common.isValidJavaIdentifier(dbFieldTable.msg + ' java name', dbFieldValue.javaFieldName, $table.tableFieldId(index, 'JavaName' + dbFieldTable.id)))
return false;
if ($common.isDefined(model)) {
var idx = _.findIndex(model, function (dbMeta) {
- return dbMeta.databaseName == dbFieldValue.databaseName;
+ return dbMeta.databaseFieldName == dbFieldValue.databaseFieldName;
});
// Found duplicate.
@@ -1082,7 +1082,7 @@ consoleModule.controller('metadataController', [
return showPopoverMessage(null, null, $table.tableFieldId(index, 'DatabaseName' + dbFieldTable.id), 'Field with such database name already exists!');
idx = _.findIndex(model, function (dbMeta) {
- return dbMeta.javaName == dbFieldValue.javaName;
+ return dbMeta.javaFieldName == dbFieldValue.javaFieldName;
});
// Found duplicate.
@@ -1095,10 +1095,10 @@ consoleModule.controller('metadataController', [
else {
var dbField = model[index];
- dbField.databaseName = dbFieldValue.databaseName;
- dbField.databaseType = dbFieldValue.databaseType;
- dbField.javaName = dbFieldValue.javaName;
- dbField.javaType = dbFieldValue.javaType;
+ dbField.databaseFieldName = dbFieldValue.databaseFieldName;
+ dbField.databaseFieldType = dbFieldValue.databaseFieldType;
+ dbField.javaFieldName = dbFieldValue.javaFieldName;
+ dbField.javaFieldType = dbFieldValue.javaFieldType;
}
}
else {
http://git-wip-us.apache.org/repos/asf/ignite/blob/fa7b0c9c/modules/control-center-web/src/main/js/controllers/summary-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/summary-controller.js b/modules/control-center-web/src/main/js/controllers/summary-controller.js
index f443ac0..4fa27f5 100644
--- a/modules/control-center-web/src/main/js/controllers/summary-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/summary-controller.js
@@ -215,8 +215,9 @@ consoleModule.controller('summaryController', [
zip.file(srcPath + 'ServerConfigurationFactory.java', $generatorJava.cluster(cluster, 'ServerConfigurationFactory'));
zip.file(srcPath + 'ClientConfigurationFactory.java', $generatorJava.cluster(cluster, 'ClientConfigurationFactory', clientNearConfiguration));
+ zip.file(srcPath + 'NodeStartup.java', $generatorJava.nodeStartup(cluster));
- zip.file('pom.xml', $generatorPom.pom(cluster.caches, '1.5.0').asString());
+ zip.file('pom.xml', $generatorPom.pom(cluster.caches, '1.5.0-IWC').asString());
zip.file('README.txt', $generatorReadme.readme().asString());
zip.file('jdbc-drivers/README.txt', $generatorReadme.readmeJdbc().asString());
http://git-wip-us.apache.org/repos/asf/ignite/blob/fa7b0c9c/modules/control-center-web/src/main/js/db.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/db.js b/modules/control-center-web/src/main/js/db.js
index cce1976..6d4df8d 100644
--- a/modules/control-center-web/src/main/js/db.js
+++ b/modules/control-center-web/src/main/js/db.js
@@ -78,8 +78,8 @@ var CacheTypeMetadataSchema = new Schema({
databaseTable: String,
keyType: String,
valueType: String,
- keyFields: [{databaseName: String, databaseType: String, javaName: String, javaType: String}],
- valueFields: [{databaseName: String, databaseType: String, javaName: String, javaType: String}],
+ keyFields: [{databaseFieldName: String, databaseFieldType: String, javaFieldName: String, javaFieldType: String}],
+ valueFields: [{databaseFieldName: String, databaseFieldType: String, javaFieldName: String, javaFieldType: String}],
keepSerialized: Boolean,
fields: [{name: String, className: String}],
aliases: [{field: String, alias: String}],
http://git-wip-us.apache.org/repos/asf/ignite/blob/fa7b0c9c/modules/control-center-web/src/main/js/helpers/generator/generator-common.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/generator/generator-common.js b/modules/control-center-web/src/main/js/helpers/generator/generator-common.js
index 16bb952..d9c903b 100644
--- a/modules/control-center-web/src/main/js/helpers/generator/generator-common.js
+++ b/modules/control-center-web/src/main/js/helpers/generator/generator-common.js
@@ -46,10 +46,10 @@ $generatorCommon.mainComment = function mainComment() {
};
// Create result holder with service functions and properties for XML and java code generation.
-$generatorCommon.builder = function () {
+$generatorCommon.builder = function (deep) {
var res = [];
- res.deep = 0;
+ res.deep = deep ? deep : 0;
res.needEmptyLine = false;
res.lineStart = true;
res.datasources = [];
http://git-wip-us.apache.org/repos/asf/ignite/blob/fa7b0c9c/modules/control-center-web/src/main/js/helpers/generator/generator-java.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/generator/generator-java.js b/modules/control-center-web/src/main/js/helpers/generator/generator-java.js
index cda5db7..138aa7b 100644
--- a/modules/control-center-web/src/main/js/helpers/generator/generator-java.js
+++ b/modules/control-center-web/src/main/js/helpers/generator/generator-java.js
@@ -119,7 +119,7 @@ $generatorJava.property = function (res, varName, obj, propName, dataType, sette
res.emptyLineIfNeeded();
res.line(varName + '.' + $generatorJava.setterName(propName, setterName)
- + '(' + $generatorJava.toJavaCode(val, dataType) + ');');
+ + '(' + $generatorJava.toJavaCode(val, dataType ? res.importClass(dataType) : null) + ');');
return true;
}
@@ -129,24 +129,6 @@ $generatorJava.property = function (res, varName, obj, propName, dataType, sette
};
/**
- * Add property via setter assuming that it is a 'Class'.
- *
- * @param res Resulting output with generated code.
- * @param varName Variable name.
- * @param obj Source object with data.
- * @param propName Property name to take from source object.
- */
-$generatorJava.classNameProperty = function (res, varName, obj, propName) {
- var val = obj[propName];
-
- if ($commonUtils.isDefined(val)) {
- res.emptyLineIfNeeded();
-
- res.line(varName + '.' + $generatorJava.setterName(propName) + '(' + res.importClass(val) + '.class);');
- }
-};
-
-/**
* Add list property.
*
* @param res Resulting output with generated code.
@@ -259,7 +241,7 @@ $generatorJava.beanProperty = function (res, varName, bean, beanPropName, beanVa
break;
case 'enum':
- $generatorJava.property(res, beanVarName, bean, propName, res.importClass(descr.enumClass), descr.setterName);
+ $generatorJava.property(res, beanVarName, bean, propName, descr.enumClass, descr.setterName);
break;
case 'float':
@@ -844,7 +826,7 @@ $generatorJava.cacheQuery = function (cache, varName, res) {
* @param res Resulting output with generated code.
* @returns {*} Java code for cache store configuration.
*/
-$generatorJava.cacheStore = function (cache, cacheVarName, res) {
+$generatorJava.cacheStore = function (cache, metadatas, cacheVarName, res) {
if (!res)
res = $generatorCommon.builder();
@@ -886,6 +868,8 @@ $generatorJava.cacheStore = function (cache, cacheVarName, res) {
res.line('dataSource.setUser(props.getProperty("' + dataSourceBean + '.jdbc.username"));');
res.line('dataSource.setPassword(props.getProperty("' + dataSourceBean + '.jdbc.password"));');
+
+ res.needEmptyLine = true;
}
}
@@ -893,22 +877,20 @@ $generatorJava.cacheStore = function (cache, cacheVarName, res) {
// Generate POJO store factory.
$generatorJava.declareVariable(res, 'storeFactory', 'org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory');
- $generatorJava.declareVariable(res, 'storeFactoryCfg', 'org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreConfiguration');
-
if (dataSourceFound)
- res.line('storeFactoryCfg.setDataSource(dataSource);');
+ res.line('storeFactory.setDataSource(dataSource);');
- res.line('storeFactoryCfg.setDialect(new ' +
+ res.line('storeFactory.setDialect(new ' +
res.importClass($generatorCommon.jdbcDialectClassName(storeFactory.dialect)) + '());');
res.needEmptyLine = true;
- if (cache.metadatas && cache.metadatas.length > 0) {
+ if (metadatas && metadatas.length > 0) {
$generatorJava.declareVariable(res, 'jdbcTypes', 'java.util.Collection', 'java.util.ArrayList', 'org.apache.ignite.cache.store.jdbc.JdbcType');
res.needEmptyLine = true;
- _.forEach(cache.metadatas, function (meta) {
+ _.forEach(metadatas, function (meta) {
$generatorJava.declareVariable(res, 'jdbcType', 'org.apache.ignite.cache.store.jdbc.JdbcType');
res.needEmptyLine = true;
@@ -922,12 +904,10 @@ $generatorJava.cacheStore = function (cache, cacheVarName, res) {
res.needEmptyLine = true;
});
- res.line('storeFactoryCfg.setTypes(jdbcTypes);');
+ res.line('storeFactory.setTypes(jdbcTypes.toArray(new JdbcType[jdbcTypes.size()]));');
res.needEmptyLine = true;
}
-
- res.line('storeFactory.setConfiguration(storeFactoryCfg);');
}
else {
$generatorJava.beanProperty(res, cacheVarName, storeFactory, 'cacheStoreFactory', 'storeFactory',
@@ -940,7 +920,7 @@ $generatorJava.cacheStore = function (cache, cacheVarName, res) {
res.needEmptyLine = true;
}
- res.line(cacheVarName + '.setStoreFactory(storeFactory);');
+ res.line(cacheVarName + '.setCacheStoreFactory(storeFactory);');
res.needEmptyLine = true;
}
@@ -969,8 +949,8 @@ $generatorJava.cacheConcurrency = function (cache, varName, res) {
$generatorJava.property(res, varName, cache, 'maxConcurrentAsyncOperations');
$generatorJava.property(res, varName, cache, 'defaultLockTimeout');
- $generatorJava.property(res, varName, cache, 'atomicWriteOrderMode', res.importClass('org.apache.ignite.cache.CacheAtomicWriteOrderMode'));
- $generatorJava.property(res, varName, cache, 'writeSynchronizationMode', res.importClass('org.apache.ignite.cache.CacheWriteSynchronizationMode'));
+ $generatorJava.property(res, varName, cache, 'atomicWriteOrderMode', 'org.apache.ignite.cache.CacheAtomicWriteOrderMode');
+ $generatorJava.property(res, varName, cache, 'writeSynchronizationMode', 'org.apache.ignite.cache.CacheWriteSynchronizationMode');
res.needEmptyLine = true;
@@ -1084,15 +1064,15 @@ $generatorJava.metadataQueryIndexes = function (res, meta) {
if (indexes && indexes.length > 0) {
res.needEmptyLine = true;
- $generatorJava.declareVariable(res, 'indexes', 'java.util.Map', 'java.util.LinkedHashMap', 'String', 'org.apache.ignite.cache.store.QueryEntityIndex');
+ $generatorJava.declareVariable(res, 'indexes', 'java.util.Map', 'java.util.LinkedHashMap', 'String', 'org.apache.ignite.cache.QueryIndex');
_.forEach(indexes, function (index) {
res.needEmptyLine = true;
- $generatorJava.declareVariable(res, 'index', 'org.apache.ignite.cache.store.QueryEntityIndex');
+ $generatorJava.declareVariable(res, 'index', 'org.apache.ignite.cache.QueryIndex');
$generatorJava.property(res, 'index', index, 'name');
- $generatorJava.property(res, 'index', index, 'type', 'org.apache.ignite.cache.store.QueryEntityIndex.Type');
+ $generatorJava.property(res, 'index', index, 'type', 'org.apache.ignite.cache.QueryIndexType');
var fields = index.fields;
@@ -1135,9 +1115,11 @@ $generatorJava.metadataDatabaseFields = function (res, meta, fieldProperty) {
var lastIx = dbFields.length - 1;
_.forEach(dbFields, function (field, ix) {
+ res.importClass('org.apache.ignite.cache.store.jdbc.JdbcTypeField');
+
res.line('new JdbcTypeField(' +
- 'Types.' + field.databaseType + ', ' + '"' + field.databaseName + '", ' +
- res.importClass(field.javaType) + '.class, ' + '"' + field.javaName + '"'+ ')' + (ix < lastIx ? ',' : ''));
+ 'Types.' + field.databaseFieldType + ', ' + '"' + field.databaseFieldName + '", ' +
+ res.importClass(field.javaFieldType) + '.class, ' + '"' + field.javaFieldName + '"'+ ')' + (ix < lastIx ? ',' : ''));
});
res.endBlock(');');
@@ -1151,8 +1133,8 @@ $generatorJava.metadataGeneral = function (meta, res) {
if (!res)
res = $generatorCommon.builder();
- $generatorJava.classNameProperty(res, 'typeMeta', meta, 'keyType');
- $generatorJava.classNameProperty(res, 'typeMeta', meta, 'valueType');
+ $generatorJava.property(res, 'typeMeta', meta, 'keyType');
+ $generatorJava.property(res, 'typeMeta', meta, 'valueType');
res.needEmptyLine = true;
@@ -1199,23 +1181,11 @@ $generatorJava.metadataStore = function (meta, withTypes, res) {
};
// Generate cache type metadata config.
-$generatorJava.cacheMetadata = function(meta, res) {
- $generatorJava.declareVariable(res, 'typeMeta', 'org.apache.ignite.cache.CacheTypeMetadata');
-
- $generatorJava.metadataGeneral(meta, res);
-
- res.emptyLineIfNeeded();
- res.line('types.add(typeMeta);');
-
- res.needEmptyLine = true;
-};
-
-// Generate cache type metadata config.
$generatorJava.cacheQueryMetadata = function(meta, res) {
- $generatorJava.declareVariable(res, 'queryMeta', 'org.apache.ignite.cache.store.QueryEntity');
+ $generatorJava.declareVariable(res, 'queryMeta', 'org.apache.ignite.cache.QueryEntity');
- $generatorJava.classNameProperty(res, 'queryMeta', meta, 'keyType');
- $generatorJava.classNameProperty(res, 'queryMeta', meta, 'valueType');
+ $generatorJava.property(res, 'queryMeta', meta, 'keyType');
+ $generatorJava.property(res, 'queryMeta', meta, 'valueType');
res.needEmptyLine = true;
@@ -1234,17 +1204,7 @@ $generatorJava.cacheMetadatas = function (metadatas, varName, res) {
// Generate cache type metadata configs.
if (metadatas && metadatas.length > 0) {
- $generatorJava.declareVariable(res, 'types', 'java.util.Collection', 'java.util.ArrayList', 'org.apache.ignite.cache.CacheTypeMetadata');
-
- _.forEach(metadatas, function (meta) {
- $generatorJava.cacheMetadata(meta, res);
- });
-
- res.line(varName + '.setTypeMetadata(types);');
-
- res.needEmptyLine = true;
-
- $generatorJava.declareVariable(res, 'queryEntities', 'java.util.Collection', 'java.util.ArrayList', 'org.apache.ignite.cache.store.QueryEntity');
+ $generatorJava.declareVariable(res, 'queryEntities', 'java.util.Collection', 'java.util.ArrayList', 'org.apache.ignite.cache.QueryEntity');
_.forEach(metadatas, function (meta) {
$generatorJava.cacheQueryMetadata(meta, res);
@@ -1269,7 +1229,7 @@ $generatorJava.cache = function(cache, varName, res) {
$generatorJava.cacheQuery(cache, varName, res);
- $generatorJava.cacheStore(cache, varName, res);
+ $generatorJava.cacheStore(cache, cache.metadatas, varName, res);
$generatorJava.cacheConcurrency(cache, varName, res);
@@ -1379,7 +1339,7 @@ $generatorJava.javaClassCode = function (meta, key, pkg, useConstructor, include
res.line('/** Value for ' + fldName + '. */');
- res.line('private ' + res.importClass(field.javaType) + ' ' + fldName + ';');
+ res.line('private ' + res.importClass(field.javaFieldType) + ' ' + fldName + ';');
res.needEmptyLine = true;
});
@@ -1421,7 +1381,7 @@ $generatorJava.javaClassCode = function (meta, key, pkg, useConstructor, include
_.forEach(allFields, function (field) {
var fldName = field.javaName;
- var fldType = res.importClass(field.javaType);
+ var fldType = res.importClass(field.javaFieldType);
res.line('/**');
res.line(' * Gets ' + fldName + '.');
@@ -1793,7 +1753,7 @@ $generatorJava.igfsMisc = function(igfs, varName, res) {
$generatorJava.property(res, varName, igfs, 'blockSize', null, null, 65536);
$generatorJava.property(res, varName, igfs, 'streamBufferSize', null, null, 65536);
- $generatorJava.property(res, varName, igfs, 'defaultMode', res.importClass('org.apache.ignite.igfs.IgfsMode'), undefined, "DUAL_ASYNC");
+ $generatorJava.property(res, varName, igfs, 'defaultMode', 'org.apache.ignite.igfs.IgfsMode', undefined, "DUAL_ASYNC");
$generatorJava.property(res, varName, igfs, 'maxSpaceSize', null, null, 0);
$generatorJava.property(res, varName, igfs, 'maximumTaskRangeLength', null, null, 0);
$generatorJava.property(res, varName, igfs, 'managementPort', null, null, 11400);
@@ -1939,3 +1899,34 @@ $generatorJava.cluster = function (cluster, javaClass, clientNearCfg) {
return res.asString();
};
+
+/**
+ * Function to generate java code for cluster configuration.
+ * @param cluster Cluster to process.
+ */
+$generatorJava.nodeStartup = function (cluster) {
+ var res = $generatorCommon.builder();
+
+ res.importClass('org.apache.ignite.IgniteException');
+ res.importClass('org.apache.ignite.Ignition');
+
+ res.line('/**');
+ res.line(' * ' + $generatorCommon.mainComment());
+ res.line(' */');
+ res.startBlock('public class NodeStartup {');
+
+ res.line('/**');
+ res.line(' * Start up an server node.');
+ res.line(' *');
+ res.line(' * @param args Command line arguments, none required.');
+ res.line(' * @throws IgniteException If failed.');
+ res.line(' */');
+
+ res.startBlock('public static void main(String[] args) throws IgniteException {');
+ res.line('Ignition.start("config/' + cluster.name + '-server.xml");');
+ res.endBlock('}');
+
+ res.endBlock('}');
+
+ return res.generateImports() + '\n\n' + res.asString();
+};
http://git-wip-us.apache.org/repos/asf/ignite/blob/fa7b0c9c/modules/control-center-web/src/main/js/helpers/generator/generator-pom.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/generator/generator-pom.js b/modules/control-center-web/src/main/js/helpers/generator/generator-pom.js
index 20ed535..182a6e1 100644
--- a/modules/control-center-web/src/main/js/helpers/generator/generator-pom.js
+++ b/modules/control-center-web/src/main/js/helpers/generator/generator-pom.js
@@ -92,6 +92,15 @@ $generatorPom.pom = function (caches, igniteVersion, res) {
res.needEmptyLine = true;
+ res.startBlock('<repositories>');
+ res.startBlock('<repository>');
+ addProperty('id', 'GridGain External Repository');
+ addProperty('url', 'http://www.gridgainsystems.com/nexus/content/repositories/gridgain_staging-1549');
+ res.endBlock('</repository>');
+ res.endBlock('</repositories>');
+
+ res.needEmptyLine = true;
+
res.startBlock('<dependencies>');
addDependency('org.apache.ignite', 'ignite-core', igniteVersion);
http://git-wip-us.apache.org/repos/asf/ignite/blob/fa7b0c9c/modules/control-center-web/src/main/js/helpers/generator/generator-xml.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/generator/generator-xml.js b/modules/control-center-web/src/main/js/helpers/generator/generator-xml.js
index 9f7683a..94abf9a 100644
--- a/modules/control-center-web/src/main/js/helpers/generator/generator-xml.js
+++ b/modules/control-center-web/src/main/js/helpers/generator/generator-xml.js
@@ -728,7 +728,7 @@ $generatorXml.cacheQuery = function(cache, res) {
};
// Generate cache store group.
-$generatorXml.cacheStore = function(cache, res) {
+$generatorXml.cacheStore = function(cache, metadatas, res) {
if (!res)
res = $generatorCommon.builder();
@@ -741,8 +741,6 @@ $generatorXml.cacheStore = function(cache, res) {
if (factoryKind == 'CacheJdbcPojoStoreFactory') {
res.startBlock('<property name="cacheStoreFactory">');
res.startBlock('<bean class="org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory">');
- res.startBlock('<property name="configuration">');
- res.startBlock('<bean class="org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreConfiguration">');
$generatorXml.property(res, storeFactory, 'dataSourceBean');
@@ -750,8 +748,6 @@ $generatorXml.cacheStore = function(cache, res) {
res.line('<bean class="' + $generatorCommon.jdbcDialectClassName(storeFactory.dialect) + '"/>');
res.endBlock('</property>');
- var metadatas = cache.metadatas;
-
if (metadatas && metadatas.length > 0) {
res.startBlock('<property name="types">');
res.startBlock('<list>');
@@ -763,6 +759,8 @@ $generatorXml.cacheStore = function(cache, res) {
$generatorXml.property(res, meta, 'valueType');
$generatorXml.property(res, meta, 'keepSerialized', null, null, false);
+ $generatorXml.metadataStore(meta, res);
+
res.endBlock('</bean>');
});
@@ -771,23 +769,20 @@ $generatorXml.cacheStore = function(cache, res) {
}
res.endBlock('</bean>');
- res.endBlock("</property>");
- res.endBlock('</bean>');
res.endBlock("</property>")
}
- else {
+ else
$generatorXml.beanProperty(res, storeFactory, 'cacheStoreFactory', $generatorCommon.STORE_FACTORIES[factoryKind], true);
- if (storeFactory.dialect) {
- if (_.findIndex(res.datasources, function (ds) {
- return ds.dataSourceBean == storeFactory.dataSourceBean;
- }) < 0) {
- res.datasources.push({
- dataSourceBean: storeFactory.dataSourceBean,
- className: $generatorCommon.DATA_SOURCES[storeFactory.dialect],
- dialect: storeFactory.dialect
- });
- }
+ if (storeFactory.dialect && storeFactory.dataSourceBean) {
+ if (_.findIndex(res.datasources, function (ds) {
+ return ds.dataSourceBean == storeFactory.dataSourceBean;
+ }) < 0) {
+ res.datasources.push({
+ dataSourceBean: storeFactory.dataSourceBean,
+ className: $generatorCommon.DATA_SOURCES[storeFactory.dialect],
+ dialect: storeFactory.dialect
+ });
}
}
@@ -951,7 +946,7 @@ $generatorXml.metadataQueryIndexes = function (res, meta) {
res.startBlock('<list>');
_.forEach(indexes, function (index) {
- res.startBlock('<bean class="org.apache.ignite.cache.store.QueryEntityIndex">');
+ res.startBlock('<bean class="org.apache.ignite.cache.QueryIndex">');
$generatorXml.property(res, index, 'name');
$generatorXml.property(res, index, 'type');
@@ -994,15 +989,15 @@ $generatorXml.metadataDatabaseFields = function (res, meta, fieldProp) {
_.forEach(fields, function (field) {
res.startBlock('<bean class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">');
- $generatorXml.property(res, field, 'databaseName');
+ $generatorXml.property(res, field, 'databaseFieldName');
- res.startBlock('<property name="databaseType">');
- res.line('<util:constant static-field="java.sql.Types.' + field.databaseType + '"/>');
+ res.startBlock('<property name="databaseFieldType">');
+ res.line('<util:constant static-field="java.sql.Types.' + field.databaseFieldType + '"/>');
res.endBlock('</property>');
- $generatorXml.property(res, field, 'javaName');
+ $generatorXml.property(res, field, 'javaFieldName');
- $generatorXml.classNameProperty(res, field, 'javaType');
+ $generatorXml.classNameProperty(res, field, 'javaFieldType');
res.endBlock('</bean>');
});
@@ -1068,9 +1063,9 @@ $generatorXml.cacheQueryMetadata = function(meta, res) {
if (!res)
res = $generatorCommon.builder();
- res.startBlock('<bean class="org.apache.ignite.cache.store.QueryEntity">');
+ res.startBlock('<bean class="org.apache.ignite.cache.QueryEntity">');
- $generatorXml.classNameProperty(res, meta, 'keyType');
+ $generatorXml.property(res, meta, 'keyType');
$generatorXml.property(res, meta, 'valueType');
$generatorXml.metadataQuery(meta, res);
@@ -1117,7 +1112,7 @@ $generatorXml.cache = function(cache, res) {
$generatorXml.cacheQuery(cache, res);
- $generatorXml.cacheStore(cache, res);
+ $generatorXml.cacheStore(cache, cache.metadatas, res);
$generatorXml.cacheConcurrency(cache, res);
@@ -1358,11 +1353,51 @@ $generatorXml.igfsMisc = function(igfs, res) {
};
// Generate cluster config.
+$generatorXml.generateDataSources = function (datasources, res) {
+ if (!res)
+ res = $generatorCommon.builder();
+
+ if (datasources.length > 0) {
+ res.line('<!-- Data source beans will be initialized from external properties file. -->');
+
+ _.forEach(datasources, function (item) {
+ var beanId = item.dataSourceBean;
+
+ res.startBlock('<bean id="' + beanId + '" class="' + item.className + '">');
+
+ switch (item.dialect) {
+ case 'DB2':
+ res.line('<property name="serverName" value="${' + beanId + '.jdbc.server_name}" />');
+ res.line('<property name="portNumber" value="${' + beanId + '.jdbc.port_number}" />');
+ res.line('<property name="databaseName" value="${' + beanId + '.jdbc.database_name}" />');
+ res.line('<property name="driverType" value="${' + beanId + '.jdbc.driver_type}" />');
+ break;
+
+ default:
+ res.line('<property name="URL" value="${' + beanId + '.jdbc.url}" />');
+ }
+
+ res.line('<property name="user" value="${' + beanId + '.jdbc.username}" />');
+ res.line('<property name="password" value="${' + beanId + '.jdbc.password}" />');
+
+ res.endBlock('</bean>');
+
+ res.needEmptyLine = true;
+
+ res.emptyLineIfNeeded();
+ });
+
+ res.needEmptyLine = true;
+
+ res.emptyLineIfNeeded();
+ }
+
+ return res;
+};
+
$generatorXml.cluster = function (cluster, clientNearCfg) {
if (cluster) {
- var res = $generatorCommon.builder();
-
- res.deep = 1;
+ var res = $generatorCommon.builder(1);
if (clientNearCfg) {
res.startBlock('<bean id="nearCacheBean" class="org.apache.ignite.configuration.NearCacheConfiguration">');
@@ -1375,7 +1410,9 @@ $generatorXml.cluster = function (cluster, clientNearCfg) {
res.endBlock('</bean>');
- res.line();
+ res.needEmptyLine = true;
+
+ res.emptyLineIfNeeded();
}
// Generate Ignite Configuration.
@@ -1441,30 +1478,7 @@ $generatorXml.cluster = function (cluster, clientNearCfg) {
}
// 3. Add data sources.
- if (res.datasources.length > 0) {
- xml += ' <!-- Data source beans will be initialized from external properties file. -->\n';
-
- _.forEach(res.datasources, function (item) {
- var beanId = item.dataSourceBean;
-
- xml += ' <bean id="' + beanId + '" class="' + item.className + '">\n';
- switch (item.dialect) {
- case 'DB2':
- xml += ' <property name="serverName" value="${' + beanId + '.jdbc.server_name}" />\n';
- xml += ' <property name="portNumber" value="${' + beanId + '.jdbc.port_number}" />\n';
- xml += ' <property name="databaseName" value="${' + beanId + '.jdbc.database_name}" />\n';
- xml += ' <property name="driverType" value="${' + beanId + '.jdbc.driver_type}" />\n';
- break;
-
- default:
- xml += ' <property name="URL" value="${' + beanId + '.jdbc.url}" />\n';
- }
-
- xml += ' <property name="user" value="${' + beanId + '.jdbc.username}" />\n';
- xml += ' <property name="password" value="${' + beanId + '.jdbc.password}" />\n';
- xml += ' </bean>\n\n';
- });
- }
+ xml += $generatorXml.generateDataSources(res.datasources, $generatorCommon.builder(1)).asString();
// 3. Add main content.
xml += res.asString();
http://git-wip-us.apache.org/repos/asf/ignite/blob/fa7b0c9c/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 336bf67..8262ccc 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
@@ -237,10 +237,10 @@ mixin details-row
+ico-exclamation('{{detail.model}}', 'ipaddress', 'Invalid address, see help for format description.')
mixin table-db-field-edit(prefix, focusId, index)
- -var databaseName = prefix + 'DatabaseName'
- -var databaseType = prefix + 'DatabaseType'
- -var javaName = prefix + 'JavaName'
- -var javaType = prefix + 'JavaType'
+ -var databaseName = prefix + 'DatabaseFieldName'
+ -var databaseType = prefix + 'DatabaseFieldType'
+ -var javaName = prefix + 'JavaFieldName'
+ -var javaType = prefix + 'JavaFieldType'
-var databaseNameModel = 'field.' + databaseName
-var databaseTypeModel = 'field.' + databaseType
@@ -434,7 +434,7 @@ mixin form-row-custom(lblClasses, fieldClasses, dataSource)
tr(ng-repeat='item in #{fieldMdl}')
td
div(ng-show='!tableEditing(field, $index)')
- a.labelFormField(ng-click='tableStartEdit(backupItem, field, $index)') {{$index + 1}}) {{item.databaseName}} / {{item.databaseType}} / {{item.javaName}} / {{item.javaType}}
+ a.labelFormField(ng-click='tableStartEdit(backupItem, field, $index)') {{$index + 1}}) {{item.databaseFieldName}} / {{item.databaseFieldType}} / {{item.javaFieldName}} / {{item.javaFieldType}}
+btn-remove('tableRemove(backupItem, field, $index)', 'field.removeTip')
div(ng-if='tableEditing(field, $index)')
+table-db-field-edit('cur', '{{::field.focusId}}', '$index')