Repository: incubator-ignite Updated Branches: refs/heads/ignite-843 8abc2ce92 -> 712396e27
# ignite-843 WIP clusters. Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/712396e2 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/712396e2 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/712396e2 Branch: refs/heads/ignite-843 Commit: 712396e27a018e2ac4dfcc37d8ca97cf35b7eb26 Parents: 8abc2ce Author: Andrey <anovi...@gridgain.com> Authored: Fri Jun 5 13:43:38 2015 +0700 Committer: Andrey <anovi...@gridgain.com> Committed: Fri Jun 5 13:43:38 2015 +0700 ---------------------------------------------------------------------- .../nodejs/public/form-models/clusters.json | 220 ++++++++++++++++--- .../public/javascripts/controllers/common.js | 1 + modules/webconfig/nodejs/views/clusters.jade | 140 +----------- .../nodejs/views/includes/controls.jade | 5 + 4 files changed, 210 insertions(+), 156 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/712396e2/modules/webconfig/nodejs/public/form-models/clusters.json ---------------------------------------------------------------------- diff --git a/modules/webconfig/nodejs/public/form-models/clusters.json b/modules/webconfig/nodejs/public/form-models/clusters.json index 761256f..19b9097 100644 --- a/modules/webconfig/nodejs/public/form-models/clusters.json +++ b/modules/webconfig/nodejs/public/form-models/clusters.json @@ -16,50 +16,220 @@ ], "advanced": [ { - "label": "G1", + "label": "Atomic data structures", "fields": [ { - "label": "Name", + "label": "Number of backup nodes", "type": "text", - "model": "name" + "model": "atomic.backups", + "placeholder": "0" }, { - "label": "Mode", + "label": "Cache mode", "type": "dropdown", - "model": "mode", - "placeholder": "Choose mode", - "items": "modes" + "model": "atomic.cacheMode", + "placeholder": "PARTITIONED", + "items": "cacheModes" }, { - "label": "Atomicity", - "type": "dropdown", - "model": "atomicity", - "placeholder": "Choose atomicity", - "items": "atomicities" + "label": "Sequence reserve size", + "type": "text", + "model": "atomic.seqReserveSize", + "placeholder": "1,000" } ] }, { - "label": "G2", + "label": "Cache configuration", "fields": [ { - "label": "Name", + "label": "Caches", + "type": "dropdown-multiple", + "model": "caches", + "placeholder": "Choose caches", + "items": "caches" + }, + { + "label": "Enable cache sanity check", + "type": "check", + "model": "cacheSanityCheckEnabled" + } + ] + }, + { + "label": "Events", + "fields": [ + { + "label": "Include type", + "type": "dropdown-multiple", + "model": "inclEvtTypes", + "placeholder": "Choose recorded event types", + "items": "events" + } + ] + }, + { + "label": "Marshaller", + "fields": [ + { + "label": "Keep alive time", "type": "text", - "model": "name" + "model": "marshCacheKeepAliveTime", + "placeholder": "10,000" }, { - "label": "Mode", - "type": "dropdown", - "model": "mode", - "placeholder": "Choose mode", - "items": "modes" + "label": "Pool size", + "type": "text", + "model": "marshCachePoolSize", + "placeholder": "max(8, availableProcessors) * 2" + } + ] + }, + { + "label": "Metrics", + "fields": [ + { + "label": "Elapsed time", + "type": "text", + "model": "metricsExpTime", + "placeholder": "0" }, { - "label": "Atomicity", - "type": "dropdown", - "model": "atomicity", - "placeholder": "Choose atomicity", - "items": "atomicities" + "label": "History size", + "type": "text", + "model": "metricsHistSize", + "placeholder": "10,000" + }, + { + "label": "Log frequency", + "type": "text", + "model": "metricsLogFreq", + "placeholder": "60,000" + }, + { + "label": "Metrics update frequency", + "type": "text", + "model": "metricsUpdateFreq", + "placeholder": "60,000" + } + ] + }, + { + "label": "Network", + "fields": [ + { + "label": "Timeout", + "type": "text", + "model": "netTimeout", + "placeholder": "5,000" + }, + { + "label": "Send retry delay", + "type": "text", + "model": "sndRetryDelay", + "placeholder": "1,000" + }, + { + "label": "Send retry count", + "type": "text", + "model": "sndRetryCnt", + "placeholder": "3" + } + ] + }, + { + "label": "Peer Class Loading", + "fields": [ + { + "label": "Enable peer class loading", + "type": "check", + "model": "p2pEnabled" + }, + { + "label": "Local class path exclude", + "type": "text", + "model": "p2pLocClsPathExcl", + "placeholder": "[]" + }, + { + "label": "Missed resources cache size", + "type": "text", + "model": "p2pMissedCacheSize", + "placeholder": "100" + }, + { + "label": "Pool size", + "type": "text", + "model": "p2pPoolSize", + "placeholder": "availableProcessors" + } + ] + }, + { + "label": "Thread pools size", + "fields": [ + { + "label": "Public", + "type": "text", + "model": "pubPoolSize", + "placeholder": "max(8, availableProcessors) * 2" + }, + { + "label": "System", + "type": "text", + "model": "sysPoolSize", + "placeholder": "max(8, availableProcessors) * 2" + }, + { + "label": "Management", + "type": "text", + "model": "mgmtPoolSize", + "placeholder": "4" + } + ] + }, + { + "label": "Transactions configuration", + "fields": [ + { + "label": "Default transaction timeout", + "type": "text", + "model": "dfltTxTimeout", + "placeholder": "0" + }, + { + "label": "Pessimistic log cleanup delay", + "type": "text", + "model": "pessimisticTxLogLinger", + "placeholder": "10,000" + }, + { + "label": "Pessimistic transactions log size", + "type": "text", + "model": "pessimisticTxLogSize", + "placeholder": "0" + }, + { + "label": "Enable serializable cache transactions", + "type": "check", + "model": "txSerEnabled" + } + ] + }, + { + "label": "Utility", + "fields": [ + { + "label": "Keep alive time", + "type": "text", + "model": "utilityCacheKeepAliveTime", + "placeholder": "10,000" + }, + { + "label": "Pool size", + "type": "text", + "model": "utilityCachePoolSize", + "placeholder": "max(8, availableProcessors) * 2" } ] } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/712396e2/modules/webconfig/nodejs/public/javascripts/controllers/common.js ---------------------------------------------------------------------- diff --git a/modules/webconfig/nodejs/public/javascripts/controllers/common.js b/modules/webconfig/nodejs/public/javascripts/controllers/common.js index d940078..f383b91 100644 --- a/modules/webconfig/nodejs/public/javascripts/controllers/common.js +++ b/modules/webconfig/nodejs/public/javascripts/controllers/common.js @@ -27,6 +27,7 @@ configuratorModule.config(function($tooltipProvider) { configuratorModule.config(function($selectProvider) { angular.extend($selectProvider.defaults, { + maxLength: '1', allText: 'Select All', noneText: 'Clear All' }); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/712396e2/modules/webconfig/nodejs/views/clusters.jade ---------------------------------------------------------------------- diff --git a/modules/webconfig/nodejs/views/clusters.jade b/modules/webconfig/nodejs/views/clusters.jade index 7639a6d..6021005 100644 --- a/modules/webconfig/nodejs/views/clusters.jade +++ b/modules/webconfig/nodejs/views/clusters.jade @@ -19,6 +19,8 @@ extends layout-sidebar append scripts script(src='/javascripts/controllers/clusters.js') +include includes/controls + block content .docs-header h1 Clusters @@ -40,139 +42,15 @@ block content form.form-horizontal(name='editForm' ng-if='backupItem') h3 General .settings-row(ng-repeat='field in general') - span.col-sm-2 {{field.label}}: - .col-sm-3(ng-switch on='field.type') - div(ng-switch-when='text') - input.form-control(type='text' ng-model='backupItem[field.model]') - div(ng-switch-when='dropdown') - button.form-control(ng-model='backupItem[field.model]' data-template='/select' data-placeholder='{{field.placeholder}}' bs-options='item.value as item.label for item in {{field.items}}' bs-select) - i.tip.fa.fa-question-circle(bs-tooltip type='button' ng-show='field.tip' data-trigger='hover' data-placement='right' data-title='{{field.tip.join("")}}' data-html='true') + div(ng-switch on='field.type') + +form-row .panel(bs-collapse data-start-collapsed='true') .panel-collapse(bs-collapse-target) - h3 Atomic data structures - .settings-row - span.col-sm-2 Number of backup nodes: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.atomic.backups' placeholder='0') - .settings-row - span.col-sm-2 Cache mode: - .col-sm-3 - button.form-control(ng-model='backupItem.atomic.cacheMode' data-template='/select' data-placeholder='PARTITIONED' bs-options='item.value as item.label for item in cacheModes' bs-select) - .settings-row - span.col-sm-2 Sequence reserve size: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.atomic.seqReserveSize' placeholder='1,000') - h3 Cache configuration - .settings-row - span.col-sm-2 Caches: - .col-sm-3 - button.form-control(ng-model='backupItem.caches' data-template='/select' data-multiple='1' data-max-length='3' data-placeholder='Choose caches' bs-options='item.value as item.label for item in caches' bs-select) - .settings-row - input(type='checkbox' ng-model='backupItem.cacheSanityCheckEnabled') - label(ng-click='backupItem.cacheSanityCheckEnabled = !backupItem.cacheSanityCheckEnabled') Enable cache sanity check. - h3 Events - .settings-row - span.col-sm-2 Include type: - .col-sm-3 - button.form-control(ng-model='backupItem.inclEvtTypes' data-template='/select' data-multiple='1' data-max-length='2' data-placeholder='Choose recorded event types' bs-options='item.value as item.label for item in events' bs-select) - h3 Marshaller - .settings-row - span.col-sm-2 Keep alive time: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.marshCacheKeepAliveTime' placeholder='10,000') - .settings-row - span.col-sm-2 Pool size: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.marshCachePoolSize' placeholder='max(8, availableProcessors) * 2') - h3 Metrics - .settings-row - span.col-sm-2 Elapsed time: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.metricsExpTime' placeholder='0') - .settings-row - span.col-sm-2 History size: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.metricsHistSize' placeholder='10,000') - .settings-row - span.col-sm-2 Log frequency: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.metricsLogFreq' placeholder='60,000') - .settings-row - span.col-sm-2 Log frequency: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.metricsUpdateFreq' placeholder='60,000') - .settings-row - span.col-sm-2 Update frequency: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.metricsLogFreq' placeholder='60,000') - h3 Network - .settings-row - span.col-sm-2 Timeout: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.netTimeout' placeholder='5,000') - .settings-row - span.col-sm-2 Send retry delay: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.sndRetryDelay' placeholder='1,000') - .settings-row - span.col-sm-2 Send retry count: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.sndRetryCnt' placeholder='3') - h3 Peer Class Loading - .settings-row - input(type='checkbox' ng-model='backupItem.p2pEnabled') - label(ng-click='backupItem.p2pEnabled = !backupItem.p2pEnabled') Enable peer class loading. - .settings-row - span.col-sm-2 Local class path exclude: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.p2pLocClsPathExcl' placeholder='[]') - .settings-row - span.col-sm-2 Missed resources cache size: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.p2pMissedCacheSize' placeholder='100') - .settings-row - span.col-sm-2 Pool size: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.p2pPoolSize' placeholder='availableProcessors') - h3 Thread pools size - .settings-row - span.col-sm-2 Public: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.pubPoolSize' placeholder='max(8, availableProcessors) * 2') - .settings-row - span.col-sm-2 System: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.sysPoolSize' placeholder='max(8, availableProcessors) * 2') - .settings-row - span.col-sm-2 Management: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.mgmtPoolSize' placeholder='4') - h3 Transactions configuration - // TODO - .settings-row - span.col-sm-2 Default transaction timeout: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.transactions.dfltTxTimeout' placeholder='0') - .settings-row - span.col-sm-2 Pessimistic log cleanup delay: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.transactions.pessimisticTxLogSize' placeholder='10,000') - .settings-row - span.col-sm-2 Pessimistic transactions log size: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.transactions.pessimisticTxLogSize' placeholder='0') - .settings-row - input(type='checkbox' ng-model='backupItem.transactions.txSerEnabled') - label(ng-click='backupItem.txSerEnabled = !backupItem.txSerEnabled') span Enable serializable cache transactions. - h3 Utility - .settings-row - span.col-sm-2 Keep alive time: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.utilityCacheKeepAliveTime' placeholder='10,000') - .settings-row - span.col-sm-2 Pool size: - .col-sm-3 - input.form-control(type='text' ng-model='backupItem.utilityCachePoolSize' placeholder='max(8, availableProcessors) * 2') + div(ng-repeat='group in advanced') + h3 {{group.label}} + .settings-row(ng-repeat='field in group.fields') + div(ng-switch on='field.type') + +form-row .panel-heading .panel-title span(bs-collapse-toggle) http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/712396e2/modules/webconfig/nodejs/views/includes/controls.jade ---------------------------------------------------------------------- diff --git a/modules/webconfig/nodejs/views/includes/controls.jade b/modules/webconfig/nodejs/views/includes/controls.jade index f24f70d..f173781 100644 --- a/modules/webconfig/nodejs/views/includes/controls.jade +++ b/modules/webconfig/nodejs/views/includes/controls.jade @@ -31,4 +31,9 @@ mixin form-row label.col-sm-2 {{field.label}}: .col-sm-3 button.form-control(bs-select ng-model='backupItem[field.model]' data-template='/select' data-placeholder='{{field.placeholder}}' bs-options='item.value as item.label for item in {{field.items}}') + +tip + div(ng-switch-when='dropdown-multiple') + label.col-sm-2 {{field.label}}: + .col-sm-3 + button.form-control(bs-select ng-model='backupItem[field.model]' data-multiple='1' data-template='/select' data-placeholder='{{field.placeholder}}' bs-options='item.value as item.label for item in {{field.items}}') +tip \ No newline at end of file