Skip to content
This repository has been archived by the owner on Apr 12, 2024. It is now read-only.

Commit

Permalink
refactor($provide) Rename service -> provider
Browse files Browse the repository at this point in the history
It registers a provider class, so this makes more sense.

Breaks Rename $provide.service -> $provide.provider
  • Loading branch information
vojtajina committed Mar 9, 2012
1 parent e0c9551 commit 00d4427
Show file tree
Hide file tree
Showing 9 changed files with 31 additions and 31 deletions.
2 changes: 1 addition & 1 deletion docs/src/templates/doc_widgets.js
Original file line number Diff line number Diff line change
Expand Up @@ -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;
};
Expand Down
6 changes: 3 additions & 3 deletions src/AngularPublic.js
Original file line number Diff line number Diff line change
Expand Up @@ -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,
Expand Down Expand Up @@ -105,7 +105,7 @@ function publishExternalAPI(angular){
}).
directive(ngAttributeAliasDirectives).
directive(ngEventDirectives);
$provide.service({
$provide.provider({
$anchorScroll: $AnchorScrollProvider,
$browser: $BrowserProvider,
$cacheFactory: $CacheFactoryProvider,
Expand Down
20 changes: 10 additions & 10 deletions src/Injector.js
Original file line number Diff line number Diff line change
Expand Up @@ -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) {
Expand All @@ -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
*
Expand All @@ -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
*/

Expand Down Expand Up @@ -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),
Expand Down Expand Up @@ -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)); }

Expand Down
2 changes: 1 addition & 1 deletion src/angular-mocks.js
Original file line number Diff line number Diff line change
Expand Up @@ -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,
Expand Down
6 changes: 3 additions & 3 deletions src/loader.js
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
16 changes: 8 additions & 8 deletions test/InjectorSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -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) {
Expand Down Expand Up @@ -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([]);
});
});
Expand Down
4 changes: 2 additions & 2 deletions test/loaderSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -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').
Expand All @@ -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'] ],
Expand Down
4 changes: 2 additions & 2 deletions test/service/exceptionHandlerSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -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');
Expand All @@ -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');
Expand Down
2 changes: 1 addition & 1 deletion test/service/logSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -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);
}));
Expand Down

0 comments on commit 00d4427

Please sign in to comment.