code: function(name, factory) {
                          if (_.isUndefined(factory)) {
                              factory = name;
                              name = undefined;
                          }
  
                          if (factory && factory.__clazz && factory.__clazz.__isSubclazzOf('/InjectorJS/Factories/Abstract')) {
                              return this.__setPropertyValue(['factory', factory.getName()], factory);
                          }
  
                          var fields = _.isString(name) ? name.split('.') : name || [];
  
                          return this.__setPropertyValue(['factory'].concat(fields), factory);
                      }
docs: Sets object factory
  
  @param {string,Factory}   name     Factory name of factory instance
  @param {function|Factory} factory  Object factory
  @returns {Injector} this
  
  @this {Injector}