From: <jer...@us...> - 2008-08-16 16:44:34
|
Revision: 139 http://structuremap.svn.sourceforge.net/structuremap/?rev=139&view=rev Author: jeremydmiller Date: 2008-08-16 16:44:23 +0000 (Sat, 16 Aug 2008) Log Message: ----------- getting ready for build conventions Modified Paths: -------------- trunk/Source/StructureMap/BuildSession.cs trunk/Source/StructureMap/Container.cs trunk/Source/StructureMap/Emitting/BuildInstanceMethod.cs trunk/Source/StructureMap/Emitting/DynamicAssembly.cs trunk/Source/StructureMap/Emitting/Parameters/Methods.cs trunk/Source/StructureMap/IInstanceFactory.cs trunk/Source/StructureMap/InstanceBuilder.cs trunk/Source/StructureMap/InstanceFactory.cs trunk/Source/StructureMap/Pipeline/BuildPolicy.cs trunk/Source/StructureMap/Pipeline/CacheInterceptor.cs trunk/Source/StructureMap/Pipeline/ConfiguredInstance.Building.cs trunk/Source/StructureMap/Pipeline/ConfiguredInstance.cs trunk/Source/StructureMap/Pipeline/ConstructorInstance.cs trunk/Source/StructureMap/Pipeline/DefaultInstance.cs trunk/Source/StructureMap/Pipeline/ExplicitArguments.cs trunk/Source/StructureMap/Pipeline/HybridBuildPolicy.cs trunk/Source/StructureMap/Pipeline/IBuildPolicy.cs trunk/Source/StructureMap/Pipeline/IConfiguredInstance.cs trunk/Source/StructureMap/Pipeline/ILocationPolicy.cs trunk/Source/StructureMap/Pipeline/Instance.cs trunk/Source/StructureMap/Pipeline/LiteralInstance.cs trunk/Source/StructureMap/Pipeline/PrototypeInstance.cs trunk/Source/StructureMap/Pipeline/ReferencedInstance.cs trunk/Source/StructureMap/Pipeline/SerializedInstance.cs trunk/Source/StructureMap/Pipeline/UserControlInstance.cs trunk/Source/StructureMap/StructureMap.csproj trunk/Source/StructureMap.Testing/BuildSessionTester.cs trunk/Source/StructureMap.Testing/Configuration/DSL/CreatePluginFamilyTester.cs trunk/Source/StructureMap.Testing/Configuration/DSL/GenericFamilyExpressionTester.cs trunk/Source/StructureMap.Testing/Graph/DynamicInjectionTester.cs trunk/Source/StructureMap.Testing/Pipeline/BuildStrategiesTester.cs trunk/Source/StructureMap.Testing/Pipeline/ConfiguredInstanceTester.cs trunk/Source/StructureMap.Testing/Pipeline/ConstructorInstanceTester.cs trunk/Source/StructureMap.Testing/Pipeline/DefaultInstanceTester.cs trunk/Source/StructureMap.Testing/Pipeline/InstanceTester.cs trunk/Source/StructureMap.Testing/Pipeline/OptionalSetterInjectionTester.cs trunk/Source/StructureMap.Testing/Pipeline/ReferencedInstanceTester.cs trunk/Source/StructureMap.Testing/Pipeline/StubBuildSession.cs trunk/Source/StructureMap.Testing/StructureMap.Testing.csproj trunk/Source/StructureMap.Testing.Widget/ArrayConstruction.cs trunk/Source/StructureMap.Testing.Widget/BuilderSamples.cs trunk/Source/StructureMap.Testing.Widget/Decision.cs trunk/Source/StructureMap.Testing.Widget/Hierarchy.cs trunk/Source/StructureMap.Testing.Widget2/EnumerationCheck.cs trunk/Source/StructureMap.Testing.Widget5/BasicGridColumnInstanceBuilder.cs Added Paths: ----------- trunk/Source/StructureMap/Pipeline/BuildFrame.cs trunk/Source/StructureMap/Pipeline/BuildStack.cs trunk/Source/StructureMap.Testing/Pipeline/BuildStackTester.cs Removed Paths: ------------- trunk/Source/StructureMap/Pipeline/IBuildSession.cs trunk/Source/StructureMap/Source/ConfigInstanceMementoSource.cs trunk/Source/StructureMap/Source/EmbeddedMementoSource.cs Modified: trunk/Source/StructureMap/BuildSession.cs =================================================================== --- trunk/Source/StructureMap/BuildSession.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/BuildSession.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -8,12 +8,13 @@ namespace StructureMap { - public class BuildSession : IBuildSession + public class BuildSession { private readonly InterceptorLibrary _interceptorLibrary; private readonly PipelineGraph _pipelineGraph; private readonly InstanceCache _cache = new InstanceCache(); private readonly Cache<Type, object> _defaults; + private readonly BuildStack _buildStack = new BuildStack(); public BuildSession(PipelineGraph pipelineGraph, InterceptorLibrary interceptorLibrary) { @@ -39,15 +40,18 @@ } + public BuildSession() : this(new PluginGraph()) + { + + } + protected PipelineGraph pipelineGraph { get { return _pipelineGraph; } } - #region IBuildSession Members - - public object CreateInstance(Type pluginType, string name) + public virtual object CreateInstance(Type pluginType, string name) { Instance instance = forType(pluginType).FindInstance(name); if (instance == null) @@ -65,13 +69,14 @@ if (result == null) { result = forType(pluginType).Build(this, instance); + _cache.Set(pluginType, instance, result); } return result; } - public Array CreateInstanceArray(Type pluginType, Instance[] instances) + public virtual Array CreateInstanceArray(Type pluginType, Instance[] instances) { Array array; @@ -99,23 +104,27 @@ return array; } - public object CreateInstance(Type pluginType) + public virtual object CreateInstance(Type pluginType) { return _defaults.Retrieve(pluginType); } - public object ApplyInterception(Type pluginType, object actualValue) + public virtual object ApplyInterception(Type pluginType, object actualValue) { return _interceptorLibrary.FindInterceptor(actualValue.GetType()).Process(actualValue); } - public void RegisterDefault(Type pluginType, object defaultObject) + public virtual void RegisterDefault(Type pluginType, object defaultObject) { _defaults.Store(pluginType, defaultObject); } - #endregion + public BuildStack BuildStack + { + get { return _buildStack; } + } + private IInstanceFactory forType(Type pluginType) { return _pipelineGraph.ForType(pluginType); Modified: trunk/Source/StructureMap/Container.cs =================================================================== --- trunk/Source/StructureMap/Container.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Container.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -90,7 +90,7 @@ Instance defaultInstance = _pipelineGraph.GetDefault(type); Instance instance = new ExplicitInstance(type, args, defaultInstance); - IBuildSession session = withNewSession(); + BuildSession session = withNewSession(); args.RegisterDefaults(session); @@ -123,7 +123,7 @@ { List<T> list = new List<T>(); - IBuildSession session = withNewSession(); + BuildSession session = withNewSession(); foreach (T instance in forType(typeof (T)).GetAllInstances(session)) { @@ -303,7 +303,7 @@ #endregion - private IBuildSession withNewSession() + private BuildSession withNewSession() { return new BuildSession(_pipelineGraph, _interceptorLibrary); } Modified: trunk/Source/StructureMap/Emitting/BuildInstanceMethod.cs =================================================================== --- trunk/Source/StructureMap/Emitting/BuildInstanceMethod.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Emitting/BuildInstanceMethod.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -21,7 +21,7 @@ public override Type[] ArgumentList { - get { return new Type[] {typeof (IConfiguredInstance), typeof (IBuildSession)}; } + get { return new Type[] {typeof (IConfiguredInstance), typeof (BuildSession)}; } } public override string MethodName Modified: trunk/Source/StructureMap/Emitting/DynamicAssembly.cs =================================================================== --- trunk/Source/StructureMap/Emitting/DynamicAssembly.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Emitting/DynamicAssembly.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -84,7 +84,7 @@ newClass.Bake(); } - _assemblyBuilder.Save(_name + ".dll"); + //_assemblyBuilder.Save(_name + ".dll"); //assemBuilder.Save(DLLName); //Assembly assem = AppDomain.CurrentDomain.Load(this.Name); Modified: trunk/Source/StructureMap/Emitting/Parameters/Methods.cs =================================================================== --- trunk/Source/StructureMap/Emitting/Parameters/Methods.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Emitting/Parameters/Methods.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -13,7 +13,7 @@ public static MethodInfo HAS_PROPERTY = ReflectionHelper.GetMethod<IConfiguredInstance>(i => i.HasProperty(null)); public static MethodInfo GET_CHILDREN_ARRAY = ReflectionHelper.GetMethod<IConfiguredInstance>(i => i.GetChildrenArray(null)); public static MethodInfo GET_CHILD = ReflectionHelper.GetMethod<IConfiguredInstance>(i => i.GetChild(null, null, null)); - public static MethodInfo CREATE_INSTANCE_ARRAY = ReflectionHelper.GetMethod<IBuildSession>(i => i.CreateInstanceArray(null, null)); + public static MethodInfo CREATE_INSTANCE_ARRAY = ReflectionHelper.GetMethod<BuildSession>(i => i.CreateInstanceArray(null, null)); public static MethodInfo GET_TYPE_FROM_HANDLE = typeof(Type).GetMethod("GetTypeFromHandle"); Modified: trunk/Source/StructureMap/IInstanceFactory.cs =================================================================== --- trunk/Source/StructureMap/IInstanceFactory.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/IInstanceFactory.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -15,8 +15,8 @@ void AddInstance(Instance instance); Instance AddType<T>(); - IList GetAllInstances(IBuildSession session); - object Build(IBuildSession session, Instance instance); + IList GetAllInstances(BuildSession session); + object Build(BuildSession session, Instance instance); Instance FindInstance(string name); void ForEachInstance(Action<Instance> action); Modified: trunk/Source/StructureMap/InstanceBuilder.cs =================================================================== --- trunk/Source/StructureMap/InstanceBuilder.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/InstanceBuilder.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -17,6 +17,6 @@ public abstract Type PluggedType { get; } - public abstract object BuildInstance(IConfiguredInstance instance, IBuildSession session); + public abstract object BuildInstance(IConfiguredInstance instance, BuildSession session); } } \ No newline at end of file Modified: trunk/Source/StructureMap/InstanceFactory.cs =================================================================== --- trunk/Source/StructureMap/InstanceFactory.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/InstanceFactory.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -100,7 +100,7 @@ return instance; } - public IList GetAllInstances(IBuildSession session) + public IList GetAllInstances(BuildSession session) { IList list = new ArrayList(); @@ -113,7 +113,7 @@ return list; } - public object Build(IBuildSession session, Instance instance) + public object Build(BuildSession session, Instance instance) { return _policy.Build(session, PluginType, instance); } Added: trunk/Source/StructureMap/Pipeline/BuildFrame.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/BuildFrame.cs (rev 0) +++ trunk/Source/StructureMap/Pipeline/BuildFrame.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -0,0 +1,33 @@ +using System; + +namespace StructureMap.Pipeline +{ + public class BuildFrame + { + private readonly Type _requestedType; + private readonly string _name; + private readonly Type _concreteType; + + public BuildFrame(Type requestedType, string name, Type concreteType) + { + _requestedType = requestedType; + _name = name; + _concreteType = concreteType; + } + + public Type RequestedType + { + get { return _requestedType; } + } + + public string Name + { + get { return _name; } + } + + public Type ConcreteType + { + get { return _concreteType; } + } + } +} \ No newline at end of file Modified: trunk/Source/StructureMap/Pipeline/BuildPolicy.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/BuildPolicy.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/BuildPolicy.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -6,7 +6,7 @@ { #region IBuildPolicy Members - public object Build(IBuildSession buildSession, Type pluginType, Instance instance) + public object Build(BuildSession buildSession, Type pluginType, Instance instance) { if (buildSession == null) { Added: trunk/Source/StructureMap/Pipeline/BuildStack.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/BuildStack.cs (rev 0) +++ trunk/Source/StructureMap/Pipeline/BuildStack.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -0,0 +1,36 @@ +using System.Collections.Generic; + +namespace StructureMap.Pipeline +{ + public class BuildStack + { + private readonly Stack<BuildFrame> _frameStack = new Stack<BuildFrame>(); + private BuildFrame _root; + + internal BuildStack() + { + + } + + public BuildFrame Root + { + get { return _root; } + } + + public BuildFrame Current + { + get { return _frameStack.Peek(); } + } + + internal void Push(BuildFrame frame) + { + if (_root == null) _root = frame; + _frameStack.Push(frame); + } + + internal void Pop() + { + _frameStack.Pop(); + } + } +} \ No newline at end of file Modified: trunk/Source/StructureMap/Pipeline/CacheInterceptor.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/CacheInterceptor.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/CacheInterceptor.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -16,7 +16,7 @@ } - public object Build(IBuildSession buildSession, Type pluginType, Instance instance) + public object Build(BuildSession buildSession, Type pluginType, Instance instance) { if (!isCached(instance.Name, pluginType)) { Modified: trunk/Source/StructureMap/Pipeline/ConfiguredInstance.Building.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/ConfiguredInstance.Building.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/ConfiguredInstance.Building.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -26,14 +26,14 @@ return _properties[propertyName]; } - object IConfiguredInstance.GetChild(string propertyName, Type pluginType, IBuildSession buildSession) + object IConfiguredInstance.GetChild(string propertyName, Type pluginType, BuildSession buildSession) { return getChild(propertyName, pluginType, buildSession); } // Only open for testing - object IConfiguredInstance.Build(Type pluginType, IBuildSession session, InstanceBuilder builder) + object IConfiguredInstance.Build(Type pluginType, BuildSession session, InstanceBuilder builder) { if (builder == null) { @@ -64,5 +64,10 @@ { return _properties.ContainsKey(propertyName) || _children.ContainsKey(propertyName) || _arrays.ContainsKey(propertyName); } + + protected override Type getConcreteType() + { + return _pluggedType; + } } } Modified: trunk/Source/StructureMap/Pipeline/ConfiguredInstance.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/ConfiguredInstance.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/ConfiguredInstance.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -85,13 +85,13 @@ _arrays = instance._arrays; } - protected override object build(Type pluginType, IBuildSession session) + protected override object build(Type pluginType, BuildSession session) { InstanceBuilder builder = PluginCache.FindBuilder(_pluggedType); return ((IConfiguredInstance) this).Build(pluginType, session, builder); } - protected virtual object getChild(string propertyName, Type pluginType, IBuildSession buildSession) + protected virtual object getChild(string propertyName, Type pluginType, BuildSession buildSession) { Instance childInstance = _children.ContainsKey(propertyName) ? _children[propertyName] Modified: trunk/Source/StructureMap/Pipeline/ConstructorInstance.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/ConstructorInstance.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/ConstructorInstance.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -24,7 +24,7 @@ get { return this; } } - protected override object build(Type pluginType, IBuildSession session) + protected override object build(Type pluginType, BuildSession session) { try { Modified: trunk/Source/StructureMap/Pipeline/DefaultInstance.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/DefaultInstance.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/DefaultInstance.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -9,7 +9,7 @@ int x = 1; } - protected override object build(Type pluginType, IBuildSession session) + protected override object build(Type pluginType, BuildSession session) { return session.CreateInstance(pluginType); } Modified: trunk/Source/StructureMap/Pipeline/ExplicitArguments.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/ExplicitArguments.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/ExplicitArguments.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -63,7 +63,7 @@ return _args.ContainsKey(propertyName); } - public void RegisterDefaults(IBuildSession session) + public void RegisterDefaults(BuildSession session) { foreach (var pair in _children) { @@ -93,7 +93,7 @@ } - protected override object getChild(string propertyName, Type pluginType, IBuildSession buildSession) + protected override object getChild(string propertyName, Type pluginType, BuildSession buildSession) { if (_args.Has(pluginType)) { Modified: trunk/Source/StructureMap/Pipeline/HybridBuildPolicy.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/HybridBuildPolicy.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/HybridBuildPolicy.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -22,7 +22,7 @@ set { _innerInterceptor.InnerPolicy = value; } } - public object Build(IBuildSession buildSession, Type pluginType, Instance instance) + public object Build(BuildSession buildSession, Type pluginType, Instance instance) { return _innerInterceptor.Build(buildSession, pluginType, instance); } Modified: trunk/Source/StructureMap/Pipeline/IBuildPolicy.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/IBuildPolicy.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/IBuildPolicy.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -4,7 +4,7 @@ { public interface IBuildPolicy { - object Build(IBuildSession buildSession, Type pluginType, Instance instance); + object Build(BuildSession buildSession, Type pluginType, Instance instance); IBuildPolicy Clone(); } } \ No newline at end of file Deleted: trunk/Source/StructureMap/Pipeline/IBuildSession.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/IBuildSession.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/IBuildSession.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -1,14 +0,0 @@ -using System; - -namespace StructureMap.Pipeline -{ - public interface IBuildSession - { - object CreateInstance(Type pluginType, string name); - object CreateInstance(Type pluginType, Instance instance); - Array CreateInstanceArray(Type pluginType, Instance[] instances); - object CreateInstance(Type pluginType); - object ApplyInterception(Type pluginType, object actualValue); - void RegisterDefault(Type pluginType, object defaultObject); - } -} \ No newline at end of file Modified: trunk/Source/StructureMap/Pipeline/IConfiguredInstance.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/IConfiguredInstance.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/IConfiguredInstance.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -8,8 +8,8 @@ Type PluggedType { get; } Instance[] GetChildrenArray(string propertyName); string GetProperty(string propertyName); - object GetChild(string propertyName, Type pluginType, IBuildSession buildSession); - object Build(Type pluginType, IBuildSession session, InstanceBuilder builder); + object GetChild(string propertyName, Type pluginType, BuildSession buildSession); + object Build(Type pluginType, BuildSession session, InstanceBuilder builder); bool HasProperty(string propertyName); } } \ No newline at end of file Modified: trunk/Source/StructureMap/Pipeline/ILocationPolicy.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/ILocationPolicy.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/ILocationPolicy.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -2,7 +2,7 @@ { public interface ILocationPolicy { - object Build(IBuildSession session, Instance instance); + object Build(BuildSession session, Instance instance); } //public class DefaultPolicy : ILocationPolicy Modified: trunk/Source/StructureMap/Pipeline/Instance.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/Instance.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/Instance.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -14,6 +14,7 @@ InstanceToken CreateToken(); void Preprocess(PluginFamily family); void AddTemplatedInstanceTo(PluginFamily family, Type[] templateTypes); + Type ConcreteType { get; } } public abstract class Instance : IDiagnosticInstance @@ -34,13 +35,17 @@ set { _name = value; } } - public virtual object Build(Type pluginType, IBuildSession session) + public virtual object Build(Type pluginType, BuildSession session) { + session.BuildStack.Push(new BuildFrame(pluginType, Name, getConcreteType())); object rawValue = createRawObject(pluginType, session); - return applyInterception(rawValue, pluginType); + var finalValue = applyInterception(rawValue, pluginType); + session.BuildStack.Pop(); + + return finalValue; } - private object createRawObject(Type pluginType, IBuildSession session) + private object createRawObject(Type pluginType, BuildSession session) { try { @@ -91,6 +96,16 @@ addTemplatedInstanceTo(family, templateTypes); } + Type IDiagnosticInstance.ConcreteType + { + get { return getConcreteType(); } + } + + protected virtual Type getConcreteType() + { + return null; + } + protected virtual void addTemplatedInstanceTo(PluginFamily family, Type[] templateTypes) { if (canBePartOfPluginFamily(family)) @@ -131,7 +146,7 @@ } } - protected abstract object build(Type pluginType, IBuildSession session); + protected abstract object build(Type pluginType, BuildSession session); protected virtual Instance findMasterInstance(PluginFamily family, string profileName, GraphLog log) { Modified: trunk/Source/StructureMap/Pipeline/LiteralInstance.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/LiteralInstance.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/LiteralInstance.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -28,7 +28,7 @@ get { return _object; } } - protected override object build(Type pluginType, IBuildSession session) + protected override object build(Type pluginType, BuildSession session) { return _object; } Modified: trunk/Source/StructureMap/Pipeline/PrototypeInstance.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/PrototypeInstance.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/PrototypeInstance.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -19,7 +19,7 @@ } - protected override object build(Type pluginType, IBuildSession session) + protected override object build(Type pluginType, BuildSession session) { return _prototype.Clone(); } Modified: trunk/Source/StructureMap/Pipeline/ReferencedInstance.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/ReferencedInstance.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/ReferencedInstance.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -35,7 +35,7 @@ #endregion - protected override object build(Type pluginType, IBuildSession session) + protected override object build(Type pluginType, BuildSession session) { return session.CreateInstance(pluginType, _referenceKey); } Modified: trunk/Source/StructureMap/Pipeline/SerializedInstance.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/SerializedInstance.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/SerializedInstance.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -24,7 +24,7 @@ return "Serialized instance"; } - protected override object build(Type pluginType, IBuildSession session) + protected override object build(Type pluginType, BuildSession session) { lock (_locker) { Modified: trunk/Source/StructureMap/Pipeline/UserControlInstance.cs =================================================================== --- trunk/Source/StructureMap/Pipeline/UserControlInstance.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Pipeline/UserControlInstance.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -24,7 +24,7 @@ get { return _url; } } - protected override object build(Type pluginType, IBuildSession session) + protected override object build(Type pluginType, BuildSession session) { Control control = new Page().LoadControl(_url); Deleted: trunk/Source/StructureMap/Source/ConfigInstanceMementoSource.cs =================================================================== --- trunk/Source/StructureMap/Source/ConfigInstanceMementoSource.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Source/ConfigInstanceMementoSource.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -1,61 +0,0 @@ -using System; -using System.Xml; - -namespace StructureMap.Source -{ - /// <summary> - /// MementoSource that reads InstanceMemento's from the <Instances> node - /// in the StructureMap.config file - /// </summary> - [Obsolete("No longer used")] - public class ConfigInstanceMementoSource : XmlMementoSource - { - private XmlNode _root; - - public ConfigInstanceMementoSource(Type pluginType) - : base(pluginType.FullName, "Type", "Key", XmlMementoStyle.NodeNormalized) - { - initializeToDefaultConfigFile(); - } - - private void initializeToDefaultConfigFile() - { - XmlDocument doc = new XmlDocument(); - string fileName = PluginGraphBuilder.GetStructureMapConfigurationPath(); - doc.Load(fileName); - - _root = doc.DocumentElement.SelectSingleNode("Instances"); - } - - public ConfigInstanceMementoSource(Type pluginType, XmlNode StructureMapNode) - : base(pluginType.FullName, "Type", "Key", XmlMementoStyle.NodeNormalized) - { - if (StructureMapNode == null) - { - initializeToDefaultConfigFile(); - } - else - { - _root = StructureMapNode.SelectSingleNode("Instances"); - } - } - - - protected override XmlNode getRootNode() - { - return _root; - } - - public override MementoSourceType SourceType - { - get { return MementoSourceType.ConfigInstance; } - } - - public override string Description - { - get { return "ConfigInstanceMementoSource"; } - } - - - } -} \ No newline at end of file Deleted: trunk/Source/StructureMap/Source/EmbeddedMementoSource.cs =================================================================== --- trunk/Source/StructureMap/Source/EmbeddedMementoSource.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/Source/EmbeddedMementoSource.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -1,25 +0,0 @@ -using System; -using System.Xml; - -namespace StructureMap.Source -{ - [Obsolete("No longer used within core of StructureMap")] - public class EmbeddedMementoSource : BasicXmlMementoSource - { - public EmbeddedMementoSource(XmlNode Node) - : base(Node, "Instance") - { - } - - public override MementoSourceType SourceType - { - get { return MementoSourceType.Embedded; } - } - - public override string Description - { - get { return "EmbeddedMementoSource"; } - } - - } -} \ No newline at end of file Modified: trunk/Source/StructureMap/StructureMap.csproj =================================================================== --- trunk/Source/StructureMap/StructureMap.csproj 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap/StructureMap.csproj 2008-08-16 16:44:23 UTC (rev 139) @@ -173,7 +173,6 @@ <Compile Include="Pipeline\HybridBuildPolicy.cs" /> <Compile Include="Pipeline\IBuildInterceptor.cs" /> <Compile Include="Pipeline\IBuildPolicy.cs" /> - <Compile Include="Pipeline\IBuildSession.cs" /> <Compile Include="Pipeline\IConfiguredInstance.cs" /> <Compile Include="Pipeline\ILocationPolicy.cs" /> <Compile Include="Pipeline\Instance.cs" /> @@ -405,6 +404,8 @@ <Compile Include="Graph\ITypeScanner.cs" /> <Compile Include="Graph\PluginCache.cs" /> <Compile Include="IBootstrapper.cs" /> + <Compile Include="Pipeline\BuildFrame.cs" /> + <Compile Include="Pipeline\BuildStack.cs" /> <Compile Include="Pipeline\ConfiguredInstance.Building.cs" /> <Compile Include="Pipeline\IStructuredInstance.cs" /> <Compile Include="Pipeline\SerializedInstance.cs" /> Modified: trunk/Source/StructureMap.Testing/BuildSessionTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/BuildSessionTester.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/BuildSessionTester.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -164,5 +164,58 @@ session.CreateInstance(typeof (IGateway)); }); } + + + [Test] + public void when_building_an_instance_use_the_register_the_stack_frame() + { + var recordingInstance = new BuildSessionInstance1(); + ConfiguredInstance instance = new ConfiguredInstance(typeof(ClassWithRule)).Child("rule").Is(recordingInstance); + BuildSession session = new BuildSession(new PluginGraph()); + + session.CreateInstance(typeof (IClassWithRule), instance); + + session.BuildStack.Root.ConcreteType.ShouldEqual(typeof (ClassWithRule)); + session.BuildStack.Root.RequestedType.ShouldEqual(typeof (IClassWithRule)); + session.BuildStack.Root.Name.ShouldEqual(instance.Name); + + recordingInstance.Current.ConcreteType.ShouldEqual(typeof(ColorRule)); + recordingInstance.Current.RequestedType.ShouldEqual(typeof(Rule)); + recordingInstance.Current.Name.ShouldEqual(recordingInstance.Name); + } } + + public interface IClassWithRule{} + + public class ClassWithRule : IClassWithRule + { + public ClassWithRule(Rule rule) + { + + } + } + + public class BuildSessionInstance1 : Instance + { + public BuildFrame Current { get; set; } + public BuildFrame Root { get; set; } + + protected override string getDescription() + { + return string.Empty; + } + + protected override Type getConcreteType() + { + return typeof(ColorRule); + } + + protected override object build(Type pluginType, BuildSession session) + { + Current = session.BuildStack.Current; + Root = session.BuildStack.Root; + + return new ColorRule("Red"); + } + } } \ No newline at end of file Modified: trunk/Source/StructureMap.Testing/Configuration/DSL/CreatePluginFamilyTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/DSL/CreatePluginFamilyTester.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/Configuration/DSL/CreatePluginFamilyTester.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -253,7 +253,7 @@ set { } } - public object Build(IBuildSession buildSession, Type pluginType, Instance instance) + public object Build(BuildSession buildSession, Type pluginType, Instance instance) { throw new NotImplementedException(); } Modified: trunk/Source/StructureMap.Testing/Configuration/DSL/GenericFamilyExpressionTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/DSL/GenericFamilyExpressionTester.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/Configuration/DSL/GenericFamilyExpressionTester.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -51,7 +51,7 @@ set { } } - public object Build(IBuildSession buildSession, Type pluginType, Instance instance) + public object Build(BuildSession buildSession, Type pluginType, Instance instance) { throw new NotImplementedException(); } Modified: trunk/Source/StructureMap.Testing/Graph/DynamicInjectionTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Graph/DynamicInjectionTester.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/Graph/DynamicInjectionTester.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -260,7 +260,7 @@ set { throw new NotImplementedException(); } } - public object Build(IBuildSession buildSession, Type pluginType, Instance instance) + public object Build(BuildSession buildSession, Type pluginType, Instance instance) { throw new NotImplementedException(); } Added: trunk/Source/StructureMap.Testing/Pipeline/BuildStackTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Pipeline/BuildStackTester.cs (rev 0) +++ trunk/Source/StructureMap.Testing/Pipeline/BuildStackTester.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -0,0 +1,44 @@ +using NUnit.Framework; +using StructureMap.Pipeline; +using StructureMap.Testing.Widget; +using StructureMap.Testing.Widget3; + +namespace StructureMap.Testing.Pipeline +{ + [TestFixture] + public class BuildStackTester + { + [Test] + public void Create_build_stack_and_the_root_is_from_the_ctor() + { + var root = new BuildFrame(typeof(IWidget), "Blue", typeof(ColorWidget)); + BuildStack stack = new BuildStack(); + stack.Push(root); + + stack.Root.ShouldBeTheSameAs(root); + } + + [Test] + public void push_a_new_BuildFrame_onto_the_stack() + { + var root = new BuildFrame(typeof(IWidget), "Blue", typeof(ColorWidget)); + var frame1 = new BuildFrame(typeof(IWidget), "Blue", typeof(ColorWidget)); + var frame2 = new BuildFrame(typeof(IWidget), "Blue", typeof(ColorWidget)); + BuildStack stack = new BuildStack(); + stack.Push(root); + + stack.Push(frame1); + stack.Current.ShouldBeTheSameAs(frame1); + stack.Root.ShouldBeTheSameAs(root); + + stack.Push(frame2); + stack.Current.ShouldBeTheSameAs(frame2); + stack.Root.ShouldBeTheSameAs(root); + + stack.Pop(); + stack.Current.ShouldBeTheSameAs(frame1); + stack.Pop(); + stack.Current.ShouldBeTheSameAs(root); + } + } +} \ No newline at end of file Modified: trunk/Source/StructureMap.Testing/Pipeline/BuildStrategiesTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Pipeline/BuildStrategiesTester.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/Pipeline/BuildStrategiesTester.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -28,7 +28,7 @@ _constructedObject = constructedObject; } - protected override object build(Type pluginType, IBuildSession session) + protected override object build(Type pluginType, BuildSession session) { return _constructedObject; } @@ -43,7 +43,7 @@ public void BuildPolicy_should_apply_interception() { MockRepository mocks = new MockRepository(); - IBuildSession buildSession = mocks.CreateMock<IBuildSession>(); + BuildSession buildSession = mocks.CreateMock<BuildSession>(); object firstValue = "first"; object secondValue = "second"; Modified: trunk/Source/StructureMap.Testing/Pipeline/ConfiguredInstanceTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Pipeline/ConfiguredInstanceTester.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/Pipeline/ConfiguredInstanceTester.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -32,7 +32,7 @@ #endregion - private IBuildSession _session; + private BuildSession _session; private void assertActionThrowsErrorCode(int errorCode, Action action) @@ -49,13 +49,20 @@ } } + [Test] + public void get_the_concrete_type_from_diagnostic_instance() + { + var instance = new ConfiguredInstance(typeof (ColorRule)) as IDiagnosticInstance; + instance.ConcreteType.ShouldEqual(typeof (ColorRule)); + } + [Test] public void Build_happy_path() { MockRepository mocks = new MockRepository(); InstanceBuilder builder = mocks.CreateMock<InstanceBuilder>(); - IBuildSession session = mocks.CreateMock<IBuildSession>(); + BuildSession session = mocks.CreateMock<BuildSession>(); object theObjectBuilt = new object(); ConfiguredInstance instance = new ConfiguredInstance(GetType()); @@ -173,7 +180,7 @@ public void Should_find_the_InstanceBuilder_by_PluggedType_if_it_exists() { MockRepository mocks = new MockRepository(); - IBuildSession session = mocks.DynamicMock<IBuildSession>(); + BuildSession session = mocks.DynamicMock<BuildSession>(); Type thePluginType = typeof (IGateway); Type thePluggedType = GetType(); Modified: trunk/Source/StructureMap.Testing/Pipeline/ConstructorInstanceTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Pipeline/ConstructorInstanceTester.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/Pipeline/ConstructorInstanceTester.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -15,7 +15,7 @@ try { - instance.Build(typeof (IWidget), null); + instance.Build(typeof (IWidget), new StubBuildSession()); Assert.Fail("Should have thrown an exception"); } catch (StructureMapException ex) Modified: trunk/Source/StructureMap.Testing/Pipeline/DefaultInstanceTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Pipeline/DefaultInstanceTester.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/Pipeline/DefaultInstanceTester.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -28,8 +28,8 @@ public void Build_happy_path() { MockRepository mocks = new MockRepository(); - IBuildSession buildSession = - mocks.CreateMock<IBuildSession>(); + BuildSession buildSession = + mocks.CreateMock<BuildSession>(); DefaultClass theDefault = new DefaultClass(); Modified: trunk/Source/StructureMap.Testing/Pipeline/InstanceTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Pipeline/InstanceTester.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/Pipeline/InstanceTester.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -37,7 +37,7 @@ { MockRepository mocks = new MockRepository(); InstanceInterceptor interceptor = mocks.CreateMock<InstanceInterceptor>(); - IBuildSession buildSession = mocks.CreateMock<IBuildSession>(); + BuildSession buildSession = mocks.CreateMock<BuildSession>(); InstanceUnderTest instanceUnderTest = new InstanceUnderTest(); @@ -63,7 +63,7 @@ public object TheInstanceThatWasBuilt = new object(); - protected override object build(Type pluginType, IBuildSession session) + protected override object build(Type pluginType, BuildSession session) { return TheInstanceThatWasBuilt; } Modified: trunk/Source/StructureMap.Testing/Pipeline/OptionalSetterInjectionTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Pipeline/OptionalSetterInjectionTester.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/Pipeline/OptionalSetterInjectionTester.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -4,6 +4,7 @@ using System.Linq.Expressions; using NUnit.Framework; using StructureMap.Configuration.DSL; +using StructureMap.Graph; using StructureMap.Pipeline; using StructureMap.Testing.TestData; using StructureMap.Testing.Widget; @@ -17,7 +18,7 @@ get { throw new System.NotImplementedException(); } } - public override object BuildInstance(IConfiguredInstance instance, IBuildSession session) + public override object BuildInstance(IConfiguredInstance instance, BuildSession session) { ClassWithOneSetter target = new ClassWithOneSetter(); if (instance.HasProperty("Name")) target.Name = instance.GetProperty("Name"); @@ -30,6 +31,12 @@ [TestFixture] public class OptionalSetterInjectionTester : RegistryExpressions { + [SetUp] + public void SetUp() + { + PluginCache.ResetAll(); + } + [Test] public void optional_setter_injection_with_string() { @@ -267,7 +274,7 @@ get { throw new System.NotImplementedException(); } } - public override object BuildInstance(IConfiguredInstance instance, IBuildSession session) + public override object BuildInstance(IConfiguredInstance instance, BuildSession session) { ClassWithOneEnum target = new ClassWithOneEnum(); if (instance.HasProperty("Color")) target.Color = (ColorEnum) Enum.Parse(typeof (ColorEnum), instance.GetProperty("Color")); Modified: trunk/Source/StructureMap.Testing/Pipeline/ReferencedInstanceTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Pipeline/ReferencedInstanceTester.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/Pipeline/ReferencedInstanceTester.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -30,7 +30,7 @@ public void Create_referenced_instance_happy_path() { MockRepository mocks = new MockRepository(); - IBuildSession buildSession = mocks.CreateMock<IBuildSession>(); + BuildSession buildSession = mocks.CreateMock<BuildSession>(); ConcreteReferenced returnedValue = new ConcreteReferenced(); string theReferenceKey = "theReferenceKey"; Modified: trunk/Source/StructureMap.Testing/Pipeline/StubBuildSession.cs =================================================================== --- trunk/Source/StructureMap.Testing/Pipeline/StubBuildSession.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/Pipeline/StubBuildSession.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -1,35 +1,20 @@ using System; using StructureMap.Graph; using StructureMap.Pipeline; +using StructureMap.Testing.Widget; namespace StructureMap.Testing.Pipeline { - public class StubBuildSession : IBuildSession + public class StubBuildSession : BuildSession { - #region IBuildSession Members + #region BuildSession Members - public object CreateInstance(Type type, string name) + public StubBuildSession() : base(new PluginGraph()) { - throw new NotImplementedException(); } - public object CreateInstance(Type pluginType, Instance instance) + public override object ApplyInterception(Type pluginType, object actualValue) { - throw new NotImplementedException(); - } - - public Array CreateInstanceArray(Type pluginType, Instance[] instances) - { - throw new NotImplementedException(); - } - - public object CreateInstance(Type pluginType) - { - throw new NotImplementedException(); - } - - public object ApplyInterception(Type pluginType, object actualValue) - { return actualValue; } @@ -54,6 +39,16 @@ } + public BuildStack BuildStack + { + get + { + var stack = new BuildStack(); + stack.Push(new BuildFrame(typeof(Rule), "Blue", typeof(ColorRule))); + return stack; + } + } + #endregion public object CreateInstance(string typeName, IConfiguredInstance instance) Modified: trunk/Source/StructureMap.Testing/StructureMap.Testing.csproj =================================================================== --- trunk/Source/StructureMap.Testing/StructureMap.Testing.csproj 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing/StructureMap.Testing.csproj 2008-08-16 16:44:23 UTC (rev 139) @@ -356,6 +356,7 @@ <SubType>Code</SubType> </Compile> <Compile Include="PipelineGraphTester.cs" /> + <Compile Include="Pipeline\BuildStackTester.cs" /> <Compile Include="Pipeline\BuildStrategiesTester.cs" /> <Compile Include="Pipeline\ConfiguredInstanceTester.cs" /> <Compile Include="Pipeline\ConstructorInstanceTester.cs" /> Modified: trunk/Source/StructureMap.Testing.Widget/ArrayConstruction.cs =================================================================== --- trunk/Source/StructureMap.Testing.Widget/ArrayConstruction.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing.Widget/ArrayConstruction.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -51,7 +51,7 @@ public class StringListBuilder : InstanceBuilder { - public override object BuildInstance(IConfiguredInstance instance, StructureMap.Pipeline.IBuildSession session) + public override object BuildInstance(IConfiguredInstance instance, BuildSession session) { return null; } Modified: trunk/Source/StructureMap.Testing.Widget/BuilderSamples.cs =================================================================== --- trunk/Source/StructureMap.Testing.Widget/BuilderSamples.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing.Widget/BuilderSamples.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -28,7 +28,7 @@ get { throw new System.NotImplementedException(); } } - public override object BuildInstance(IConfiguredInstance instance, IBuildSession session) + public override object BuildInstance(IConfiguredInstance instance, BuildSession session) { SetterTarget target = new SetterTarget(); return target; @@ -42,7 +42,7 @@ get { throw new System.NotImplementedException(); } } - public override object BuildInstance(IConfiguredInstance instance, IBuildSession session) + public override object BuildInstance(IConfiguredInstance instance, BuildSession session) { SetterTarget target = new SetterTarget(); if (instance.HasProperty("Name")) target.Name = instance.GetProperty("Name"); @@ -57,7 +57,7 @@ get { throw new System.NotImplementedException(); } } - public override object BuildInstance(IConfiguredInstance instance, IBuildSession session) + public override object BuildInstance(IConfiguredInstance instance, BuildSession session) { SetterTarget target = new SetterTarget(); if (instance.HasProperty("Name")) target.Name = instance.GetProperty("Name"); Modified: trunk/Source/StructureMap.Testing.Widget/Decision.cs =================================================================== --- trunk/Source/StructureMap.Testing.Widget/Decision.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing.Widget/Decision.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -17,7 +17,7 @@ public class DecisionBuilder : InstanceBuilder { - public override object BuildInstance(IConfiguredInstance instance, StructureMap.Pipeline.IBuildSession session) + public override object BuildInstance(IConfiguredInstance instance, BuildSession session) { return new Decision( (Rule[]) session.CreateInstanceArray(typeof(Rule), instance.GetChildrenArray("Rules"))); Modified: trunk/Source/StructureMap.Testing.Widget/Hierarchy.cs =================================================================== --- trunk/Source/StructureMap.Testing.Widget/Hierarchy.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing.Widget/Hierarchy.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -98,7 +98,7 @@ } - public override object BuildInstance(IConfiguredInstance instance, StructureMap.Pipeline.IBuildSession session) + public override object BuildInstance(IConfiguredInstance instance, BuildSession session) { var target = new Child( instance.GetProperty("Name"), Modified: trunk/Source/StructureMap.Testing.Widget2/EnumerationCheck.cs =================================================================== --- trunk/Source/StructureMap.Testing.Widget2/EnumerationCheck.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing.Widget2/EnumerationCheck.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -42,7 +42,7 @@ } - public override object BuildInstance(IConfiguredInstance instance, StructureMap.Pipeline.IBuildSession session) + public override object BuildInstance(IConfiguredInstance instance, BuildSession session) { return new Cow( long.Parse(instance.GetProperty("Weight")), @@ -58,7 +58,7 @@ get { throw new System.NotImplementedException(); } } - public override object BuildInstance(IConfiguredInstance instance, IBuildSession session) + public override object BuildInstance(IConfiguredInstance instance, BuildSession session) { SetterTarget target = new SetterTarget(); Modified: trunk/Source/StructureMap.Testing.Widget5/BasicGridColumnInstanceBuilder.cs =================================================================== --- trunk/Source/StructureMap.Testing.Widget5/BasicGridColumnInstanceBuilder.cs 2008-08-13 21:51:26 UTC (rev 138) +++ trunk/Source/StructureMap.Testing.Widget5/BasicGridColumnInstanceBuilder.cs 2008-08-16 16:44:23 UTC (rev 139) @@ -18,7 +18,7 @@ get { throw new NotImplementedException(); } } - public override object BuildInstance(IConfiguredInstance instance, StructureMap.Pipeline.IBuildSession session) + public override object BuildInstance(IConfiguredInstance instance, BuildSession session) { BasicGridColumn column = new BasicGridColumn(instance.GetProperty("headerText")); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |