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 2016/03/28 10:48:26 UTC
[46/50] [abbrv] ignite git commit: IGNITE-843 Fixed validation.
IGNITE-843 Fixed validation.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/630cbbe8
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/630cbbe8
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/630cbbe8
Branch: refs/heads/ignite-2875
Commit: 630cbbe81ecacc83d66d266e88396d8f73dd0083
Parents: 214c9b2
Author: Alexey Kuznetsov <ak...@apache.org>
Authored: Fri Mar 25 18:04:28 2016 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Fri Mar 25 18:04:28 2016 +0700
----------------------------------------------------------------------
.../form-field-java-class.directive.js | 6 ++--
.../src/main/js/app/helpers/jade/mixins.jade | 38 ++++++++++----------
.../modules/form/field/input/text.directive.js | 6 ++--
.../js/app/modules/form/field/input/text.jade | 1 -
.../configuration/clusters/communication.jade | 7 ++--
.../configuration/clusters/connector.jade | 7 ++--
.../configuration/clusters/discovery.jade | 7 ++--
.../states/configuration/clusters/general.jade | 7 ++--
.../clusters/general/discovery/multicast.jade | 12 +++++--
.../clusters/general/discovery/vm.jade | 4 +++
.../modules/states/configuration/igfs/ipc.jade | 7 ++--
11 files changed, 58 insertions(+), 44 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/630cbbe8/modules/control-center-web/src/main/js/app/directives/form-field-java-class/form-field-java-class.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/directives/form-field-java-class/form-field-java-class.directive.js b/modules/control-center-web/src/main/js/app/directives/form-field-java-class/form-field-java-class.directive.js
index 8c469ea..142cb25 100644
--- a/modules/control-center-web/src/main/js/app/directives/form-field-java-class/form-field-java-class.directive.js
+++ b/modules/control-center-web/src/main/js/app/directives/form-field-java-class/form-field-java-class.directive.js
@@ -56,10 +56,10 @@ export default ['igniteFormFieldJavaClass', ['IgniteFormGUID', (guid) => {
scope.$watch('value', setAsDefault);
const checkValid = () => {
- if (ngModel.$valid)
- el.find('input').addClass('ng-valid').removeClass('ng-invalid');
- else
+ if (ngModel.$invalid)
el.find('input').removeClass('ng-valid').addClass('ng-invalid');
+ else
+ el.find('input').addClass('ng-valid').removeClass('ng-invalid');
};
scope.ngChange = () => {
http://git-wip-us.apache.org/repos/asf/ignite/blob/630cbbe8/modules/control-center-web/src/main/js/app/helpers/jade/mixins.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/helpers/jade/mixins.jade b/modules/control-center-web/src/main/js/app/helpers/jade/mixins.jade
index 6a7500f..eaed6ac 100644
--- a/modules/control-center-web/src/main/js/app/helpers/jade/mixins.jade
+++ b/modules/control-center-web/src/main/js/app/helpers/jade/mixins.jade
@@ -14,6 +14,23 @@
See the License for the specific language governing permissions and
limitations under the License.
+//- Mixin for feedback on specified error.
+mixin error-feedback(visible, error, errorMessage)
+ i.fa.fa-exclamation-triangle.form-control-feedback(
+ ng-if=visible
+ bs-tooltip='"#{errorMessage}"'
+ ignite-error=error
+ ignite-error-message=errorMessage
+ )
+
+//- Mixin for feedback on unique violation.
+mixin unique-feedback(visible, errorMessage)
+ +error-feedback(visible, 'igniteUnique', errorMessage)
+
+//- Mixin for feedback on IP address violation.
+mixin ipaddress-feedback(visible)
+ +error-feedback(visible, 'ipaddress', 'Invalid address!')
+
//- Mixin for checkbox.
mixin checkbox(lbl, model, name, tip)
ignite-form-field.checkbox
@@ -55,7 +72,7 @@ mixin java-class(lbl, model, name, enabled, required, tip)
)
//- Mixin for text field.
-mixin text-ip-address(lbl, model, name, enabled, placeholder, tip)
+mixin text-ip-address(lbl, form, model, name, enabled, placeholder, tip)
ignite-form-field
ignite-form-field-label
| #{lbl}
@@ -69,6 +86,7 @@ mixin text-ip-address(lbl, model, name, enabled, placeholder, tip)
data-ng-disabled='!(#{enabled})'
data-placeholder=placeholder
)
+ +ipaddress-feedback(form + '.' + name + '.$error.ipaddress')
//- Mixin for text field.
mixin text-enabled(lbl, model, name, enabled, required, placeholder, tip)
@@ -308,24 +326,6 @@ mixin table-remove-conditional-button(items, show, tip)
mixin table-remove-button(items, tip)
+table-remove-conditional-button(items, 'true', tip)
-//- Mixin for feedback on specified error.
-mixin error-feedback(visible, error, errorMessage)
- i.fa.fa-exclamation-triangle.form-control-feedback(
- ng-if=visible
- bs-tooltip='"#{errorMessage}"'
- ignite-error=error
- ignite-error-message=errorMessage
- )
-
-//- Mixin for feedback on unique violation.
-mixin unique-feedback(visible, errorMessage)
- i.fa.fa-exclamation-triangle.form-control-feedback(
- ng-if=visible
- bs-tooltip='"#{errorMessage}"'
- ignite-error='igniteUnique'
- ignite-error-message=errorMessage
- )
-
//- Mixin for cache mode.
mixin cacheMode(lbl, model, name, placeholder)
+dropdown(lbl, model, name, 'true', placeholder,
http://git-wip-us.apache.org/repos/asf/ignite/blob/630cbbe8/modules/control-center-web/src/main/js/app/modules/form/field/input/text.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/form/field/input/text.directive.js b/modules/control-center-web/src/main/js/app/modules/form/field/input/text.directive.js
index 0a3fa04..99d7525 100644
--- a/modules/control-center-web/src/main/js/app/modules/form/field/input/text.directive.js
+++ b/modules/control-center-web/src/main/js/app/modules/form/field/input/text.directive.js
@@ -64,10 +64,10 @@ export default ['igniteFormFieldInputText', ['IgniteFormGUID', (guid) => {
scope.$watch('value', setAsDefault);
const checkValid = () => {
- if (ngModel.$valid)
- el.find('input').addClass('ng-valid').removeClass('ng-invalid');
- else
+ if (ngModel.$invalid)
el.find('input').removeClass('ng-valid').addClass('ng-invalid');
+ else
+ el.find('input').addClass('ng-valid').removeClass('ng-invalid');
};
scope.ngChange = () => {
http://git-wip-us.apache.org/repos/asf/ignite/blob/630cbbe8/modules/control-center-web/src/main/js/app/modules/form/field/input/text.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/form/field/input/text.jade b/modules/control-center-web/src/main/js/app/modules/form/field/input/text.jade
index 787fb68..558c723 100644
--- a/modules/control-center-web/src/main/js/app/modules/form/field/input/text.jade
+++ b/modules/control-center-web/src/main/js/app/modules/form/field/input/text.jade
@@ -42,6 +42,5 @@ mixin feedback(isCheckPristine, error, errorMessage)
)
+feedback(true, 'required', '{{ label.name }} could not be empty!')
- +feedback(false, 'ipaddress', 'Invalid address!')
span(ng-transclude='')
http://git-wip-us.apache.org/repos/asf/ignite/blob/630cbbe8/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/communication.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/communication.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/communication.jade
index cbb4010..d874783 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/communication.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/communication.jade
@@ -16,17 +16,18 @@
include ../../../../../app/helpers/jade/mixins.jade
+-var form = 'communication'
-var model = 'backupItem'
-var communication = model + '.communication'
-form.panel.panel-default(name='communication' novalidate)
+form.panel.panel-default(name=form novalidate)
.panel-heading(bs-collapse-toggle ng-click='__show__ = true')
ignite-form-panel-chevron
label Communication
ignite-form-field-tooltip.tipLabel
| Cluster communication network properties
ignite-form-revert
- .panel-collapse(role='tabpanel' bs-collapse-target id='communication')
+ .panel-collapse(role='tabpanel' bs-collapse-target id=form)
.panel-body(ng-if='__show__')
.col-sm-6
.settings-row
@@ -40,7 +41,7 @@ form.panel.panel-default(name='communication' novalidate)
.settings-row
+java-class('Communication listener:', communication + '.listener', 'comListener', 'true', 'false', 'Communication listener')
.settings-row
- +text-ip-address('Local IP address:', communication + '.localAddress', 'comLocalAddress', 'true', '228.1.2.4', 'Local host address for socket binding')
+ +text-ip-address('Local IP address:', form, communication + '.localAddress', 'comLocalAddress', 'true', '228.1.2.4', 'Local host address for socket binding')
.settings-row
+number-min-max('Local port:', communication + '.localPort', 'comLocalPort', 'true', '47100', '1024', '65535', 'Local port for socket binding')
.settings-row
http://git-wip-us.apache.org/repos/asf/ignite/blob/630cbbe8/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/connector.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/connector.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/connector.jade
index 4319742..c07d2d5 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/connector.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/connector.jade
@@ -16,18 +16,19 @@
include ../../../../../app/helpers/jade/mixins.jade
+-var form = 'connector'
-var model = 'backupItem.connector'
-var enabled = model + '.enabled'
-var sslEnabled = enabled + ' && ' + model + '.sslEnabled'
-form.panel.panel-default(name='connector' novalidate)
+form.panel.panel-default(name=form novalidate)
.panel-heading(bs-collapse-toggle ng-click='__show__ = true')
ignite-form-panel-chevron
label Connector configuration
ignite-form-field-tooltip.tipLabel
| REST access configuration
ignite-form-revert
- .panel-collapse(role='tabpanel' bs-collapse-target id='connector')
+ .panel-collapse(role='tabpanel' bs-collapse-target id=form)
.panel-body(ng-if='__show__')
.col-sm-6
.settings-row
@@ -38,7 +39,7 @@ form.panel.panel-default(name='connector' novalidate)
Jetty is used to support REST over HTTP protocol for accessing Ignite APIs remotely<br/>\
If not provided, Jetty instance with default configuration will be started picking IgniteSystemProperties.IGNITE_JETTY_HOST and IgniteSystemProperties.IGNITE_JETTY_PORT as host and port respectively')
.settings-row
- +text-ip-address('TCP host:', model + '.host', 'connectorHost', enabled, 'IgniteConfiguration#getLocalHost()',
+ +text-ip-address('TCP host:', form, model + '.host', 'connectorHost', enabled, 'IgniteConfiguration#getLocalHost()',
'Host for TCP binary protocol server<br/>\
This can be either an IP address or a domain name<br/>\
If not defined, system - wide local address will be used IgniteConfiguration#getLocalHost()<br/>\
http://git-wip-us.apache.org/repos/asf/ignite/blob/630cbbe8/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/discovery.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/discovery.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/discovery.jade
index 1ba04fa..e86f8ab 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/discovery.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/clusters/discovery.jade
@@ -16,20 +16,21 @@
include ../../../../../app/helpers/jade/mixins.jade
+-var form = 'discovery'
-var model = 'backupItem.discovery'
-form.panel.panel-default(name='discovery' novalidate)
+form.panel.panel-default(name=form novalidate)
.panel-heading(bs-collapse-toggle ng-click='__show__ = true')
ignite-form-panel-chevron
label Discovery
ignite-form-field-tooltip.tipLabel
| Discovery properties configuration
ignite-form-revert
- .panel-collapse(role='tabpanel' bs-collapse-target id='discovery')
+ .panel-collapse(role='tabpanel' bs-collapse-target id=form)
.panel-body(ng-if='__show__')
.col-sm-6
.settings-row
- +text-ip-address('Local address:', model + '.localAddress', 'discoLocalAddress', 'true', '228.1.2.4', 'Local address')
+ +text-ip-address('Local address:', form, model + '.localAddress', 'discoLocalAddress', 'true', '228.1.2.4', 'Local address')
.settings-row
+number-min-max('Local port:', model + '.localPort', 'discoLocalPort', 'true', '47500', '1024', '65535', 'Local port which node uses')
.settings-row
http://git-wip-us.apache.org/repos/asf/ignite/blob/630cbbe8/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 ec004ce..ee46416 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
@@ -16,14 +16,15 @@
include ../../../../../app/helpers/jade/mixins.jade
+-var form = 'general'
-var model = 'backupItem'
-form.panel.panel-default(name='general' novalidate)
+form.panel.panel-default(name=form novalidate)
.panel-heading(bs-collapse-toggle)
ignite-form-panel-chevron
label General
ignite-form-revert
- .panel-collapse(role='tabpanel' bs-collapse-target id='general')
+ .panel-collapse(role='tabpanel' bs-collapse-target id=form)
.panel-body
.col-sm-6
.settings-row
@@ -34,7 +35,7 @@ form.panel.panel-default(name='general' novalidate)
model + '.caches', 'caches', 'Choose caches', 'No caches configured', 'caches',
'Select caches to start in cluster or add a new cache')
.settings-row
- +text-ip-address('Local host:', model + '.localHost', 'localHost', 'true', '0.0.0.0', 'System-wide local address or host for all Ignite components to bind to')
+ +text-ip-address('Local host:', form, model + '.localHost', 'localHost', 'true', '0.0.0.0', 'System-wide local address or host for all Ignite components to bind to')
.settings-row
+dropdown('Discovery:', model + '.discovery.kind', 'discovery', 'true', 'Choose discovery', 'discoveries',
'Discovery allows to discover remote nodes in grid\
http://git-wip-us.apache.org/repos/asf/ignite/blob/630cbbe8/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 61a0718..5eef0f1 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
@@ -16,13 +16,13 @@
include ../../../../../../../app/helpers/jade/mixins.jade
+-var form = 'general'
-var model = 'backupItem.discovery.Multicast';
-var addresses = model + '.addresses';
--var form = 'discoveryMulticastAddresses';
div
.details-row
- +text-ip-address('IP address:', model + '.multicastGroup', 'multicastGroup', 'true', '228.1.2.4', 'IP address of multicast group')
+ +text-ip-address('IP address:', form, model + '.multicastGroup', 'multicastGroup', 'true', '228.1.2.4', 'IP address of multicast group')
.details-row
+number-min-max('Port number:', model + '.multicastPort', 'multicastPort', 'true', '47400', '0', '65535', 'Port number which multicast messages are sent to')
.details-row
@@ -33,11 +33,13 @@ div
'Number of attempts to send multicast address request<br/>\
IP finder re - sends request only in case if no reply for previous request is received')
.details-row
- +text-ip-address('Local address:', model + '.localAddress', 'localAddress', 'true', '0.0.0.0',
+ +text-ip-address('Local address:', form, model + '.localAddress', 'localAddress', 'true', '0.0.0.0',
'Local host address used by this IP finder<br/>\
If provided address is non - loopback then multicast socket is bound to this interface<br/>\
If local address is not set or is any local address then IP finder creates multicast sockets for all found non - loopback addresses')
.details-row
+ -var form = 'discoveryMulticastAddresses';
+
ignite-form-group(ng-model=addresses ng-form=form)
-var uniqueTip = 'Such IP address already exists!'
-var ipAddressTip = 'Invalid IP address!'
@@ -63,6 +65,7 @@ div
-var field = 'edit'
-var valid = form + '.' + field + '.$valid'
-var unique = form + '.' + field + '.$error.igniteUnique'
+ -var ipaddress = form + '.' + field + '.$error.ipaddress'
-var save = addresses + '[$index] = ' + field
ignite-form-field(ng-repeat='model in #{addresses} track by $index' type='internal' name='Address')
@@ -79,17 +82,20 @@ div
+table-address-field(field, addresses, valid, save, false)
+table-save-button(valid, save, false)
+unique-feedback(unique, uniqueTip)
+ +ipaddress-feedback(ipaddress)
.group-content(ng-repeat='field in group.add')
-var field = 'new'
-var valid = form + '.' + field + '.$valid'
-var unique = form + '.' + field + '.$error.igniteUnique'
+ -var ipaddress = form + '.' + field + '.$error.ipaddress'
-var save = addresses + '.push(' + field + ')'
ignite-form-field(type='internal' name='Address')
+table-address-field(field, addresses, valid, save, true)
+table-save-button(valid, save, true)
+unique-feedback(unique, uniqueTip)
+ +ipaddress-feedback(ipaddress)
.group-content-empty(ng-if='!(#{addresses}.length) && !group.add.length')
| Not defined
http://git-wip-us.apache.org/repos/asf/ignite/blob/630cbbe8/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 a19adf7..6b157cc 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
@@ -46,6 +46,7 @@ include ../../../../../../../app/helpers/jade/mixins.jade
-var field = 'edit'
-var valid = form + '.' + field + '.$valid'
-var unique = form + '.' + field + '.$error.igniteUnique'
+ -var ipaddress = form + '.' + field + '.$error.ipaddress'
-var save = addresses + '[$index] = ' + field
ignite-form-field(ng-repeat='model in #{addresses} track by $index' type='internal' name='Address')
@@ -62,17 +63,20 @@ include ../../../../../../../app/helpers/jade/mixins.jade
+table-address-field(field, addresses, valid, save, false)
+table-save-button(valid, save, false)
+unique-feedback(unique, uniqueTip)
+ +ipaddress-feedback(ipaddress)
.group-content(ng-repeat='field in group.add')
-var field = 'new'
-var valid = form + '.' + field + '.$valid'
-var unique = form + '.' + field + '.$error.igniteUnique'
+ -var ipaddress = form + '.' + field + '.$error.ipaddress'
-var save = addresses + '.push(' + field + ')'
ignite-form-field(type='internal' name='Address')
+table-address-field(field, addresses, valid, save, true)
+table-save-button(valid, save, true)
+unique-feedback(unique, uniqueTip)
+ +ipaddress-feedback(ipaddress)
.group-content-empty(id='addresses' ng-if='!(#{addresses}.length) && !group.add.length')
| Not defined
http://git-wip-us.apache.org/repos/asf/ignite/blob/630cbbe8/modules/control-center-web/src/main/js/app/modules/states/configuration/igfs/ipc.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/igfs/ipc.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/igfs/ipc.jade
index 5463c46..744e814 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/igfs/ipc.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/igfs/ipc.jade
@@ -16,16 +16,17 @@
include ../../../../../app/helpers/jade/mixins.jade
+-var form = 'ipc'
-var model = 'backupItem'
-form.panel.panel-default(name='ipc' novalidate)
+form.panel.panel-default(name=form novalidate)
.panel-heading(bs-collapse-toggle='' ng-click='__show__ = true')
ignite-form-panel-chevron
label IPC
ignite-form-field-tooltip.tipLabel
| IGFS Inter-process communication properties
ignite-form-revert
- .panel-collapse(role='tabpanel' bs-collapse-target id='ipc')
+ .panel-collapse(role='tabpanel' bs-collapse-target id=form)
.panel-body(ng-if='__show__')
.col-sm-6
-var ipcEndpointConfiguration = model + '.ipcEndpointConfiguration'
@@ -45,7 +46,7 @@ form.panel.panel-default(name='ipc' novalidate)
<li>TCP - TCP endpoint</li>\
</ul>')
.settings-row
- +text-ip-address('Host:', ipcEndpointConfiguration + '.host', 'ipcEndpointConfigurationHost', enabled, '127.0.0.1', 'Host name')
+ +text-ip-address('Host:', form, ipcEndpointConfiguration + '.host', 'ipcEndpointConfigurationHost', enabled, '127.0.0.1', 'Host name')
.settings-row
+number-min-max('Port:', ipcEndpointConfiguration + '.port', 'ipcEndpointConfigurationPort', enabled, '10500', '1', '65535', 'Port number')
.settings-row