Skip to content

Commit 869bada

Browse files
committed
feat(container): remove tcontainer symbol and resolve as class type as per pr comments
1 parent bfaf469 commit 869bada

File tree

6 files changed

+11
-13
lines changed

6 files changed

+11
-13
lines changed

examples/javascript/resolving-container.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import { Container, TContainer, Injectable } from 'container-ioc';
1+
import { Container, Injectable } from 'container-ioc';
22

33
const container = new Container();
44

5-
@Injectable([TContainer])
5+
@Injectable([Container])
66
class Builder {
77
constructor(container) {}
88
}

examples/typescript/resolving-container.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import { IContainer, Container, TContainer, Injectable, Inject } from 'container-ioc';
1+
import { IContainer, Container, Injectable, Inject } from 'container-ioc';
22

33
const container = new Container();
44

55
@Injectable()
66
class Builder {
7-
constructor(@Inject(TContainer) private container: IContainer) {}
7+
constructor(@Inject(Container) private container: IContainer) {}
88
}
99

1010
container.register({ token: Builder, useClass: Builder });

src/lib/container.interface.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,4 @@ export interface IContainer {
1818
createChild(): IContainer;
1919

2020
setParent(parent: IContainer): void;
21-
}
22-
23-
export const TContainer = Symbol('IContainer');
21+
}

src/lib/container.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { IConstructor, IInjectionInstance, IInjectionMd, IProvider, LifeTime, ProviderToken, RegistrationProvider } from './interfaces';
22
import { FactoryFunction, IFactory, IRegistryData, RegistryData } from './registry-data';
3-
import { IContainer, IContainerOptions, TContainer } from './container.interface';
3+
import { IContainer, IContainerOptions } from './container.interface';
44
import { ClassNotInjectableError, InvalidProviderProvidedError, NoProviderError } from './exceptions';
55
import { INJECTABLE_MD_KEY, INJECTIONS_MD_KEY } from './metadata/keys';
66
import { IMetadataAnnotator } from './metadata/metadata-annotator.interface';
@@ -21,7 +21,7 @@ export class Container implements IContainer {
2121
this.parent = <IContainer> options.parent;
2222
this.defaultLifeTime = options.defaultLifeTime || this.defaultLifeTime;
2323
}
24-
this.register({ token: TContainer, useValue: this });
24+
this.register({ token: Container, useValue: this });
2525
}
2626

2727
public register(provider: RegistrationProvider|RegistrationProvider[]): void {

src/lib/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
export { Container } from './container';
2-
export { IContainer, TContainer } from './container.interface';
2+
export { IContainer } from './container.interface';
33
export { Inject, Injectable, Component } from './decorators';
44
export { InjectionToken } from './injection-token';
55
export { IMetadataAnnotator } from './metadata/metadata-annotator.interface';

src/tests/container.spec.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { IContainer, TContainer } from '../lib/container.interface';
1+
import { IContainer } from '../lib/container.interface';
22
import { Container } from '../lib/index';
33

44
import 'mocha';
@@ -360,7 +360,7 @@ describe('Container', () => {
360360
it('should resolve container instance when injected into class Literal', () => {
361361
@Injectable()
362362
class TestClass {
363-
constructor(@Inject(TContainer) public a: IContainer) {}
363+
constructor(@Inject(Container) public a: IContainer) {}
364364
}
365365

366366
container.register({ token: TestClass, useClass: TestClass });
@@ -465,7 +465,7 @@ describe('Container', () => {
465465
});
466466

467467
it('should register itself for injection', () => {
468-
const actual = container.resolve(TContainer);
468+
const actual = container.resolve(Container);
469469

470470
expect(actual).to.be.ok;
471471
expect(actual).to.equal(container);

0 commit comments

Comments
 (0)