public object GiveObjectById(string id) { object instance = instanceMappings[id]; if (instance == null) { DecoratedType decoratedType = (DecoratedType)implementationMappings[id]; if (decoratedType == null) { throw new ApplicationException("Unknown object key : " + id); } else { return(Instantiate(decoratedType, id)); } } else { DecoratedInstance decoratedInstance = (DecoratedInstance)instance; if (decoratedInstance.Decorator != null) { return(Instantiate(decoratedInstance.Decorator, id, decoratedInstance.Instance)); } else { return(decoratedInstance.Instance); } } }
public TypeDecoratorable CreateInstanceMapping(string identifier, object instance) { instanceMappings[identifier] = new DecoratedInstance(instance); return (TypeDecoratorable) instanceMappings[identifier]; }
public TypeDecoratorable CreateInstanceMapping(string identifier, object instance) { instanceMappings[identifier] = new DecoratedInstance(instance); return((TypeDecoratorable)instanceMappings[identifier]); }