Repository: ignite
Updated Branches:
  refs/heads/ignite-843 7aae0ee85 -> f15f8bd8c


IGNITE-843 WIP preview.


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

Branch: refs/heads/ignite-843
Commit: f15f8bd8ce51d2a134602ab338042d113f229a38
Parents: 7aae0ee
Author: AKuznetsov <[email protected]>
Authored: Mon Aug 24 23:46:15 2015 +0700
Committer: AKuznetsov <[email protected]>
Committed: Mon Aug 24 23:46:15 2015 +0700

----------------------------------------------------------------------
 .../main/js/controllers/clusters-controller.js  |  10 +
 .../src/main/js/controllers/common-module.js    | 204 ++++++++++++++++++-
 .../src/main/js/views/includes/controls.jade    |   2 +-
 3 files changed, 212 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/f15f8bd8/modules/control-center-web/src/main/js/controllers/clusters-controller.js
----------------------------------------------------------------------
diff --git 
a/modules/control-center-web/src/main/js/controllers/clusters-controller.js 
b/modules/control-center-web/src/main/js/controllers/clusters-controller.js
index ac6b347..2c7d016 100644
--- a/modules/control-center-web/src/main/js/controllers/clusters-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/clusters-controller.js
@@ -187,6 +187,16 @@ controlCenterModule.controller('clustersController', 
['$scope', '$http', '$commo
 
                         $scope.preview.general = 
$code.xmlClusterGeneral(val).join('');
                         $scope.preview.atomics = 
$code.xmlClusterAtomics(val).join('');
+                        $scope.preview.communication = 
$code.xmlClusterCommunication(val).join('');
+                        $scope.preview.deployment = 
$code.xmlClusterDeployment(val).join('');
+                        $scope.preview.events = 
$code.xmlClusterEvents(val).join('');
+                        $scope.preview.marshaller = 
$code.xmlClusterMarshaller(val).join('');
+                        $scope.preview.metrics = 
$code.xmlClusterMetrics(val).join('');
+                        $scope.preview.p2p = $code.xmlClusterP2P(val).join('');
+                        $scope.preview.swap = 
$code.xmlClusterSwap(val).join('');
+                        $scope.preview.time = 
$code.xmlClusterTime(val).join('');
+                        $scope.preview.pools = 
$code.xmlClusterPools(val).join('');
+                        $scope.preview.transactions = 
$code.xmlClusterTransactions(val).join('');
                     }
                 }, true);
             })

http://git-wip-us.apache.org/repos/asf/ignite/blob/f15f8bd8/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 85bdc3e..be4a6a2 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
@@ -1072,7 +1072,7 @@ controlCenterModule.service('$code', ['$common', function 
($common) {
         var val = obj[propName];
 
         if ($common.isDefined(val))
-            addElement(res, 'property', 'name', propName, 'value', 
generatorCommon.javaBuildInClass(val));
+            addElement(res, 'property', 'name', propName, 'value', 
$common.javaBuildInClass(val));
 
         return val;
     }
@@ -1107,13 +1107,48 @@ controlCenterModule.service('$code', ['$common', 
function ($common) {
         this.fields = fields;
     }
 
-    atomicConfiguration = new 
ClassDescriptor('org.apache.ignite.configuration.AtomicConfiguration', {
+    var atomicConfiguration = new 
ClassDescriptor('org.apache.ignite.configuration.AtomicConfiguration', {
         backups: null,
         cacheMode: {type: 'enum', enumClass: 'CacheMode'},
         atomicSequenceReserveSize: null
     });
 
-    knownClasses = {
+    var evictionPolicies = {
+        'LRU': new 
ClassDescriptor('org.apache.ignite.cache.eviction.lru.LruEvictionPolicy',
+            {batchSize: null, maxMemorySize: null, maxSize: null}),
+        'RND': new 
ClassDescriptor('org.apache.ignite.cache.eviction.random.RandomEvictionPolicy', 
{maxSize: null}),
+        'FIFO': new 
ClassDescriptor('org.apache.ignite.cache.eviction.fifo.FifoEvictionPolicy',
+            {batchSize: null, maxMemorySize: null, maxSize: null}),
+        'SORTED': new 
ClassDescriptor('org.apache.ignite.cache.eviction.sorted.SortedEvictionPolicy',
+            {batchSize: null, maxMemorySize: null, maxSize: null})
+    };
+
+    var marshallers = {
+        OptimizedMarshaller: new 
ClassDescriptor('org.apache.ignite.marshaller.optimized.OptimizedMarshaller', {
+            poolSize: null,
+            requireSerializable: null
+        }),
+        JdkMarshaller: new 
ClassDescriptor('org.apache.ignite.marshaller.jdk.JdkMarshaller', {})
+    };
+
+    var swapSpaceSpi = new 
ClassDescriptor('org.apache.ignite.spi.swapspace.file.FileSwapSpaceSpi', {
+        baseDirectory: null,
+        readStripesNumber: null,
+        maximumSparsity: {type: 'float'},
+        maxWriteQueueSize: null,
+        writeBufferSize: null
+    });
+
+    var transactionConfiguration = new 
ClassDescriptor('org.apache.ignite.configuration.TransactionConfiguration', {
+        defaultTxConcurrency: {type: 'enum', enumClass: 
'TransactionConcurrency'},
+        transactionIsolation: {type: 'TransactionIsolation', setterName: 
'defaultTxIsolation'},
+        defaultTxTimeout: null,
+        pessimisticTxLogLinger: null,
+        pessimisticTxLogSize: null,
+        txSerializableEnabled: null
+    });
+
+    var knownClasses = {
         Oracle: new 
ClassDescriptor('org.apache.ignite.cache.store.jdbc.dialect.OracleDialect', {}),
         DB2: new 
ClassDescriptor('org.apache.ignite.cache.store.jdbc.dialect.DB2Dialect', {}),
         SQLServer: new 
ClassDescriptor('org.apache.ignite.cache.store.jdbc.dialect.SQLServerDialect', 
{}),
@@ -1305,6 +1340,169 @@ controlCenterModule.service('$code', ['$common', 
function ($common) {
             res.needEmptyLine = true;
 
             return res;
+        },
+        xmlClusterCommunication: function (cluster, res) {
+            if (!res)
+                res = builder();
+
+            // Generate communication group.
+            addProperty(res, cluster, 'networkTimeout');
+            addProperty(res, cluster, 'networkSendRetryDelay');
+            addProperty(res, cluster, 'networkSendRetryCount');
+            addProperty(res, cluster, 'segmentCheckFrequency');
+            addProperty(res, cluster, 'waitForSegmentOnStart');
+            addProperty(res, cluster, 'discoveryStartupDelay');
+            res.needEmptyLine = true;
+
+            return res;
+        },
+        xmlClusterDeployment: function(cluster, res) {
+            if (!res)
+                res = builder();
+
+            // Generate deployment group.
+            addProperty(res, cluster, 'deploymentMode');
+            res.needEmptyLine = true;
+
+            return res;
+        },
+        xmlClusterEvents: function(cluster, res) {
+            if (!res)
+                res = builder();
+
+            // Generate events group.
+            if (cluster.includeEventTypes && cluster.includeEventTypes.length 
> 0) {
+                res.emptyLineIfNeeded();
+
+                res.startBlock('<property name="includeEventTypes">');
+
+                if (cluster.includeEventTypes.length == 1)
+                    res.line('<util:constant 
static-field="org.apache.ignite.events.EventType.' + 
cluster.includeEventTypes[0] + '"/>');
+                else {
+                    res.startBlock('<array>');
+
+                    for (i = 0; i < cluster.includeEventTypes.length; i++) {
+                        if (i > 0)
+                            res.line();
+
+                        var eventGroup = cluster.includeEventTypes[i];
+
+                        res.line('<!-- EventType.' + eventGroup + ' -->');
+
+                        var eventList = dataStructures.eventGroups[eventGroup];
+
+                        for (var k = 0; k < eventList.length; k++) {
+                            res.line('<util:constant 
static-field="org.apache.ignite.events.EventType.' + eventList[k] + '"/>')
+                        }
+                    }
+
+                    res.endBlock('</array>');
+                }
+
+                res.endBlock('</property>');
+
+                res.needEmptyLine = true;
+            }
+
+            return res;
+        },
+        xmlClusterMarshaller: function(cluster, res) {
+            if (!res)
+                res = builder();
+
+            // Generate marshaller group.
+            var marshaller = cluster.marshaller;
+
+            if (marshaller && marshaller.kind) {
+                var marshallerDesc = marshallers[marshaller.kind];
+
+                addBeanWithProperties(res, marshaller[marshaller.kind], 
'marshaller', marshallerDesc.className, marshallerDesc.fields, true);
+                res.needEmptyLine = true;
+            }
+
+            addProperty(res, cluster, 'marshalLocalJobs');
+            addProperty(res, cluster, 'marshallerCacheKeepAliveTime');
+            addProperty(res, cluster, 'marshallerCacheThreadPoolSize');
+            res.needEmptyLine = true;
+
+            return res;
+        },
+        xmlClusterMetrics: function(cluster, res) {
+            if (!res)
+                res = builder();
+
+            // Generate metrics group.
+            addProperty(res, cluster, 'metricsExpireTime');
+            addProperty(res, cluster, 'metricsHistorySize');
+            addProperty(res, cluster, 'metricsLogFrequency');
+            addProperty(res, cluster, 'metricsUpdateFrequency');
+            res.needEmptyLine = true;
+
+            return res;
+        },
+        xmlClusterP2P: function(cluster, res) {
+            if (!res)
+                res = builder();
+
+            // Generate PeerClassLoading group.
+            addProperty(res, cluster, 'peerClassLoadingEnabled');
+            addListProperty(res, cluster, 
'peerClassLoadingLocalClassPathExclude');
+            addProperty(res, cluster, 
'peerClassLoadingMissedResourcesCacheSize');
+            addProperty(res, cluster, 'peerClassLoadingThreadPoolSize');
+            res.needEmptyLine = true;
+
+            return res;
+        },
+        xmlClusterSwap: function(cluster, res) {
+            if (!res)
+                res = builder();
+
+            // Generate swap group.
+            if (cluster.swapSpaceSpi && cluster.swapSpaceSpi.kind == 
'FileSwapSpaceSpi') {
+                addBeanWithProperties(res, 
cluster.swapSpaceSpi.FileSwapSpaceSpi, 'swapSpaceSpi',
+                    swapSpaceSpi.className, swapSpaceSpi.fields, true);
+
+                res.needEmptyLine = true;
+            }
+
+            return res;
+        },
+        xmlClusterTime: function(cluster, res) {
+            if (!res)
+                res = builder();
+
+            // Generate time group.
+            addProperty(res, cluster, 'clockSyncSamples');
+            addProperty(res, cluster, 'clockSyncFrequency');
+            addProperty(res, cluster, 'timeServerPortBase');
+            addProperty(res, cluster, 'timeServerPortRange');
+            res.needEmptyLine = true;
+
+            return res;
+        },
+        xmlClusterPools: function(cluster, res) {
+            if (!res)
+                res = builder();
+
+            // Generate thread pools group.
+            addProperty(res, cluster, 'publicThreadPoolSize');
+            addProperty(res, cluster, 'systemThreadPoolSize');
+            addProperty(res, cluster, 'managementThreadPoolSize');
+            addProperty(res, cluster, 'igfsThreadPoolSize');
+            res.needEmptyLine = true;
+
+            return res;
+        },
+        xmlClusterTransactions: function(cluster, res) {
+            if (!res)
+                res = builder();
+
+            // Generate transactions group.
+            addBeanWithProperties(res, cluster.transactionConfiguration, 
'transactionConfiguration',
+                transactionConfiguration.className, 
transactionConfiguration.fields);
+            res.needEmptyLine = true;
+
+            return res;
         }
     }
 }]);

http://git-wip-us.apache.org/repos/asf/ignite/blob/f15f8bd8/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 656eaa4..15dd664 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
@@ -312,7 +312,7 @@ mixin form-row-custom(lblClasses, fieldClasses, dataSource)
                 +tipField('field.tip')
                 .input-tip
                     button.form-control(bs-select ng-disabled=fieldDisabled 
data-placeholder='{{::field.placeholder}}' bs-options='item.value as item.label 
for item in {{field.items}}' tabindex='0')&attributes(fieldCommon)
-            a.customize(ng-show='#{fieldMdl} && field.settings' 
ng-click='#{expanded} = !#{expanded}') {{#{expanded} ? 'Hide settings' : 'Show 
settings'}}
+            a.customize(ng-show='#{fieldMdl} && field.settings && 
field.details[#{fieldMdl}].fields.length > 0' ng-click='#{expanded} = 
!#{expanded}') {{#{expanded} ? 'Hide settings' : 'Show settings'}}
             .col-sm-12.panel-details(ng-show='(#{expanded} || !field.settings) 
&& #{fieldMdl}')
                 .details-row(ng-repeat='detail in 
field.details[#{fieldMdl}].fields')
                     +details-row

Reply via email to