refactor($provide) Rename service -> provider

It registers a provider class, so this makes more sense.

Breaks Rename $provide.service -> $provide.provider
This commit is contained in:
Vojta Jina 2012-03-08 15:59:32 -08:00
parent e0c9551fd7
commit 00d4427388
9 changed files with 31 additions and 31 deletions

View file

@ -86,7 +86,7 @@ angular.module('ngdocs.directives', [], function($compileProvider) {
var modules = [
function($provide) {
$provide.value('$browser', $browser);
$provide.service('$location', function() {
$provide.provider('$location', function() {
this.$get = function() {
return $location;
};

View file

@ -55,12 +55,12 @@ function publishExternalAPI(angular){
try {
angularModule('ngLocale');
} catch (e) {
angularModule('ngLocale', []).service('$locale', $LocaleProvider);
angularModule('ngLocale', []).provider('$locale', $LocaleProvider);
}
angularModule('ng', ['ngLocale'], ['$provide',
function ngModule($provide) {
$provide.service('$compile', $CompileProvider).
$provide.provider('$compile', $CompileProvider).
directive({
a: htmlAnchorDirective,
input: inputDirective,
@ -105,7 +105,7 @@ function publishExternalAPI(angular){
}).
directive(ngAttributeAliasDirectives).
directive(ngEventDirectives);
$provide.service({
$provide.provider({
$anchorScroll: $AnchorScrollProvider,
$browser: $BrowserProvider,
$cacheFactory: $CacheFactoryProvider,

View file

@ -183,7 +183,7 @@ function inferInjectionArgs(fn) {
* describe('Greeter', function(){
*
* beforeEach(module(function($provide) {
* $provide.service('greet', GreetProvider);
* $provide.provider('greet', GreetProvider);
* });
*
* it('should greet', inject(function(greet) {
@ -205,7 +205,7 @@ function inferInjectionArgs(fn) {
/**
* @ngdoc method
* @name angular.module.AUTO.$provide#service
* @name angular.module.AUTO.$provide#provider
* @methodOf angular.module.AUTO.$provide
* @description
*
@ -232,7 +232,7 @@ function inferInjectionArgs(fn) {
*
* @param {string} name The name of the instance. NOTE: the provider will be available under `name + 'Provider'` key.
* @param {function()} $getFn The $getFn for the instance creation. Internally this is a short hand for
* `$provide.service(name, {$get:$getFn})`.
* `$provide.provider(name, {$get: $getFn})`.
* @returns {Object} registered provider instance
*/
@ -294,7 +294,7 @@ function createInjector(modulesToLoad) {
loadedModules = new HashMap(),
providerCache = {
$provide: {
service: supportObject(service),
provider: supportObject(provider),
factory: supportObject(factory),
value: supportObject(value),
constant: supportObject(constant),
@ -330,17 +330,17 @@ function createInjector(modulesToLoad) {
}
}
function service(name, provider) {
if (isFunction(provider)){
provider = providerInjector.instantiate(provider);
function provider(name, provider_) {
if (isFunction(provider_)) {
provider_ = providerInjector.instantiate(provider_);
}
if (!provider.$get) {
if (!provider_.$get) {
throw Error('Provider ' + name + ' must define $get factory method.');
}
return providerCache[name + providerSuffix] = provider;
return providerCache[name + providerSuffix] = provider_;
}
function factory(name, factoryFn) { return service(name, { $get:factoryFn }); }
function factory(name, factoryFn) { return provider(name, { $get: factoryFn }); }
function value(name, value) { return factory(name, valueFn(value)); }

View file

@ -1271,7 +1271,7 @@ function MockXhr() {
* The `ngMock` is an angular module which is used with `ng` module and adds unit-test configuration as well as useful
* mocks to the {@link angular.module.AUTO.$injector $injector}.
*/
angular.module('ngMock', ['ng']).service({
angular.module('ngMock', ['ng']).provider({
$browser: angular.mock.$BrowserProvider,
$exceptionHandler: angular.mock.$ExceptionHandlerProvider,
$log: angular.mock.$LogProvider,

View file

@ -109,14 +109,14 @@ function setupModuleLoader(window) {
/**
* @ngdoc method
* @name angular.Module#service
* @name angular.Module#provider
* @methodOf angular.Module
* @param {string} name service name
* @param {Function} providerType Construction function for creating new instance of the service.
* @description
* See {@link angular.module.AUTO.$provide#service $provide.service()}.
* See {@link angular.module.AUTO.$provide#provider $provide.provider()}.
*/
service: invokeLater('$provide', 'service'),
provider: invokeLater('$provide', 'provider'),
/**
* @ngdoc method

View file

@ -180,7 +180,7 @@ describe('injector', function() {
var injector = createInjector([function($provide) {
$provide.value('value', 'value;');
$provide.factory('fn', valueFn('function;'));
$provide.service('service', function() {
$provide.provider('service', function() {
this.$get = valueFn('service;');
});
}, function(valueProvider, fnProvider, serviceProvider) {
@ -315,31 +315,31 @@ describe('injector', function() {
});
describe('service', function() {
it('should configure $provide service object', function() {
describe('provider', function() {
it('should configure $provide provider object', function() {
expect(createInjector([function($provide) {
$provide.service('value', {
$provide.provider('value', {
$get: valueFn('abc')
});
}]).get('value')).toEqual('abc');
});
it('should configure $provide service type', function() {
it('should configure $provide provider type', function() {
function Type() {};
Type.prototype.$get = function() {
expect(this instanceof Type).toBe(true);
return 'abc';
};
expect(createInjector([function($provide) {
$provide.service('value', Type);
$provide.provider('value', Type);
}]).get('value')).toEqual('abc');
});
it('should configure a set of services', function() {
it('should configure a set of providers', function() {
expect(createInjector([function($provide) {
$provide.service({value: valueFn({$get:Array})});
$provide.provider({value: valueFn({$get:Array})});
}]).get('value')).toEqual([]);
});
});

View file

@ -32,7 +32,7 @@ describe('module loader', function() {
var myModule = window.angular.module('my', ['other'], 'config');
expect(myModule.
service('sk', 'sv').
provider('sk', 'sv').
factory('fk', 'fv').
value('k', 'v').
filter('f', 'ff').
@ -45,7 +45,7 @@ describe('module loader', function() {
expect(myModule._invokeQueue).toEqual([
['$provide', 'constant', ['abc', 123] ],
['$injector', 'invoke', ['config'] ],
['$provide', 'service', ['sk', 'sv'] ],
['$provide', 'provider', ['sk', 'sv'] ],
['$provide', 'factory', ['fk', 'fv'] ],
['$provide', 'value', ['k', 'v'] ],
['$filterProvider', 'register', ['f', 'ff'] ],

View file

@ -3,7 +3,7 @@
describe('$exceptionHandler', function() {
it('should log errors with single argument', function() {
module(function($provide){
$provide.service('$exceptionHandler', $ExceptionHandlerProvider);
$provide.provider('$exceptionHandler', $ExceptionHandlerProvider);
});
inject(function($log, $exceptionHandler) {
$exceptionHandler('myError');
@ -14,7 +14,7 @@ describe('$exceptionHandler', function() {
it('should log errors with multiple arguments', function() {
module(function($provide){
$provide.service('$exceptionHandler', $ExceptionHandlerProvider);
$provide.provider('$exceptionHandler', $ExceptionHandlerProvider);
});
inject(function($log, $exceptionHandler) {
$exceptionHandler('myError', 'comment');

View file

@ -12,7 +12,7 @@ describe('$log', function() {
beforeEach(module(function($provide){
$window = {};
logger = '';
$provide.service('$log', $LogProvider);
$provide.provider('$log', $LogProvider);
$provide.value('$exceptionHandler', angular.mock.rethrow);
$provide.value('$window', $window);
}));