docs: 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);
                      }