aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorIgor Minar2011-01-04 00:46:25 -0800
committerIgor Minar2011-01-04 16:40:41 -0800
commit3ea5941f0e51c57f55071a85f2033c23c99847c0 (patch)
tree74b8b20178e96f13c5f3550740e35dcb68642a8a /src
parentd0270d92568e1b7c762b42a0ee0712b65d9acc5c (diff)
downloadangular.js-3ea5941f0e51c57f55071a85f2033c23c99847c0.tar.bz2
removing support for 'eager-published' services
Diffstat (limited to 'src')
-rw-r--r--src/Injector.js6
-rw-r--r--src/services.js13
-rw-r--r--src/validators.js10
-rw-r--r--src/widgets.js2
4 files changed, 16 insertions, 15 deletions
diff --git a/src/Injector.js b/src/Injector.js
index 6fc466b9..c819d4f0 100644
--- a/src/Injector.js
+++ b/src/Injector.js
@@ -58,9 +58,9 @@ function createInjector(providerScope, providers, cache) {
creation = provider.$creation;
if (creation == 'eager') {
inject(name);
- }
- if (creation == 'eager-published') {
- setter(value, name, inject(name));
+ } else {
+ if (isDefined(creation))
+ throw "Unknown $creation value '" + creation + "' for service " + name;
}
});
} else {
diff --git a/src/services.js b/src/services.js
index 5356d612..e77baf38 100644
--- a/src/services.js
+++ b/src/services.js
@@ -1,8 +1,7 @@
var URL_MATCH = /^(file|ftp|http|https):\/\/(\w+:{0,1}\w*@)?([\w\.-]*)(:([0-9]+))?(\/[^\?#]*)?(\?([^#]*))?(#(.*))?$/,
HASH_MATCH = /^([^\?]*)?(\?([^\?]*))?$/,
DEFAULT_PORTS = {'http': 80, 'https': 443, 'ftp':21},
- EAGER = 'eager',
- EAGER_PUBLISHED = EAGER + '-published';
+ EAGER = 'eager';
function angularServiceInject(name, fn, inject, eager) {
angularService(name, fn, {$inject:inject, $creation:eager});
@@ -26,7 +25,7 @@ function angularServiceInject(name, fn, inject, eager) {
<input ng:init="greeting='Hello World!'" type="text" name="greeting" />
<button ng:click="$window.alert(greeting)">ALERT</button>
*/
-angularServiceInject("$window", bind(window, identity, window), [], EAGER_PUBLISHED);
+angularServiceInject("$window", bind(window, identity, window), [], EAGER);
/**
* @workInProgress
@@ -39,7 +38,7 @@ angularServiceInject("$window", bind(window, identity, window), [], EAGER_PUBLIS
*/
angularServiceInject("$document", function(window){
return jqLite(window.document);
-}, ['$window'], EAGER_PUBLISHED);
+}, ['$window'], EAGER);
/**
* @workInProgress
@@ -382,7 +381,7 @@ angularServiceInject("$log", function($window){
return logFn;
}
}
-}, ['$window'], EAGER_PUBLISHED);
+}, ['$window'], EAGER);
/**
* @workInProgress
@@ -406,7 +405,7 @@ angularServiceInject('$exceptionHandler', function($log){
return function(e) {
$log.error(e);
};
-}, ['$log'], EAGER_PUBLISHED);
+}, ['$log'], EAGER);
/**
* @workInProgress
@@ -531,7 +530,7 @@ angularServiceInject("$invalidWidgets", function(){
}
return invalidWidgets;
-}, [], EAGER_PUBLISHED);
+}, [], EAGER);
diff --git a/src/validators.js b/src/validators.js
index 8e288882..b55db341 100644
--- a/src/validators.js
+++ b/src/validators.js
@@ -382,10 +382,12 @@ extend(angularValidator, {
cache.current = input;
- var inputState = cache.inputs[input];
+ var inputState = cache.inputs[input],
+ $invalidWidgets = scope.$inject('$invalidWidgets');
+
if (!inputState) {
cache.inputs[input] = inputState = { inFlight: true };
- scope.$invalidWidgets.markInvalid(scope.$element);
+ $invalidWidgets.markInvalid(scope.$element);
element.addClass('ng-input-indicator-wait');
asynchronousFn(input, function(error, data) {
inputState.response = data;
@@ -393,14 +395,14 @@ extend(angularValidator, {
inputState.inFlight = false;
if (cache.current == input) {
element.removeClass('ng-input-indicator-wait');
- scope.$invalidWidgets.markValid(element);
+ $invalidWidgets.markValid(element);
}
element.data($$validate)();
scope.$root.$eval();
});
} else if (inputState.inFlight) {
// request in flight, mark widget invalid, but don't show it to user
- scope.$invalidWidgets.markInvalid(scope.$element);
+ $invalidWidgets.markInvalid(scope.$element);
} else {
(updateFn||noop)(inputState.response);
}
diff --git a/src/widgets.js b/src/widgets.js
index 532627eb..a09ee29d 100644
--- a/src/widgets.js
+++ b/src/widgets.js
@@ -271,7 +271,7 @@ function valueAccessor(scope, element) {
formatterName = element.attr('ng:format') || NOOP,
formatter = angularFormatter(formatterName),
format, parse, lastError, required,
- invalidWidgets = scope.$invalidWidgets || {markValid:noop, markInvalid:noop};
+ invalidWidgets = scope.$inject('$invalidWidgets') || {markValid:noop, markInvalid:noop};
if (!validator) throw "Validator named '" + validatorName + "' not found.";
if (!formatter) throw "Formatter named '" + formatterName + "' not found.";
format = formatter.format;