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 2016/02/26 11:16:30 UTC
[1/5] ignite git commit: IGNITE-2724 WIP support for ZooKeeper.
Repository: ignite
Updated Branches:
refs/heads/ignite-2612 5c0aa3547 -> 666de92f2
IGNITE-2724 WIP support for ZooKeeper.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/6de273fa
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/6de273fa
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/6de273fa
Branch: refs/heads/ignite-2612
Commit: 6de273facf0489ebca2c944867882f805c76fbaf
Parents: 37bc977
Author: vsisko <vs...@gridgain.com>
Authored: Fri Feb 26 13:30:53 2016 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Fri Feb 26 13:30:53 2016 +0700
----------------------------------------------------------------------
.../states/configuration/clusters/general.jade | 8 +++++++
.../clusters/general/discovery/zookeeper.jade | 21 +++++++++++------
.../bounded-exponential-backoff.jade | 6 +++--
.../retrypolicy/exponential-backoff.jade | 6 +++--
.../zookeeper/retrypolicy/forever.jade | 1 +
.../zookeeper/retrypolicy/n-times.jade | 2 ++
.../zookeeper/retrypolicy/one-time.jade | 1 +
.../zookeeper/retrypolicy/until-elapsed.jade | 2 ++
.../main/js/controllers/clusters-controller.js | 6 ++---
.../main/js/helpers/generator/generator-java.js | 9 ++++----
.../main/js/helpers/generator/generator-xml.js | 24 ++++----------------
.../src/main/js/public/stylesheets/style.scss | 2 +-
12 files changed, 49 insertions(+), 39 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/6de273fa/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general.jade
index c750119..8317b47 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general.jade
@@ -70,6 +70,14 @@ form.panel.panel-default(name='general' novalidate)
| Discovery:
ignite-form-field-tooltip
| Discovery allows to discover remote nodes in grid
+ ul: li Static IPs - IP Finder which works only with pre configured list of IP addresses specified
+ li Multicast - Multicast based IP finder
+ li AWS S3 - AWS S3 based IP finder
+ li Apache jclouds - Apache jclouds multi cloud toolkit based IP finder
+ li Google cloud storage - Google Cloud Storage based IP finder
+ li JDBC - JDBC based IP finder
+ li Shared filesystem - Shared filesystem based IP finder
+ li Apache ZooKeeper - Apache ZooKeeper based IP finder
ignite-form-field-dropdown(
data-id='discovery'
data-name='discovery'
http://git-wip-us.apache.org/repos/asf/ignite/blob/6de273fa/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper.jade
index d99a7a7..709d436 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper.jade
@@ -31,9 +31,9 @@ div
.details-row
ignite-form-field
ignite-form-field-label
- | Connection string:
+ | Connect string:
ignite-form-field-tooltip
- | This property will be used when "IGNITE_ZK_CONNECTION_STRING" system property is not configured
+ | When "IGNITE_ZK_CONNECTION_STRING" system property is not configured this property will be used
ignite-form-field-input-text(
data-id='zkConnectionString'
data-name='zkConnectionString'
@@ -46,7 +46,14 @@ div
ignite-form-field-label
| Retry policy:
ignite-form-field-tooltip
- | Retry policy
+ | Available retry policies:
+ ul: li Exponential backoff - retries a set number of times with increasing sleep time between retries
+ li Bounded exponential backoff - retries a set number of times with an increasing (up to a maximum bound) sleep time between retries
+ li Until elapsed - retries until a given amount of time elapses
+ li Max number of times - retries a max number of times
+ li Only once - retries only once
+ li Always allow retry - retries infinitely
+ li Custom - custom retry policy implementation
ignite-form-field-dropdown(
data-id='retryPolicy'
data-name='retryPolicy'
@@ -56,7 +63,7 @@ div
{value: "UntilElapsed", label: "Until elapsed"},\
{value: "NTimes", label: "Max number of times"},\
{value: "OneTime", label: "Only once"},\
- {value: "Forever", label: "Always allowsRetry"},\
+ {value: "Forever", label: "Always allow retry"},\
{value: "Custom", label: "Custom"},\
{value: undefined, label: "Default"}\
]'
@@ -108,6 +115,6 @@ div
| Allow duplicate registrations
ignite-form-field-tooltip
| Whether to register each node only once, or if duplicate registrations are allowed#[br]
- | Nodes will attempt to register themselves, plus those they know about #[br]
- | By default, duplicate registrations are not allowed, but you might want to set this property to
- | #[b true] if you have multiple network interfaces or if you are facing troubles
+ | Nodes will attempt to register themselves, plus those they know about#[br]
+ | By default, duplicate registrations are not allowed, but you might want to set this property
+ | to #[b true] if you have multiple network interfaces or if you are facing troubles
http://git-wip-us.apache.org/repos/asf/ignite/blob/6de273fa/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/bounded-exponential-backoff.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/bounded-exponential-backoff.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/bounded-exponential-backoff.jade
index 06eb790..cc4920f 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/bounded-exponential-backoff.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/bounded-exponential-backoff.jade
@@ -20,7 +20,7 @@ div
.details-row
ignite-form-field
ignite-form-field-label
- | Base Sleep Time:
+ | Base interval:
ignite-form-field-tooltip
| Initial amount of time to wait between retries
ignite-form-field-input-number(
@@ -28,11 +28,12 @@ div
data-name='baseSleepTimeMs'
data-ng-model='#{model}.baseSleepTimeMs'
data-ng-required='true'
+ data-placeholder='1000'
)
.details-row
ignite-form-field
ignite-form-field-label
- | Max sleep time:
+ | Max interval:
ignite-form-field-tooltip
| Max time in ms to sleep on each retry
ignite-form-field-input-number(
@@ -53,5 +54,6 @@ div
data-name='maxRetries'
data-ng-model='#{model}.maxRetries'
data-ng-required='true'
+ data-placeholder='10'
data-max='29'
)
http://git-wip-us.apache.org/repos/asf/ignite/blob/6de273fa/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/exponential-backoff.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/exponential-backoff.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/exponential-backoff.jade
index 79bcfa1..b33622b 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/exponential-backoff.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/exponential-backoff.jade
@@ -20,7 +20,7 @@ div
.details-row
ignite-form-field
ignite-form-field-label
- | Base sleep time:
+ | Base interval:
ignite-form-field-tooltip
| Initial amount of time to wait between retries
ignite-form-field-input-number(
@@ -28,6 +28,7 @@ div
data-name='baseSleepTimeMs'
data-ng-model='#{model}.baseSleepTimeMs'
data-ng-required='true'
+ data-placeholder='1000'
)
.details-row
ignite-form-field
@@ -40,12 +41,13 @@ div
data-name='maxRetries'
data-ng-model='#{model}.maxRetries'
data-ng-required='true'
+ data-placeholder='10'
data-max='29'
)
.details-row
ignite-form-field
ignite-form-field-label
- | Max sleep time:
+ | Max interval:
ignite-form-field-tooltip
| Max time in ms to sleep on each retry
ignite-form-field-input-number(
http://git-wip-us.apache.org/repos/asf/ignite/blob/6de273fa/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/forever.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/forever.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/forever.jade
index 705fa2a..cde2869 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/forever.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/forever.jade
@@ -27,4 +27,5 @@
data-name='retryIntervalMs'
data-ng-model='#{model}.retryIntervalMs'
data-ng-required='true'
+ data-placeholder='1000'
)
http://git-wip-us.apache.org/repos/asf/ignite/blob/6de273fa/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/n-times.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/n-times.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/n-times.jade
index 0c44709..71a7acc 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/n-times.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/n-times.jade
@@ -27,6 +27,7 @@ div
data-id='n'
data-name='n'
data-ng-model='#{model}.n'
+ data-placeholder='10'
data-ng-required='true'
)
.details-row
@@ -40,4 +41,5 @@ div
data-name='sleepMsBetweenRetries'
data-ng-model='#{model}.sleepMsBetweenRetries'
data-ng-required='true'
+ data-placeholder='1000'
)
http://git-wip-us.apache.org/repos/asf/ignite/blob/6de273fa/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/one-time.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/one-time.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/one-time.jade
index 24b3514..39c7f13 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/one-time.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/one-time.jade
@@ -28,4 +28,5 @@ div
data-name='sleepMsBetweenRetry'
data-ng-model='#{model}.sleepMsBetweenRetry'
data-ng-required='true'
+ data-placeholder='1000'
)
http://git-wip-us.apache.org/repos/asf/ignite/blob/6de273fa/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/until-elapsed.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/until-elapsed.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/until-elapsed.jade
index c4e701e..e834d55 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/until-elapsed.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/zookeeper/retrypolicy/until-elapsed.jade
@@ -28,6 +28,7 @@ div
data-name='maxElapsedTimeMs'
data-ng-model='#{model}.maxElapsedTimeMs'
data-ng-required='true'
+ data-placeholder='60000'
)
.details-row
ignite-form-field
@@ -40,4 +41,5 @@ div
data-name='sleepMsBetweenRetries'
data-ng-model='#{model}.sleepMsBetweenRetries'
data-ng-required='true'
+ data-placeholder='1000'
)
http://git-wip-us.apache.org/repos/asf/ignite/blob/6de273fa/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 7e49f81..12b1199 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
@@ -62,13 +62,13 @@ consoleModule.controller('clustersController', function ($http, $timeout, $scope
var showPopoverMessage = $common.showPopoverMessage;
$scope.discoveries = [
- {value: 'Vm', label: 'static IPs'},
- {value: 'Multicast', label: 'multicast'},
+ {value: 'Vm', label: 'Static IPs'},
+ {value: 'Multicast', label: 'Multicast'},
{value: 'S3', label: 'AWS S3'},
{value: 'Cloud', label: 'Apache jclouds'},
{value: 'GoogleStorage', label: 'Google cloud storage'},
{value: 'Jdbc', label: 'JDBC'},
- {value: 'SharedFs', label: 'shared filesystem'},
+ {value: 'SharedFs', label: 'Shared filesystem'},
{value: 'ZooKeeper', label: 'Apache ZooKeeper'}
];
http://git-wip-us.apache.org/repos/asf/ignite/blob/6de273fa/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 732fe51..dfb7a64 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
@@ -67,7 +67,7 @@ $generatorJava.constructorArg = function (obj, propName, notFirst, opt) {
var v = obj ? obj[propName] : undefined;
if ($commonUtils.isDefinedAndNotEmpty(v))
- return (notFirst ? ', ' : '') + v;
+ return (notFirst ? ', ' : '') + $generatorJava.toJavaCode(v);
else if (!opt)
return notFirst ? ', null' : 'null';
else
@@ -2378,15 +2378,14 @@ $generatorJava.igfsSecondFS = function(igfs, varName, res) {
if (igfs.secondaryFileSystemEnabled) {
var secondFs = igfs.secondaryFileSystem || {};
- var uriDefined = $commonUtils.isDefinedAndNotEmpty(secondFs.uri);
var nameDefined = $commonUtils.isDefinedAndNotEmpty(secondFs.userName);
var cfgDefined = $commonUtils.isDefinedAndNotEmpty(secondFs.cfgPath);
res.line(varName + '.setSecondaryFileSystem(new ' +
res.importClass('org.apache.ignite.hadoop.fs.IgniteHadoopIgfsSecondaryFileSystem') + '(' +
- (uriDefined ? '"' + secondFs.uri + '"' : 'null') +
- (cfgDefined || nameDefined ? (cfgDefined ? ', "' + secondFs.cfgPath + '"' : ', null') : '') +
- (nameDefined ? ', "' + secondFs.userName + '"' : '') +
+ $generatorJava.constructorArg(secondFs, 'uri') +
+ (cfgDefined || nameDefined ? $generatorJava.constructorArg(secondFs, 'cfgPath', true) : '') +
+ $generatorJava.constructorArg(secondFs, 'userName', true, true) +
'));');
res.needEmptyLine = true;
http://git-wip-us.apache.org/repos/asf/ignite/blob/6de273fa/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 2d2c5c8..0afe190 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
@@ -1073,7 +1073,7 @@ $generatorXml.cacheRebalance = function(cache, res) {
if (cache.igfsAffinnityGroupSize) {
res.startBlock('<property name="affinityMapper">');
res.startBlock('<bean class="org.apache.ignite.igfs.IgfsGroupDataBlocksKeyMapper">');
- res.line('<constructor-arg value="' + cache.igfsAffinnityGroupSize + '"/>');
+ $generatorXml.constructorArg(res, -1, cache, 'igfsAffinnityGroupSize');
res.endBlock('</bean>');
res.endBlock('</property>');
}
@@ -1525,26 +1525,12 @@ $generatorXml.igfsSecondFS = function(igfs, res) {
var nameDefined = $commonUtils.isDefinedAndNotEmpty(secondFs.userName);
var cfgDefined = $commonUtils.isDefinedAndNotEmpty(secondFs.cfgPath);
- if ($commonUtils.isDefinedAndNotEmpty(secondFs.uri))
- res.line('<constructor-arg index="0" value="' + secondFs.uri + '"/>');
- else {
- res.startBlock('<constructor-arg index="0">');
- res.line('<null/>');
- res.endBlock('</constructor-arg>');
- }
+ $generatorXml.constructorArg(res, 0, secondFs, 'uri');
- if (cfgDefined || nameDefined) {
- if (cfgDefined)
- res.line('<constructor-arg index="1" value="' + secondFs.cfgPath + '"/>');
- else {
- res.startBlock('<constructor-arg index="1">');
- res.line('<null/>');
- res.endBlock('</constructor-arg>');
- }
- }
+ if (cfgDefined || nameDefined)
+ $generatorXml.constructorArg(res, 1, secondFs, 'cfgPath');
- if ($commonUtils.isDefinedAndNotEmpty(secondFs.userName))
- res.line('<constructor-arg index="2" value="' + secondFs.userName + '"/>');
+ $generatorXml.constructorArg(res, 2, secondFs, 'userName', true);
res.endBlock('</bean>');
res.endBlock('</property>');
http://git-wip-us.apache.org/repos/asf/ignite/blob/6de273fa/modules/control-center-web/src/main/js/public/stylesheets/style.scss
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/public/stylesheets/style.scss b/modules/control-center-web/src/main/js/public/stylesheets/style.scss
index 024fba9..4f2cf28 100644
--- a/modules/control-center-web/src/main/js/public/stylesheets/style.scss
+++ b/modules/control-center-web/src/main/js/public/stylesheets/style.scss
@@ -393,7 +393,7 @@ h1, h2, h3, h4, h5, h6 {
}
.details-row {
- padding: 0 10px;
+ padding: 0 5px;
}
.details-row, .settings-row {
[4/5] ignite git commit: Merge branch 'ignite-843-rc2' of
https://git-wip-us.apache.org/repos/asf/ignite into ignite-2612
Posted by ak...@apache.org.
Merge branch 'ignite-843-rc2' of https://git-wip-us.apache.org/repos/asf/ignite into ignite-2612
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/f92d9a82
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/f92d9a82
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/f92d9a82
Branch: refs/heads/ignite-2612
Commit: f92d9a821fe38f43e4bfe07d58fcd38411d8f7f2
Parents: 5c0aa35 aaf139b
Author: Alexey Kuznetsov <ak...@apache.org>
Authored: Fri Feb 26 15:00:59 2016 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Fri Feb 26 15:00:59 2016 +0700
----------------------------------------------------------------------
.../js/app/modules/form/field/input/number.jade | 2 +-
.../states/configuration/clusters/general.jade | 8 +++++++
.../clusters/general/discovery/zookeeper.jade | 21 +++++++++++------
.../bounded-exponential-backoff.jade | 6 +++--
.../retrypolicy/exponential-backoff.jade | 6 +++--
.../zookeeper/retrypolicy/forever.jade | 1 +
.../zookeeper/retrypolicy/n-times.jade | 2 ++
.../zookeeper/retrypolicy/one-time.jade | 1 +
.../zookeeper/retrypolicy/until-elapsed.jade | 2 ++
.../main/js/controllers/clusters-controller.js | 6 ++---
.../main/js/helpers/generator/generator-java.js | 9 ++++----
.../main/js/helpers/generator/generator-xml.js | 24 ++++----------------
.../src/main/js/public/stylesheets/style.scss | 2 +-
.../src/main/js/views/settings/admin.jade | 2 +-
14 files changed, 51 insertions(+), 41 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/f92d9a82/modules/control-center-web/src/main/js/controllers/clusters-controller.js
----------------------------------------------------------------------
[2/5] ignite git commit: IGNITE-843 Fix for number inputs when input
is pristine.
Posted by ak...@apache.org.
IGNITE-843 Fix for number inputs when input is pristine.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/4555bedf
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/4555bedf
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/4555bedf
Branch: refs/heads/ignite-2612
Commit: 4555bedfcd687aae00a745069f1bc6d5ba904c07
Parents: 6de273f
Author: vsisko <vs...@gridgain.com>
Authored: Fri Feb 26 13:41:32 2016 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Fri Feb 26 13:41:32 2016 +0700
----------------------------------------------------------------------
.../src/main/js/app/modules/form/field/input/number.jade | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/4555bedf/modules/control-center-web/src/main/js/app/modules/form/field/input/number.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/form/field/input/number.jade b/modules/control-center-web/src/main/js/app/modules/form/field/input/number.jade
index 920a5eb..4429d30 100644
--- a/modules/control-center-web/src/main/js/app/modules/form/field/input/number.jade
+++ b/modules/control-center-web/src/main/js/app/modules/form/field/input/number.jade
@@ -16,7 +16,7 @@
mixin feedback(error, message)
i.fa.fa-exclamation-triangle.form-control-feedback(
- ng-show='field.$error.#{error}'
+ ng-show='!field.$pristine && field.$error.#{error}'
bs-tooltip='"#{message}"'
ignite-error='#{error}'
ignite-error-message='#{message}'
[5/5] ignite git commit: IGNITE-2612 WIP reworking caches screen to
Angular directives.
Posted by ak...@apache.org.
IGNITE-2612 WIP reworking caches screen to Angular directives.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/666de92f
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/666de92f
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/666de92f
Branch: refs/heads/ignite-2612
Commit: 666de92f20d3cc3ff4b1add04eda02dc50cb5568
Parents: f92d9a8
Author: Alexey Kuznetsov <ak...@apache.org>
Authored: Fri Feb 26 17:16:49 2016 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Fri Feb 26 17:16:49 2016 +0700
----------------------------------------------------------------------
.../src/main/js/app/modules/form/form.module.js | 2 +
.../form/validator/ipaddress.directive.js | 38 ++++++
.../states/configuration/caches/query.jade | 14 +--
.../clusters/general/discovery/multicast.jade | 123 ++++++++++---------
.../clusters/general/discovery/vm.jade | 115 +++++++++--------
.../states/configuration/clusters/ssl.jade | 4 +-
.../src/main/js/controllers/common-module.js | 20 ---
7 files changed, 181 insertions(+), 135 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/666de92f/modules/control-center-web/src/main/js/app/modules/form/form.module.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/form/form.module.js b/modules/control-center-web/src/main/js/app/modules/form/form.module.js
index aac831d..0bd3cfd 100644
--- a/modules/control-center-web/src/main/js/app/modules/form/form.module.js
+++ b/modules/control-center-web/src/main/js/app/modules/form/form.module.js
@@ -38,6 +38,7 @@ import igniteFormGroupAdd from './group/add.directive';
import igniteFormGroupTooltip from './group/tooltip.directive';
// Validators.
+import ipaddress from './validator/ipaddress.directive';
import javaKeywords from './validator/java-keywords.directive';
import javaPackageSpecified from './validator/java-package-specified.directive';
import javaBuiltInClass from './validator/java-built-in-class.directive';
@@ -73,6 +74,7 @@ angular
.directive(...igniteFormGroupAdd)
.directive(...igniteFormGroupTooltip)
// Validators.
+.directive(...ipaddress)
.directive(...javaKeywords)
.directive(...javaPackageSpecified)
.directive(...javaBuiltInClass)
http://git-wip-us.apache.org/repos/asf/ignite/blob/666de92f/modules/control-center-web/src/main/js/app/modules/form/validator/ipaddress.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/form/validator/ipaddress.directive.js b/modules/control-center-web/src/main/js/app/modules/form/validator/ipaddress.directive.js
new file mode 100644
index 0000000..63c624c
--- /dev/null
+++ b/modules/control-center-web/src/main/js/app/modules/form/validator/ipaddress.directive.js
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+export default ['ipaddress', [() => {
+ const link = (scope, el, attrs, [ngModel]) => {
+ ngModel.$validators.ipaddress = (modelValue, viewValue) => {
+ if (ngModel.$isEmpty(modelValue) || typeof attrs.ipaddress === 'undefined' || !attrs.ipaddress)
+ return;
+
+ const ip = '(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])';
+ const port = '([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])';
+ const portRange = '(:' + port + '(..' + port + ')?)?';
+ const host = '(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])';
+
+ return viewValue.match(new RegExp('(^' + ip + portRange + '$)|(^' + host + portRange + '$)')) !== null;
+ };
+ };
+
+ return {
+ restrict: 'A',
+ link,
+ require: ['ngModel']
+ };
+}]];
http://git-wip-us.apache.org/repos/asf/ignite/blob/666de92f/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/query.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/query.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/query.jade
index 1bfff6d..943fe48 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/query.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/query.jade
@@ -21,7 +21,7 @@
mixin sqlFxField(field, save, newItem)
- var reset = (newItem ? 'group.add = []' : 'field.edit = false')
- var resetOnEnter = (newItem ? '(stopblur = true) && (group.add = [{}])' : '(field.edit = false)')
- - var resetOnBlure = (newItem ? '!stopblur && (group.add = [])' : 'field.edit = false')
+ - var resetOnBlur = (newItem ? '!stopblur && (group.add = [])' : 'field.edit = false')
ignite-form-field-java-class(
data-name='#{field}'
@@ -31,12 +31,14 @@ mixin sqlFxField(field, save, newItem)
data-ignite-form-field-input-autofocus='true'
on-enter='#{valid} && (#{save}); #{valid} && #{resetOnEnter};'
on-escape='#{reset}'
- ng-blur='#{valid} && (#{save}); #{resetOnBlure};'
+ ng-blur='#{valid} && (#{save}); #{resetOnBlur};'
)
block
-mixin sqlFxSaveBtn(valid, save, reset)
+mixin sqlFxSaveBtn(valid, save, newItem)
+ - var reset = (newItem ? 'group.add = []' : 'field.edit = false')
+
i.fa.fa-floppy-o(
ng-show='#{valid}'
ng-click='#{valid} && #{save}; #{valid} && (#{reset});'
@@ -97,7 +99,6 @@ form.panel.panel-default(name='query' novalidate)
- var field = 'edit'
- var valid = form + '.' + field + '.$valid'
- var save = sqlFunctionClasses + '[$index] = ' + field
- - var reset = 'field.edit = false'
ignite-form-field(ng-repeat='model in #{sqlFunctionClasses} track by $index' type='internal' name='SQL function')
.indexField
@@ -112,18 +113,17 @@ form.panel.panel-default(name='query' novalidate)
a.labelFormField(ng-click='field.edit = true') {{ model }}
span(ng-if='field.edit' ng-init='#{field} = model')
+sqlFxField(field, save, false)
- +sqlFxSaveBtn(valid, save, reset)
+ +sqlFxSaveBtn(valid, save, false)
+sqlFxFeedbackUnique(field)
.group-content(ng-repeat='field in group.add')
- var field = 'new'
- var valid = form + '.' + field + '.$valid'
- var save = sqlFunctionClasses + '.push(' + field + ')'
- - var reset = 'group.add = []'
ignite-form-field(type='internal' name='SQL function')
+sqlFxField(field, save, true)
- +sqlFxSaveBtn(valid, save, reset)
+ +sqlFxSaveBtn(valid, save, true)
+sqlFxFeedbackUnique(field)
.group-content-empty(ng-if='!(#{sqlFunctionClasses}.length) && !group.add.length')
| Not defined
http://git-wip-us.apache.org/repos/asf/ignite/blob/666de92f/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/multicast.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/multicast.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/multicast.jade
index 6b56341..63e46cc 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/multicast.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/multicast.jade
@@ -18,6 +18,54 @@
- var addresses = model + '.addresses';
- var form = 'discoveryMulticastAddresses';
+mixin addressField(field, save, newItem)
+ - var reset = (newItem ? 'group.add = []' : 'field.edit = false')
+ - var resetOnEnter = (newItem ? '(stopblur = true) && (group.add = [{}])' : '(field.edit = false)')
+ - var resetOnBlur = (newItem ? '!stopblur && (group.add = [])' : 'field.edit = false')
+
+ ignite-form-field-input-text(
+ data-name='#{field}'
+ data-ng-model='#{field}'
+ data-ng-required='true'
+ data-placeholder='IP address:port'
+ data-ipaddress='true'
+ data-ignite-unique='#{addresses}'
+ data-ignite-form-field-input-autofocus='true'
+ on-enter='#{valid} && (#{save}); #{valid} && #{resetOnEnter};'
+ on-escape='#{reset}'
+ ng-blur='#{valid} && (#{save}); #{resetOnBlur};'
+ )
+ block
+
+mixin addressSaveBtn(valid, save, reset)
+ i.fa.fa-floppy-o(
+ ng-show='#{valid}'
+ ng-click='#{valid} && #{save}; #{valid} && (#{reset})'
+ bs-tooltip
+ data-title='Click icon or press [Enter] to save item'
+ )
+
+mixin addressFeedbackUnique(field)
+ i.fa.fa-exclamation-triangle.form-control-feedback(
+ ng-show='#{form}.#{field}.$error.igniteUnique'
+ bs-tooltip
+ data-title='Such IP address already exists!'
+ )
+
+mixin addressFeedbackValid(field)
+ i.fa.fa-exclamation-triangle.form-control-feedback(
+ ng-show='#{form}.#{field}.$error.ipadress'
+ bs-tooltip
+ data-title='Invalid IP address!'
+ )
+
+mixin addressFeedbackRequired(field)
+ i.fa.fa-exclamation-triangle.form-control-feedback(
+ ng-show='!#{form}.#{field}.$pristine && #{form}.#{field}.$error.required'
+ bs-tooltip
+ data-title='IP address should not be empty!'
+ )
+
div
.details-row
ignite-form-field
@@ -101,11 +149,12 @@ div
ignite-form-group-add(ng-click='group.add = [{}]')
| Add new address
- - var field = 'edit'
- - var valid = form + '.' + field + '.$valid'
- - var save = addresses + '[$index] = ' + field
-
.group-content(ng-if='#{addresses}.length')
+ - var field = 'edit'
+ - var valid = form + '.' + field + '.$valid'
+ - var save = addresses + '[$index] = ' + field
+ - var reset = 'field.edit = false'
+
ignite-form-field(ng-repeat='model in #{addresses} track by $index' type='internal')
.indexField
| {{ $index+1 }})
@@ -121,59 +170,23 @@ div
span(ng-hide='field.edit')
a.labelFormField(ng-click='field.edit = true') {{ model }}
span(ng-if='field.edit' ng-init='#{field} = model')
- ignite-form-field-input-text(
- data-name='#{field}'
- data-ng-model='#{field}'
- data-ng-required='true'
- data-placeholder='IP address:port'
- data-ignite-unique='#{addresses}'
- data-ignite-form-field-input-autofocus='true'
- on-enter='#{valid} && (#{save}); #{valid} && (field.edit = false);'
- on-escape='field.edit = false'
- ng-blur='#{valid} && (#{save}); (field.edit = false)'
- )
- i.fa.fa-floppy-o(
- ng-show='#{valid}'
- ng-click='#{valid} && (#{save}); #{valid} && (field.edit = false);'
- bs-tooltip
- data-title='Click icon or press [Enter] to save item'
- )
-
- i.fa.fa-exclamation-triangle.form-control-feedback(
- ng-show='!#{form}.#{field}.$pristine && #{form}.#{field}.$error.igniteUnique'
- bs-tooltip
- data-title='Such IP address already exists!'
- )
-
- - var field = 'new'
- - var valid = form + '.' + field + '.$valid'
- - var push = addresses + '.push(' + field + ')'
+ +addressField(field, save, false)
+ +addressSaveBtn(valid, save, reset)
+ +addressFeedbackUnique(field)
+ +addressFeedbackValid(field)
+ +addressFeedbackRequired(field)
.group-content(ng-repeat='field in group.add')
+ - var field = 'new'
+ - var valid = form + '.' + field + '.$valid'
+ - var save = addresses + '.push(' + field + ')'
+ - var reset = 'group.add = []'
+
ignite-form-field(type='internal')
- ignite-form-field-input-text(
- data-name='#{field}'
- data-ng-model='#{field}'
- data-ng-required='true'
- data-placeholder='IP address:port'
- data-ignite-unique='#{addresses}'
- data-ignite-form-field-input-autofocus='true'
- on-enter='#{valid} && #{push}; #{valid} && (stopblur = true) && (group.add = [{}])'
- on-escape='group.add = []'
- ng-blur='#{valid} && #{push}; !stopblur && (group.add = [])'
- )
- i.fa.fa-floppy-o(
- ng-show='#{valid}'
- ng-click='#{valid} && #{push}; #{valid} && (group.add = [])'
- bs-tooltip
- data-title='Click icon or press [Enter] to save item'
- )
-
- i.fa.fa-exclamation-triangle.form-control-feedback(
- ng-show='!#{form}.#{field}.$pristine && #{form}.#{field}.$error.igniteUnique'
- bs-tooltip
- data-title='Such IP address already exists!'
- )
-
+ +addressField(field, save, true)
+ +addressFeedbackUnique(field)
+ +addressFeedbackValid(field)
+ +addressFeedbackUnique(field)
+
.group-content-empty(ng-if='!(#{addresses}.length) && !group.add.length')
| Not defined
http://git-wip-us.apache.org/repos/asf/ignite/blob/666de92f/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/vm.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/vm.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/vm.jade
index fa693d2..dd5628b 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/vm.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/general/discovery/vm.jade
@@ -18,6 +18,54 @@
- var addresses = model + '.addresses';
- var form = 'discoveryVmAddresses';
+mixin addressField(field, save, newItem)
+ - var reset = (newItem ? 'group.add = []' : 'field.edit = false')
+ - var resetOnEnter = (newItem ? '(stopblur = true) && (group.add = [{}])' : '(field.edit = false)')
+ - var resetOnBlur = (newItem ? '!stopblur && (group.add = [])' : 'field.edit = false')
+
+ ignite-form-field-input-text(
+ data-name='#{field}'
+ data-ng-model='#{field}'
+ data-ng-required='true'
+ data-placeholder='IP address:port'
+ data-ipaddress='true'
+ data-ignite-unique='#{addresses}'
+ data-ignite-form-field-input-autofocus='true'
+ on-enter='#{valid} && (#{save}); #{valid} && #{resetOnEnter};'
+ on-escape='#{reset}'
+ ng-blur='#{valid} && (#{save}); #{resetOnBlur};'
+ )
+ block
+
+mixin addressSaveBtn(valid, save, reset)
+ i.fa.fa-floppy-o(
+ ng-show='#{valid}'
+ ng-click='#{valid} && #{save}; #{valid} && (#{reset})'
+ bs-tooltip
+ data-title='Click icon or press [Enter] to save item'
+ )
+
+mixin addressFeedbackUnique(field)
+ i.fa.fa-exclamation-triangle.form-control-feedback(
+ ng-show='#{form}.#{field}.$error.igniteUnique'
+ bs-tooltip
+ data-title='Such IP address already exists!'
+ )
+
+mixin addressFeedbackValid(field)
+ i.fa.fa-exclamation-triangle.form-control-feedback(
+ ng-show='#{form}.#{field}.$error.ipadress'
+ bs-tooltip
+ data-title='Invalid IP address!'
+ )
+
+mixin addressFeedbackRequired(field)
+ i.fa.fa-exclamation-triangle.form-control-feedback(
+ ng-show='!#{form}.#{field}.$pristine && #{form}.#{field}.$error.required'
+ bs-tooltip
+ data-title='IP address should not be empty!'
+ )
+
div
ignite-form-group(ng-model='#{addresses}' ng-form='discoveryVmAddresses')
ignite-form-field-label
@@ -37,11 +85,12 @@ div
ignite-form-group-add(ng-click='group.add = [{}]')
| Add new address
- - var field = 'edit'
- - var valid = form + '.' + field + '.$valid'
- - var save = addresses + '[$index] = ' + field
-
.group-content(ng-if='#{addresses}.length')
+ - var field = 'edit'
+ - var valid = form + '.' + field + '.$valid'
+ - var save = addresses + '[$index] = ' + field
+ - var reset = 'field.edit = false'
+
ignite-form-field(ng-repeat='model in #{addresses} track by $index' type='internal')
.indexField
| {{ $index+1 }})
@@ -57,59 +106,23 @@ div
span(ng-hide='field.edit')
a.labelFormField(ng-click='field.edit = true') {{ model }}
span(ng-if='field.edit' ng-init='#{field} = model')
- ignite-form-field-input-text(
- data-name='#{field}'
- data-ng-model='#{field}'
- data-ng-required='true'
- data-placeholder='IP address:port'
- data-ignite-unique='#{addresses}'
- data-ignite-form-field-input-autofocus='true'
- on-enter='#{valid} && (#{save}); #{valid} && (field.edit = false);'
- on-escape='field.edit = false'
- ng-blur='#{valid} && (#{save}); (field.edit = false)'
- )
- i.fa.fa-floppy-o(
- ng-show='#{valid}'
- ng-click='#{valid} && (#{save}); #{valid} && (field.edit = false);'
- bs-tooltip
- data-title='Click icon or press [Enter] to save item'
- )
-
- i.fa.fa-exclamation-triangle.form-control-feedback(
- ng-show='!#{form}.#{field}.$pristine && #{form}.#{field}.$error.igniteUnique'
- bs-tooltip
- data-title='Such IP address already exists!'
- )
+ +addressField(field, save, false)
+ +addressSaveBtn(valid, save, reset)
+ +addressFeedbackUnique(field)
+ +addressFeedbackValid(field)
+ +addressFeedbackRequired(field)
- var field = 'new'
- var valid = form + '.' + field + '.$valid'
- - var push = addresses + '.push(' + field + ')'
+ - var save = addresses + '.push(' + field + ')'
+ - var reset = 'group.add = []'
.group-content(ng-repeat='field in group.add')
ignite-form-field(type='internal')
- ignite-form-field-input-text(
- data-name='#{field}'
- data-ng-model='#{field}'
- data-ng-required='true'
- data-placeholder='IP address:port'
- data-ignite-unique='#{addresses}'
- data-ignite-form-field-input-autofocus='true'
- on-enter='#{valid} && #{push}; #{valid} && (stopblur = true) && (group.add = [{}])'
- on-escape='group.add = []'
- ng-blur='#{valid} && #{push}; !stopblur && (group.add = [])'
- )
- i.fa.fa-floppy-o(
- ng-show='#{valid}'
- ng-click='#{valid} && #{push}; #{valid} && (group.add = [])'
- bs-tooltip
- data-title='Click icon or press [Enter] to save item'
- )
-
- i.fa.fa-exclamation-triangle.form-control-feedback(
- ng-show='!#{form}.#{field}.$pristine && #{form}.#{field}.$error.igniteUnique'
- bs-tooltip
- data-title='Such IP address already exists!'
- )
+ +addressField(field, save, true)
+ +addressSaveBtn(valid, save, reset)
+ +addressFeedbackUnique(field)
+ +addressFeedbackValid(field)
.group-content-empty(id='addresses' ng-if='!(#{addresses}.length) && !group.add.length')
| Not defined
http://git-wip-us.apache.org/repos/asf/ignite/blob/666de92f/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/ssl.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/ssl.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/ssl.jade
index 0a06801..dc899e8 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/ssl.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/ssl.jade
@@ -23,7 +23,7 @@
mixin trstMgrField(field, save, newItem)
- var reset = (newItem ? 'group.add = []' : 'field.edit = false')
- var resetOnEnter = (newItem ? '(stopblur = true) && (group.add = [{}])' : '(field.edit = false)')
- - var resetOnBlure = (newItem ? '!stopblur && (group.add = [])' : 'field.edit = false')
+ - var resetOnBlur = (newItem ? '!stopblur && (group.add = [])' : 'field.edit = false')
ignite-form-field-java-class(
data-name='#{field}'
@@ -33,7 +33,7 @@ mixin trstMgrField(field, save, newItem)
data-ignite-form-field-input-autofocus='true'
on-enter='#{valid} && (#{save}); #{valid} && #{resetOnEnter};'
on-escape='#{reset}'
- ng-blur='#{valid} && (#{save}); #{resetOnBlure};'
+ ng-blur='#{valid} && (#{save}); #{resetOnBlur};'
)
block
http://git-wip-us.apache.org/repos/asf/ignite/blob/666de92f/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 b0c817d..f039057 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
@@ -1841,26 +1841,6 @@ consoleModule.filter('domainsValidation', ['$common', function ($common) {
};
}]);
-// Directive to enable validation for IP addresses.
-consoleModule.directive('ipaddress', function () {
- const ip = '(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])';
- const port = '([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])';
- const portRange = '(:' + port + '(..' + port + ')?)?';
- const host = '(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])';
-
- return {
- require: 'ngModel',
- link: function (scope, elem, attrs, ctrl) {
- ctrl.$validators.ipaddress = function (modelValue, viewValue) {
- if (ctrl.$isEmpty(modelValue) || !attrs.ipaddress)
- return true;
-
- return viewValue.match(new RegExp('(^' + ip + portRange + '$)|(^' + host + portRange + '$)')) != null;
- };
- }
- };
-});
-
// Directive to enable validation to match specified value.
consoleModule.directive('match', function ($parse) {
return {
[3/5] ignite git commit: IGNITE-843 Sort column on admin page.
Posted by ak...@apache.org.
IGNITE-843 Sort column on admin page.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/aaf139bd
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/aaf139bd
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/aaf139bd
Branch: refs/heads/ignite-2612
Commit: aaf139bd596bb1f1b37421cfa7e48cf59588f506
Parents: 4555bed
Author: Andrey <an...@gridgain.com>
Authored: Fri Feb 26 13:56:37 2016 +0700
Committer: Andrey <an...@gridgain.com>
Committed: Fri Feb 26 13:56:37 2016 +0700
----------------------------------------------------------------------
modules/control-center-web/src/main/js/views/settings/admin.jade | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/aaf139bd/modules/control-center-web/src/main/js/views/settings/admin.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/settings/admin.jade b/modules/control-center-web/src/main/js/views/settings/admin.jade
index 69a2971..e72eae2 100644
--- a/modules/control-center-web/src/main/js/views/settings/admin.jade
+++ b/modules/control-center-web/src/main/js/views/settings/admin.jade
@@ -32,7 +32,7 @@
th(st-sort='email') Email
th(st-sort='company') Company
th(st-sort='country') Country
- th.col-xs-2(st-sort='lastLogin') Last login
+ th.col-xs-2(st-sort='lastLogin' st-sort-default='reverse') Last login
th(width='1%' st-sort='admin') Admin
th(width='1%') Actions
tbody