factory()

in src/Package.ts [100:116]


  factory(serviceFactoryOrName: string | FactoryDef, serviceFactory?: FactoryDef) {
    let name;
    if ( typeof serviceFactoryOrName === 'string' ) {
      name = serviceFactoryOrName;
    } else {
      serviceFactory = serviceFactoryOrName;
      if (!serviceFactory.name) { throw new Error('serviceFactory must have a name'); }
      name = serviceFactory.name;
    }

    if (typeof serviceFactory !== 'function' ) {
      throw new Error('serviceFactory must be a function.\nGot "' + typeof serviceFactory + '"');
    }

    this.module[name] = ['factory', serviceFactory];
    return this;
  }