From: <jer...@us...> - 2008-01-14 04:24:38
|
Revision: 55 http://structuremap.svn.sourceforge.net/structuremap/?rev=55&view=rev Author: jeremydmiller Date: 2008-01-13 20:24:37 -0800 (Sun, 13 Jan 2008) Log Message: ----------- consolidating namespaces Modified Paths: -------------- trunk/Source/StructureMap/Configuration/DSL/Expressions/ChildArrayExpression.cs trunk/Source/StructureMap/Configuration/DSL/Expressions/ChildInstanceExpression.cs trunk/Source/StructureMap/Configuration/DSL/Expressions/LiteralExpression.cs trunk/Source/StructureMap/Configuration/DSL/Expressions/PropertyExpression.cs trunk/Source/StructureMap/Configuration/DSL/Expressions/PrototypeExpression.cs trunk/Source/StructureMap/Configuration/DSL/Expressions/UserControlExpression.cs trunk/Source/StructureMap/Configuration/DSL/ReferenceMementoBuilder.cs trunk/Source/StructureMap/ConstructorMemento.cs trunk/Source/StructureMap/Graph/Plugin.cs trunk/Source/StructureMap/InstanceFactory.cs trunk/Source/StructureMap/InstanceManager.cs trunk/Source/StructureMap/ObjectFactory.cs trunk/Source/StructureMap.Testing/Client/Controllers/TreeBuilderTester.cs trunk/Source/StructureMap.Testing/Configuration/DSL/ChildInstanceExpressionTester.cs trunk/Source/StructureMap.Testing/Configuration/DSL/DeepInstanceTester.cs trunk/Source/StructureMap.Testing/Configuration/DSL/InstanceExpressionTester.cs trunk/Source/StructureMap.Testing/Configuration/DSL/LiteralExpressionTester.cs trunk/Source/StructureMap.Testing/Configuration/DSL/ProfileExpressionTester.cs trunk/Source/StructureMap.Testing/Configuration/DSL/RegistryTester.cs trunk/Source/StructureMap.Testing/Configuration/DSL/UserControlExpressionTester.cs trunk/Source/StructureMap.Testing/Configuration/DiagnosticGraphBuilderTester.cs trunk/Source/StructureMap.Testing/Configuration/InlineInstanceDefinitionInProfileAndMachineNodesTester.cs trunk/Source/StructureMap.Testing/Configuration/Tokens/FamilyTokenTester.cs trunk/Source/StructureMap.Testing/Configuration/Tokens/InstanceTokenTester.cs trunk/Source/StructureMap.Testing/Configuration/Tokens/MockInterceptor.cs trunk/Source/StructureMap.Testing/Configuration/Tokens/MockMementoSource.cs trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/ChildArrayPropertyTester.cs trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/ChildPropertyTester.cs trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/EnumerationPropertyTester.cs trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/PrimitivePropertyTester.cs trunk/Source/StructureMap.Testing/Configuration/Tokens/PropertyDefinitionTester.cs trunk/Source/StructureMap.Testing/Container/DynamicInjectionTester.cs trunk/Source/StructureMap.Testing/Container/EnumerationTester.cs trunk/Source/StructureMap.Testing/Container/InstanceFactoryTester.cs trunk/Source/StructureMap.Testing/Container/InstanceManagerTester.cs trunk/Source/StructureMap.Testing/Container/PluginGraphBuilderTester.cs trunk/Source/StructureMap.Testing/Container/Source/XmlTemplaterTester.cs trunk/Source/StructureMap.Testing/GenericsAcceptanceTester.cs trunk/Source/StructureMap.Testing/ImplicitPluginFromPluggedTypeAttributeTester.cs trunk/Source/StructureMap.Testing.Widget/Rule.cs Added Paths: ----------- trunk/Source/StructureMap/Configuration/DSL/Expressions/InstanceExpression.cs trunk/Source/StructureMap/Configuration/DSL/Expressions/MementoBuilder.cs trunk/Source/StructureMap/Configuration/DSL/Expressions/ProfileExpression.cs trunk/Source/StructureMap/Configuration/Mementos/ trunk/Source/StructureMap/Configuration/Mementos/LiteralMemento.cs trunk/Source/StructureMap/Configuration/Mementos/MemoryInstanceMemento.cs trunk/Source/StructureMap/Configuration/Mementos/PrototypeMemento.cs trunk/Source/StructureMap/Configuration/Mementos/UserControlMemento.cs Removed Paths: ------------- trunk/Source/StructureMap/MemoryInstanceMemento.cs Modified: trunk/Source/StructureMap/Configuration/DSL/Expressions/ChildArrayExpression.cs =================================================================== --- trunk/Source/StructureMap/Configuration/DSL/Expressions/ChildArrayExpression.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/Configuration/DSL/Expressions/ChildArrayExpression.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,4 +1,5 @@ using System; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; namespace StructureMap.Configuration.DSL.Expressions Modified: trunk/Source/StructureMap/Configuration/DSL/Expressions/ChildInstanceExpression.cs =================================================================== --- trunk/Source/StructureMap/Configuration/DSL/Expressions/ChildInstanceExpression.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/Configuration/DSL/Expressions/ChildInstanceExpression.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; namespace StructureMap.Configuration.DSL.Expressions Copied: trunk/Source/StructureMap/Configuration/DSL/Expressions/InstanceExpression.cs (from rev 54, trunk/Source/StructureMap/Configuration/DSL/InstanceExpression.cs) =================================================================== --- trunk/Source/StructureMap/Configuration/DSL/Expressions/InstanceExpression.cs (rev 0) +++ trunk/Source/StructureMap/Configuration/DSL/Expressions/InstanceExpression.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -0,0 +1,193 @@ +using System; +using StructureMap.Configuration.DSL.Expressions; +using StructureMap.Configuration.Mementos; +using StructureMap.Graph; + +namespace StructureMap.Configuration.DSL.Expressions +{ + /// <summary> + /// Used to define an Instance in code + /// </summary> + public class InstanceExpression : MementoBuilder<InstanceExpression> + { + private Type _pluggedType; + private MemoryInstanceMemento _memento; + + public InstanceExpression(Type pluginType) : base(pluginType) + { + } + + + internal Type PluggedType + { + get { return _pluggedType; } + } + + protected override void buildMemento() + { + _memento = new MemoryInstanceMemento(); + } + + + protected override InstanceMemento memento + { + get { return _memento; } + } + + protected override InstanceExpression thisInstance + { + get { return this; } + } + + protected override void configureMemento(PluginFamily family) + { + Plugin plugin = _pluggedType == null + ? family.Plugins[_memento.ConcreteKey] + : family.Plugins.FindOrCreate(_pluggedType); + + _memento.ConcreteKey = plugin.ConcreteKey; + } + + protected override void validate() + { + if (_pluggedType == null && string.IsNullOrEmpty(_memento.ConcreteKey)) + { + throw new StructureMapException(301, _memento.InstanceKey, + TypePath.GetAssemblyQualifiedName(_pluginType)); + } + } + + + /// <summary> + /// Start the definition of a primitive argument to a constructor argument + /// </summary> + /// <param name="propertyName"></param> + /// <returns></returns> + public PropertyExpression WithProperty(string propertyName) + { + return new PropertyExpression(this, _memento, propertyName); + } + + /// <summary> + /// Starts the definition of a child instance specifying the argument name + /// in the case of a constructor function that consumes more than one argument + /// of type T + /// </summary> + /// <typeparam name="CONSTRUCTORARGUMENTTYPE"></typeparam> + /// <param name="propertyName"></param> + /// <returns></returns> + public ChildInstanceExpression Child<CONSTRUCTORARGUMENTTYPE>(string propertyName) + { + ChildInstanceExpression child = new ChildInstanceExpression(this, _memento, propertyName); + addChildExpression(child); + child.ChildType = typeof (CONSTRUCTORARGUMENTTYPE); + + return child; + } + + /// <summary> + /// Start the definition of a child instance for type CONSTRUCTORARGUMENTTYPE + /// </summary> + /// <typeparam name="CONSTRUCTORARGUMENTTYPE"></typeparam> + /// <returns></returns> + public ChildInstanceExpression Child<CONSTRUCTORARGUMENTTYPE>() + { + string propertyName = findPropertyName<CONSTRUCTORARGUMENTTYPE>(); + + ChildInstanceExpression child = new ChildInstanceExpression(this, _memento, propertyName); + addChildExpression(child); + child.ChildType = typeof (CONSTRUCTORARGUMENTTYPE); + return child; + } + + private string findPropertyName<T>() + { + Plugin plugin = Plugin.CreateImplicitPlugin(_pluggedType); + string propertyName = plugin.FindFirstConstructorArgumentOfType<T>(); + + if (string.IsNullOrEmpty(propertyName)) + { + throw new StructureMapException(305, TypePath.GetAssemblyQualifiedName(typeof (T))); + } + + return propertyName; + } + + public override void ValidatePluggability(Type pluginType) + { + if (_pluggedType == null) + { + return; + } + + ExpressionValidator.ValidatePluggabilityOf(_pluggedType).IntoPluginType(pluginType); + } + + internal InstanceTypeExpression TypeExpression() + { + return new InstanceTypeExpression(this); + } + + /// <summary> + /// Helper class to capture the actual concrete type of an Instance + /// </summary> + public class InstanceTypeExpression + { + private readonly InstanceExpression _parent; + + internal InstanceTypeExpression(InstanceExpression parent) + { + _parent = parent; + } + + /// <summary> + /// Use type T for the concrete type of an instance + /// </summary> + /// <typeparam name="T"></typeparam> + /// <returns></returns> + public InstanceExpression UsingConcreteType<T>() + { + _parent._pluggedType = typeof (T); + return _parent; + } + + /// <summary> + /// Use a named Plugin type denoted by a [Pluggable("Key")] attribute + /// </summary> + /// <param name="concreteKey"></param> + /// <returns></returns> + public InstanceExpression UsingConcreteTypeNamed(string concreteKey) + { + _parent._memento.ConcreteKey = concreteKey; + return _parent; + } + } + + public ChildArrayExpression<PLUGINTYPE> ChildArray<PLUGINTYPE>() + { + validateTypeIsArray<PLUGINTYPE>(); + + string propertyName = findPropertyName<PLUGINTYPE>(); + return ChildArray<PLUGINTYPE>(propertyName); + } + + public ChildArrayExpression<PLUGINTYPE> ChildArray<PLUGINTYPE>(string propertyName) + { + validateTypeIsArray<PLUGINTYPE>(); + + ChildArrayExpression<PLUGINTYPE> expression = + new ChildArrayExpression<PLUGINTYPE>(this, _memento, propertyName); + addChildExpression(expression); + + return expression; + } + + private static void validateTypeIsArray<PLUGINTYPE>() + { + if (!typeof (PLUGINTYPE).IsArray) + { + throw new StructureMapException(307); + } + } + } +} \ No newline at end of file Modified: trunk/Source/StructureMap/Configuration/DSL/Expressions/LiteralExpression.cs =================================================================== --- trunk/Source/StructureMap/Configuration/DSL/Expressions/LiteralExpression.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/Configuration/DSL/Expressions/LiteralExpression.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,4 +1,5 @@ using System; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; namespace StructureMap.Configuration.DSL.Expressions Copied: trunk/Source/StructureMap/Configuration/DSL/Expressions/MementoBuilder.cs (from rev 54, trunk/Source/StructureMap/Configuration/DSL/MementoBuilder.cs) =================================================================== --- trunk/Source/StructureMap/Configuration/DSL/Expressions/MementoBuilder.cs (rev 0) +++ trunk/Source/StructureMap/Configuration/DSL/Expressions/MementoBuilder.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -0,0 +1,115 @@ +using System; +using System.Collections.Generic; +using StructureMap.Configuration.DSL.Expressions; +using StructureMap.Graph; +using StructureMap.Interceptors; + +namespace StructureMap.Configuration.DSL.Expressions +{ + public abstract class MementoBuilder<T> : IExpression, IMementoBuilder + { + protected readonly Type _pluginType; + protected List<IExpression> _children = new List<IExpression>(); + private string _instanceKey = null; + + public MementoBuilder(Type pluginType) + { + _pluginType = pluginType; + buildMemento(); + memento.InstanceKey = Guid.NewGuid().ToString(); + } + + void IExpression.Configure(PluginGraph graph) + { + validate(); + PluginFamily family = graph.LocateOrCreateFamilyForType((Type) _pluginType); + configureMemento(family); + + if (!string.IsNullOrEmpty(_instanceKey)) + { + memento.InstanceKey = _instanceKey; + } + + family.Source.AddExternalMemento(memento); + + foreach (IExpression child in _children) + { + child.Configure(graph); + } + } + + protected abstract InstanceMemento memento { get; } + + protected abstract T thisInstance { get; } + + protected abstract void configureMemento(PluginFamily family); + + protected abstract void validate(); + + public T WithName(string instanceKey) + { + memento.InstanceKey = instanceKey; + return thisInstance; + } + + public T OnCreation<TYPE>(StartupHandler<TYPE> handler) + { + StartupInterceptor<TYPE> interceptor = new StartupInterceptor<TYPE>(handler); + memento.Interceptor = interceptor; + + return thisInstance; + } + + public T EnrichWith<TYPE>(EnrichmentHandler<TYPE> handler) + { + EnrichmentInterceptor<TYPE> interceptor = new EnrichmentInterceptor<TYPE>(handler); + memento.Interceptor = interceptor; + + return thisInstance; + } + + public string InstanceKey + { + get { return memento.InstanceKey; } + set { memento.InstanceKey = value; } + } + + internal Type PluginType + { + get { return _pluginType; } + } + + protected abstract void buildMemento(); + + InstanceMemento IMementoBuilder.BuildMemento(PluginFamily family) + { + return buildMementoFromFamily(family); + } + + private InstanceMemento buildMementoFromFamily(PluginFamily family) + { + validate(); + configureMemento(family); + return memento; + } + + + InstanceMemento IMementoBuilder.BuildMemento(PluginGraph graph) + { + PluginFamily family = graph.LocateOrCreateFamilyForType(_pluginType); + return buildMementoFromFamily(family); + } + + public void SetInstanceName(string instanceKey) + { + _instanceKey = instanceKey; + } + + public abstract void ValidatePluggability(Type pluginType); + + protected void addChildExpression(IExpression expression) + { + _children.Add(expression); + } + } +} \ No newline at end of file Copied: trunk/Source/StructureMap/Configuration/DSL/Expressions/ProfileExpression.cs (from rev 54, trunk/Source/StructureMap/Configuration/DSL/ProfileExpression.cs) =================================================================== --- trunk/Source/StructureMap/Configuration/DSL/Expressions/ProfileExpression.cs (rev 0) +++ trunk/Source/StructureMap/Configuration/DSL/Expressions/ProfileExpression.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -0,0 +1,48 @@ +using System.Collections.Generic; +using StructureMap.Configuration.DSL.Expressions; +using StructureMap.Graph; + +namespace StructureMap.Configuration.DSL.Expressions +{ + /// <summary> + /// Expression class to help define a runtime Profile + /// </summary> + public class ProfileExpression : IExpression + { + private readonly string _profileName; + private List<InstanceDefaultExpression> _defaults = new List<InstanceDefaultExpression>(); + + public ProfileExpression(string profileName) + { + _profileName = profileName; + } + + void IExpression.Configure(PluginGraph graph) + { + Profile profile = graph.DefaultManager.GetProfile(_profileName); + if (profile == null) + { + profile = new Profile(_profileName); + graph.DefaultManager.AddProfile(profile); + } + + foreach (InstanceDefaultExpression expression in _defaults) + { + expression.Configure(profile, graph); + } + } + + /// <summary> + /// Starts the definition of the default instance for the containing Profile + /// </summary> + /// <typeparam name="T"></typeparam> + /// <returns></returns> + public InstanceDefaultExpression For<T>() + { + InstanceDefaultExpression defaultExpression = new InstanceDefaultExpression(typeof (T), this); + _defaults.Add(defaultExpression); + + return defaultExpression; + } + } +} \ No newline at end of file Modified: trunk/Source/StructureMap/Configuration/DSL/Expressions/PropertyExpression.cs =================================================================== --- trunk/Source/StructureMap/Configuration/DSL/Expressions/PropertyExpression.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/Configuration/DSL/Expressions/PropertyExpression.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,4 +1,5 @@ using System.Configuration; +using StructureMap.Configuration.Mementos; namespace StructureMap.Configuration.DSL.Expressions { Modified: trunk/Source/StructureMap/Configuration/DSL/Expressions/PrototypeExpression.cs =================================================================== --- trunk/Source/StructureMap/Configuration/DSL/Expressions/PrototypeExpression.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/Configuration/DSL/Expressions/PrototypeExpression.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,4 +1,5 @@ using System; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; namespace StructureMap.Configuration.DSL.Expressions Modified: trunk/Source/StructureMap/Configuration/DSL/Expressions/UserControlExpression.cs =================================================================== --- trunk/Source/StructureMap/Configuration/DSL/Expressions/UserControlExpression.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/Configuration/DSL/Expressions/UserControlExpression.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,4 +1,5 @@ using System; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; namespace StructureMap.Configuration.DSL.Expressions Modified: trunk/Source/StructureMap/Configuration/DSL/ReferenceMementoBuilder.cs =================================================================== --- trunk/Source/StructureMap/Configuration/DSL/ReferenceMementoBuilder.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/Configuration/DSL/ReferenceMementoBuilder.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,5 +1,6 @@ using System; using StructureMap.Configuration.DSL.Expressions; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; namespace StructureMap.Configuration.DSL Copied: trunk/Source/StructureMap/Configuration/Mementos/LiteralMemento.cs (from rev 54, trunk/Source/StructureMap/Configuration/DSL/Expressions/LiteralMemento.cs) =================================================================== --- trunk/Source/StructureMap/Configuration/Mementos/LiteralMemento.cs (rev 0) +++ trunk/Source/StructureMap/Configuration/Mementos/LiteralMemento.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -0,0 +1,67 @@ +using System; + +namespace StructureMap.Configuration.Mementos +{ + public class LiteralMemento : InstanceMemento + { + private object _instance; + + public LiteralMemento(object instance) + { + _instance = instance; + InstanceKey = Guid.NewGuid().ToString(); + } + + public LiteralMemento Named(string name) + { + InstanceKey = name; + return this; + } + + public object Instance + { + get { return _instance; } + set { _instance = value; } + } + + protected override string innerConcreteKey + { + get { throw new NotImplementedException(); } + } + + protected override string innerInstanceKey + { + get { throw new NotImplementedException(); } + } + + protected override string getPropertyValue(string Key) + { + throw new NotImplementedException(); + } + + protected override InstanceMemento getChild(string Key) + { + throw new NotImplementedException(); + } + + public override InstanceMemento[] GetChildrenArray(string Key) + { + throw new NotImplementedException(); + } + + public override bool IsReference + { + get { return false; } + } + + public override string ReferenceKey + { + get { throw new NotImplementedException(); } + } + + protected override object buildInstance(IInstanceCreator creator) + { + return _instance; + } + } +} \ No newline at end of file Copied: trunk/Source/StructureMap/Configuration/Mementos/MemoryInstanceMemento.cs (from rev 53, trunk/Source/StructureMap/MemoryInstanceMemento.cs) =================================================================== --- trunk/Source/StructureMap/Configuration/Mementos/MemoryInstanceMemento.cs (rev 0) +++ trunk/Source/StructureMap/Configuration/Mementos/MemoryInstanceMemento.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -0,0 +1,209 @@ +using System.Collections; +using System.Collections.Specialized; +using StructureMap.Graph; + +namespace StructureMap.Configuration.Mementos +{ + public class GenericMemento<T> : MemoryInstanceMemento + { + public GenericMemento(string instanceKey) + : base(Plugin.CreateImplicitPlugin(typeof (T)).ConcreteKey, instanceKey) + { + } + } + + /// <summary> + /// An in-memory implementation of InstanceMemento. + /// </summary> + public class MemoryInstanceMemento : InstanceMemento + { + #region statics + + /// <summary> + /// Creates an instance of MemoryInstanceMemento that represents a reference to another + /// instance. + /// </summary> + /// <param name="referenceKey">The referenced instance key to another instance</param> + /// <returns></returns> + public static MemoryInstanceMemento CreateReferencedInstanceMemento(string referenceKey) + { + MemoryInstanceMemento memento = new MemoryInstanceMemento(); + memento._referenceKey = referenceKey; + memento._isReference = true; + + return memento; + } + + /// <summary> + /// Creates a MemoryInstanceMemento that represents a reference to the default instance + /// of a plugin type. + /// </summary> + /// <returns></returns> + public static MemoryInstanceMemento CreateDefaultInstanceMemento() + { + MemoryInstanceMemento memento = new MemoryInstanceMemento(); + memento._referenceKey = string.Empty; + memento._isReference = true; + + return memento; + } + + #endregion + + private NameValueCollection _properties = new NameValueCollection(); + private Hashtable _children = new Hashtable(); + private string _concreteKey; + private string _instanceKey; + private bool _isReference; + private string _referenceKey; + + + /// <summary> + /// Constructs a MemoryInstanceMemento without properties + /// </summary> + /// <param name="concreteKey">The concrete key of the plugin type</param> + /// <param name="instanceKey">The identifying instance key</param> + public MemoryInstanceMemento(string concreteKey, string instanceKey) + : this(concreteKey, instanceKey, new NameValueCollection()) + { + } + + + /// <summary> + /// Constructs a MemoryInstanceMemento with properties + /// </summary> + /// <param name="concreteKey">The concrete key of the plugin type</param> + /// <param name="instanceKey">The identifying instance key</param> + /// <param name="properties">NameValueCollection of instance properties</param> + public MemoryInstanceMemento(string concreteKey, string instanceKey, NameValueCollection properties) + { + _properties = properties; + _concreteKey = concreteKey; + _instanceKey = instanceKey; + } + + + public MemoryInstanceMemento() + { + } + + /// <summary> + /// Sets the value of the named property + /// </summary> + /// <param name="name"></param> + /// <param name="value"></param> + public void SetProperty(string name, string value) + { + string stringValue = value == string.Empty ? EMPTY_STRING : value; + _properties[name] = stringValue; + } + + public void SetTemplateKey(string templateName) + { + SetProperty(TEMPLATE_ATTRIBUTE, templateName); + } + + /// <summary> + /// Deletes a named property from the DefaultInstanceMemento + /// </summary> + /// <param name="Name"></param> + public void RemoveProperty(string Name) + { + _properties.Remove(Name); + } + + /// <summary> + /// Links a child InstanceMemento as a named property + /// </summary> + /// <param name="name"></param> + /// <param name="Memento"></param> + public void AddChild(string name, InstanceMemento Memento) + { + _children.Add(name, Memento); + } + + public void ReferenceChild(string name, string instanceKey) + { + InstanceMemento child = CreateReferencedInstanceMemento(instanceKey); + AddChild(name, child); + } + + + /// <summary> + /// Links an array of InstanceMemento's to a named array property + /// </summary> + /// <param name="name"></param> + /// <param name="childMementos"></param> + public void AddChildArray(string name, InstanceMemento[] childMementos) + { + _children.Add(name, childMementos); + } + + #region InstanceMemento Members + + /// <summary> + /// See <cref>InstanceMemento</cref> + /// </summary> + protected override string innerConcreteKey + { + get { return _concreteKey; } + } + + /// <summary> + /// See <cref>InstanceMemento</cref> + /// </summary> + protected override string innerInstanceKey + { + get { return _instanceKey; } + } + + + public void SetInstanceKey(string instanceKey) + { + _instanceKey = instanceKey; + } + + protected override string getPropertyValue(string Key) + { + return _properties[Key]; + } + + protected override InstanceMemento getChild(string Key) + { + return (InstanceMemento) _children[Key]; + } + + /// <summary> + /// See <cref>InstanceMemento</cref> + /// </summary> + public override bool IsReference + { + get { return _isReference; } + } + + /// <summary> + /// See <cref>InstanceMemento</cref> + /// </summary> + public override string ReferenceKey + { + get { return _referenceKey; } + } + + + protected bool hasProperty(string propertyName) + { + return _properties[propertyName] != null; + } + + + /// <summary> + /// See <cref>InstanceMemento</cref> + /// </summary> + public override InstanceMemento[] GetChildrenArray(string key) + { + return (InstanceMemento[]) _children[key]; + } + + #endregion + } +} \ No newline at end of file Copied: trunk/Source/StructureMap/Configuration/Mementos/PrototypeMemento.cs (from rev 53, trunk/Source/StructureMap/Configuration/DSL/PrototypeMemento.cs) =================================================================== --- trunk/Source/StructureMap/Configuration/Mementos/PrototypeMemento.cs (rev 0) +++ trunk/Source/StructureMap/Configuration/Mementos/PrototypeMemento.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -0,0 +1,63 @@ +using System; + +namespace StructureMap.Configuration.Mementos +{ + public class PrototypeMemento : InstanceMemento + { + private readonly string _instanceKey; + private ICloneable _prototype; + + public PrototypeMemento(string instanceKey, ICloneable prototype) + { + _instanceKey = instanceKey; + _prototype = prototype; + } + + + public ICloneable Prototype + { + get { return _prototype; } + set { _prototype = value; } + } + + protected override object buildInstance(IInstanceCreator creator) + { + return _prototype.Clone(); + } + + protected override string innerConcreteKey + { + get { return string.Empty; } + } + + protected override string innerInstanceKey + { + get { return _instanceKey; } + } + + protected override string getPropertyValue(string Key) + { + throw new NotImplementedException(); + } + + protected override InstanceMemento getChild(string Key) + { + throw new NotImplementedException(); + } + + public override InstanceMemento[] GetChildrenArray(string Key) + { + throw new NotImplementedException(); + } + + public override bool IsReference + { + get { return false; } + } + + public override string ReferenceKey + { + get { throw new NotImplementedException(); } + } + } +} \ No newline at end of file Copied: trunk/Source/StructureMap/Configuration/Mementos/UserControlMemento.cs (from rev 53, trunk/Source/StructureMap/Configuration/UserControlMemento.cs) =================================================================== --- trunk/Source/StructureMap/Configuration/Mementos/UserControlMemento.cs (rev 0) +++ trunk/Source/StructureMap/Configuration/Mementos/UserControlMemento.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -0,0 +1,68 @@ +using System; +using System.Web.UI; + +namespace StructureMap.Configuration.Mementos +{ + public class UserControlMemento : InstanceMemento + { + private readonly string _instanceKey; + private string _url; + + public UserControlMemento(string instanceKey, string url) + { + _instanceKey = instanceKey; + _url = url; + } + + + public UserControlMemento() + { + } + + public string Url + { + get { return _url; } + set { _url = value; } + } + + protected override object buildInstance(IInstanceCreator creator) + { + return new Page().LoadControl(_url); + } + + protected override string innerConcreteKey + { + get { return string.Empty; } + } + + protected override string innerInstanceKey + { + get { return _instanceKey; } + } + + protected override string getPropertyValue(string Key) + { + throw new NotImplementedException(); + } + + protected override InstanceMemento getChild(string Key) + { + throw new NotImplementedException(); + } + + public override InstanceMemento[] GetChildrenArray(string Key) + { + throw new NotImplementedException(); + } + + public override bool IsReference + { + get { return false; } + } + + public override string ReferenceKey + { + get { throw new NotImplementedException(); } + } + } +} \ No newline at end of file Modified: trunk/Source/StructureMap/ConstructorMemento.cs =================================================================== --- trunk/Source/StructureMap/ConstructorMemento.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/ConstructorMemento.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,4 +1,5 @@ using System; +using StructureMap.Configuration.Mementos; namespace StructureMap { Modified: trunk/Source/StructureMap/Graph/Plugin.cs =================================================================== --- trunk/Source/StructureMap/Graph/Plugin.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/Graph/Plugin.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,6 +1,7 @@ using System; using System.Collections; using System.Reflection; +using StructureMap.Configuration.Mementos; namespace StructureMap.Graph { Modified: trunk/Source/StructureMap/InstanceFactory.cs =================================================================== --- trunk/Source/StructureMap/InstanceFactory.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/InstanceFactory.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -3,7 +3,7 @@ using System.Collections.Generic; using System.Data; using System.Reflection; -using StructureMap.Configuration.DSL.Expressions; +using StructureMap.Configuration.Mementos; using StructureMap.Emitting; using StructureMap.Graph; using StructureMap.Interceptors; Modified: trunk/Source/StructureMap/InstanceManager.cs =================================================================== --- trunk/Source/StructureMap/InstanceManager.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/InstanceManager.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,7 +1,7 @@ using System; using System.Collections; using System.Collections.Generic; -using StructureMap.Configuration.DSL.Expressions; +using StructureMap.Configuration.Mementos; using StructureMap.Exceptions; using StructureMap.Graph; using StructureMap.Interceptors; Deleted: trunk/Source/StructureMap/MemoryInstanceMemento.cs =================================================================== --- trunk/Source/StructureMap/MemoryInstanceMemento.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/MemoryInstanceMemento.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,209 +0,0 @@ -using System.Collections; -using System.Collections.Specialized; -using StructureMap.Graph; - -namespace StructureMap -{ - public class GenericMemento<T> : MemoryInstanceMemento - { - public GenericMemento(string instanceKey) - : base(Plugin.CreateImplicitPlugin(typeof (T)).ConcreteKey, instanceKey) - { - } - } - - /// <summary> - /// An in-memory implementation of InstanceMemento. - /// </summary> - public class MemoryInstanceMemento : InstanceMemento - { - #region statics - - /// <summary> - /// Creates an instance of MemoryInstanceMemento that represents a reference to another - /// instance. - /// </summary> - /// <param name="referenceKey">The referenced instance key to another instance</param> - /// <returns></returns> - public static MemoryInstanceMemento CreateReferencedInstanceMemento(string referenceKey) - { - MemoryInstanceMemento memento = new MemoryInstanceMemento(); - memento._referenceKey = referenceKey; - memento._isReference = true; - - return memento; - } - - /// <summary> - /// Creates a MemoryInstanceMemento that represents a reference to the default instance - /// of a plugin type. - /// </summary> - /// <returns></returns> - public static MemoryInstanceMemento CreateDefaultInstanceMemento() - { - MemoryInstanceMemento memento = new MemoryInstanceMemento(); - memento._referenceKey = string.Empty; - memento._isReference = true; - - return memento; - } - - #endregion - - private NameValueCollection _properties = new NameValueCollection(); - private Hashtable _children = new Hashtable(); - private string _concreteKey; - private string _instanceKey; - private bool _isReference; - private string _referenceKey; - - - /// <summary> - /// Constructs a MemoryInstanceMemento without properties - /// </summary> - /// <param name="concreteKey">The concrete key of the plugin type</param> - /// <param name="instanceKey">The identifying instance key</param> - public MemoryInstanceMemento(string concreteKey, string instanceKey) - : this(concreteKey, instanceKey, new NameValueCollection()) - { - } - - - /// <summary> - /// Constructs a MemoryInstanceMemento with properties - /// </summary> - /// <param name="concreteKey">The concrete key of the plugin type</param> - /// <param name="instanceKey">The identifying instance key</param> - /// <param name="properties">NameValueCollection of instance properties</param> - public MemoryInstanceMemento(string concreteKey, string instanceKey, NameValueCollection properties) - { - _properties = properties; - _concreteKey = concreteKey; - _instanceKey = instanceKey; - } - - - public MemoryInstanceMemento() - { - } - - /// <summary> - /// Sets the value of the named property - /// </summary> - /// <param name="name"></param> - /// <param name="value"></param> - public void SetProperty(string name, string value) - { - string stringValue = value == string.Empty ? EMPTY_STRING : value; - _properties[name] = stringValue; - } - - public void SetTemplateKey(string templateName) - { - SetProperty(TEMPLATE_ATTRIBUTE, templateName); - } - - /// <summary> - /// Deletes a named property from the DefaultInstanceMemento - /// </summary> - /// <param name="Name"></param> - public void RemoveProperty(string Name) - { - _properties.Remove(Name); - } - - /// <summary> - /// Links a child InstanceMemento as a named property - /// </summary> - /// <param name="name"></param> - /// <param name="Memento"></param> - public void AddChild(string name, InstanceMemento Memento) - { - _children.Add(name, Memento); - } - - public void ReferenceChild(string name, string instanceKey) - { - InstanceMemento child = CreateReferencedInstanceMemento(instanceKey); - AddChild(name, child); - } - - - /// <summary> - /// Links an array of InstanceMemento's to a named array property - /// </summary> - /// <param name="name"></param> - /// <param name="childMementos"></param> - public void AddChildArray(string name, InstanceMemento[] childMementos) - { - _children.Add(name, childMementos); - } - - #region InstanceMemento Members - - /// <summary> - /// See <cref>InstanceMemento</cref> - /// </summary> - protected override string innerConcreteKey - { - get { return _concreteKey; } - } - - /// <summary> - /// See <cref>InstanceMemento</cref> - /// </summary> - protected override string innerInstanceKey - { - get { return _instanceKey; } - } - - - public void SetInstanceKey(string instanceKey) - { - _instanceKey = instanceKey; - } - - protected override string getPropertyValue(string Key) - { - return _properties[Key]; - } - - protected override InstanceMemento getChild(string Key) - { - return (InstanceMemento) _children[Key]; - } - - /// <summary> - /// See <cref>InstanceMemento</cref> - /// </summary> - public override bool IsReference - { - get { return _isReference; } - } - - /// <summary> - /// See <cref>InstanceMemento</cref> - /// </summary> - public override string ReferenceKey - { - get { return _referenceKey; } - } - - - protected bool hasProperty(string propertyName) - { - return _properties[propertyName] != null; - } - - - /// <summary> - /// See <cref>InstanceMemento</cref> - /// </summary> - public override InstanceMemento[] GetChildrenArray(string key) - { - return (InstanceMemento[]) _children[key]; - } - - #endregion - } -} \ No newline at end of file Modified: trunk/Source/StructureMap/ObjectFactory.cs =================================================================== --- trunk/Source/StructureMap/ObjectFactory.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap/ObjectFactory.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -3,7 +3,7 @@ using System.Collections.Generic; using System.Security.Permissions; using System.Text; -using StructureMap.Configuration.DSL.Expressions; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; namespace StructureMap Modified: trunk/Source/StructureMap.Testing/Client/Controllers/TreeBuilderTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Client/Controllers/TreeBuilderTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Client/Controllers/TreeBuilderTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -4,6 +4,7 @@ using StructureMap.Client.TreeNodes; using StructureMap.Client.Views; using StructureMap.Configuration; +using StructureMap.Configuration.Mementos; using StructureMap.Configuration.Tokens; using StructureMap.Configuration.Tokens.Properties; using StructureMap.Graph; Modified: trunk/Source/StructureMap.Testing/Configuration/DSL/ChildInstanceExpressionTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/DSL/ChildInstanceExpressionTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/DSL/ChildInstanceExpressionTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,6 +1,7 @@ using NUnit.Framework; using StructureMap.Configuration.DSL; using StructureMap.Configuration.DSL.Expressions; +using StructureMap.Configuration.Mementos; using StructureMap.Testing.Widget4; namespace StructureMap.Testing.Configuration.DSL Modified: trunk/Source/StructureMap.Testing/Configuration/DSL/DeepInstanceTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/DSL/DeepInstanceTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/DSL/DeepInstanceTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,5 +1,6 @@ using NUnit.Framework; using StructureMap.Configuration.DSL; +using StructureMap.Configuration.DSL.Expressions; using StructureMap.Testing.Widget; namespace StructureMap.Testing.Configuration.DSL Modified: trunk/Source/StructureMap.Testing/Configuration/DSL/InstanceExpressionTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/DSL/InstanceExpressionTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/DSL/InstanceExpressionTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,5 +1,6 @@ using NUnit.Framework; using StructureMap.Configuration.DSL; +using StructureMap.Configuration.DSL.Expressions; using StructureMap.Graph; using StructureMap.Testing.Widget; Modified: trunk/Source/StructureMap.Testing/Configuration/DSL/LiteralExpressionTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/DSL/LiteralExpressionTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/DSL/LiteralExpressionTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,6 +1,7 @@ using NUnit.Framework; using StructureMap.Configuration.DSL; using StructureMap.Configuration.DSL.Expressions; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; using StructureMap.Testing.Widget; Modified: trunk/Source/StructureMap.Testing/Configuration/DSL/ProfileExpressionTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/DSL/ProfileExpressionTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/DSL/ProfileExpressionTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,5 +1,6 @@ using NUnit.Framework; using StructureMap.Configuration.DSL; +using StructureMap.Configuration.DSL.Expressions; using StructureMap.Graph; using StructureMap.Testing.Widget; Modified: trunk/Source/StructureMap.Testing/Configuration/DSL/RegistryTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/DSL/RegistryTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/DSL/RegistryTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,8 +1,8 @@ using System; using NUnit.Framework; using Rhino.Mocks; -using StructureMap.Configuration; using StructureMap.Configuration.DSL; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; using StructureMap.Testing.Widget3; Modified: trunk/Source/StructureMap.Testing/Configuration/DSL/UserControlExpressionTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/DSL/UserControlExpressionTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/DSL/UserControlExpressionTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,6 +1,6 @@ using NUnit.Framework; -using StructureMap.Configuration; using StructureMap.Configuration.DSL.Expressions; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; namespace StructureMap.Testing.Configuration.DSL Modified: trunk/Source/StructureMap.Testing/Configuration/DiagnosticGraphBuilderTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/DiagnosticGraphBuilderTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/DiagnosticGraphBuilderTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -4,6 +4,7 @@ using StructureMap.Attributes; using StructureMap.Configuration; using StructureMap.Configuration.DSL; +using StructureMap.Configuration.Mementos; using StructureMap.Configuration.Tokens; using StructureMap.Graph; using StructureMap.Testing.Configuration.Tokens; Modified: trunk/Source/StructureMap.Testing/Configuration/InlineInstanceDefinitionInProfileAndMachineNodesTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/InlineInstanceDefinitionInProfileAndMachineNodesTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/InlineInstanceDefinitionInProfileAndMachineNodesTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,5 +1,6 @@ using System.Diagnostics; using NUnit.Framework; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; using StructureMap.Testing.TestData; using StructureMap.Testing.Widget; Modified: trunk/Source/StructureMap.Testing/Configuration/Tokens/FamilyTokenTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/Tokens/FamilyTokenTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/Tokens/FamilyTokenTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -2,6 +2,7 @@ using NUnit.Framework; using StructureMap.Attributes; using StructureMap.Configuration; +using StructureMap.Configuration.Mementos; using StructureMap.Configuration.Tokens; using StructureMap.Graph; using StructureMap.Source; Modified: trunk/Source/StructureMap.Testing/Configuration/Tokens/InstanceTokenTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/Tokens/InstanceTokenTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/Tokens/InstanceTokenTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -2,6 +2,7 @@ using NMock; using NUnit.Framework; using StructureMap.Configuration; +using StructureMap.Configuration.Mementos; using StructureMap.Configuration.Tokens; using StructureMap.Configuration.Tokens.Properties; using StructureMap.Graph; Modified: trunk/Source/StructureMap.Testing/Configuration/Tokens/MockInterceptor.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/Tokens/MockInterceptor.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/Tokens/MockInterceptor.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,4 +1,5 @@ using System; +using StructureMap.Configuration.Mementos; using StructureMap.Interceptors; namespace StructureMap.Testing.Configuration.Tokens Modified: trunk/Source/StructureMap.Testing/Configuration/Tokens/MockMementoSource.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/Tokens/MockMementoSource.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/Tokens/MockMementoSource.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,4 +1,5 @@ using System; +using StructureMap.Configuration.Mementos; namespace StructureMap.Testing.Configuration.Tokens { Modified: trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/ChildArrayPropertyTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/ChildArrayPropertyTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/ChildArrayPropertyTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -2,6 +2,7 @@ using NMock; using NUnit.Framework; using StructureMap.Configuration; +using StructureMap.Configuration.Mementos; using StructureMap.Configuration.Tokens; using StructureMap.Configuration.Tokens.Properties; using StructureMap.Testing.Widget3; Modified: trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/ChildPropertyTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/ChildPropertyTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/ChildPropertyTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,6 +1,7 @@ using NMock; using NUnit.Framework; using StructureMap.Configuration; +using StructureMap.Configuration.Mementos; using StructureMap.Configuration.Tokens; using StructureMap.Configuration.Tokens.Properties; using StructureMap.Testing.Widget3; Modified: trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/EnumerationPropertyTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/EnumerationPropertyTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/EnumerationPropertyTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -2,6 +2,7 @@ using NUnit.Framework; using StructureMap.Attributes; using StructureMap.Configuration; +using StructureMap.Configuration.Mementos; using StructureMap.Configuration.Tokens; using StructureMap.Configuration.Tokens.Properties; Modified: trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/PrimitivePropertyTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/PrimitivePropertyTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/Tokens/Properties/PrimitivePropertyTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,6 +1,7 @@ using NMock; using NUnit.Framework; using StructureMap.Configuration; +using StructureMap.Configuration.Mementos; using StructureMap.Configuration.Tokens; using StructureMap.Configuration.Tokens.Properties; Modified: trunk/Source/StructureMap.Testing/Configuration/Tokens/PropertyDefinitionTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Configuration/Tokens/PropertyDefinitionTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Configuration/Tokens/PropertyDefinitionTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -4,6 +4,7 @@ using System.Xml; using NUnit.Framework; using StructureMap.Configuration; +using StructureMap.Configuration.Mementos; using StructureMap.Configuration.Tokens; using StructureMap.Configuration.Tokens.Properties; Modified: trunk/Source/StructureMap.Testing/Container/DynamicInjectionTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Container/DynamicInjectionTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Container/DynamicInjectionTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -3,7 +3,7 @@ using System.Collections.Generic; using NUnit.Framework; using Rhino.Mocks; -using StructureMap.Configuration.DSL.Expressions; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; using StructureMap.Interceptors; using StructureMap.Testing.Widget3; Modified: trunk/Source/StructureMap.Testing/Container/EnumerationTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Container/EnumerationTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Container/EnumerationTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,4 +1,5 @@ using NUnit.Framework; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; using StructureMap.Source; using StructureMap.Testing.Widget2; Modified: trunk/Source/StructureMap.Testing/Container/InstanceFactoryTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Container/InstanceFactoryTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Container/InstanceFactoryTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,4 +1,5 @@ using NUnit.Framework; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; using StructureMap.Interceptors; using StructureMap.Source; Modified: trunk/Source/StructureMap.Testing/Container/InstanceManagerTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Container/InstanceManagerTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Container/InstanceManagerTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,5 +1,6 @@ using System; using NUnit.Framework; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; using StructureMap.Interceptors; using StructureMap.Source; Modified: trunk/Source/StructureMap.Testing/Container/PluginGraphBuilderTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Container/PluginGraphBuilderTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Container/PluginGraphBuilderTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,6 +1,7 @@ using System.Xml; using NUnit.Framework; using StructureMap.Configuration; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; using StructureMap.Interceptors; using StructureMap.Source; Modified: trunk/Source/StructureMap.Testing/Container/Source/XmlTemplaterTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/Container/Source/XmlTemplaterTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/Container/Source/XmlTemplaterTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,6 +1,7 @@ using System.Collections; using System.Xml; using NUnit.Framework; +using StructureMap.Configuration.Mementos; using StructureMap.Source; using StructureMap.Testing.TestData; using StructureMap.Testing.XmlWriting; Modified: trunk/Source/StructureMap.Testing/GenericsAcceptanceTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/GenericsAcceptanceTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/GenericsAcceptanceTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -3,6 +3,7 @@ using System.Reflection; using NUnit.Framework; using StructureMap.Configuration; +using StructureMap.Configuration.Mementos; using StructureMap.Configuration.Tokens; using StructureMap.Graph; using StructureMap.Testing.GenericWidgets; Modified: trunk/Source/StructureMap.Testing/ImplicitPluginFromPluggedTypeAttributeTester.cs =================================================================== --- trunk/Source/StructureMap.Testing/ImplicitPluginFromPluggedTypeAttributeTester.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing/ImplicitPluginFromPluggedTypeAttributeTester.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -4,6 +4,7 @@ using StructureMap.Attributes; using StructureMap.Configuration; using StructureMap.Configuration.DSL; +using StructureMap.Configuration.Mementos; using StructureMap.Graph; using StructureMap.Testing.TestData; using StructureMap.Testing.Widget; Modified: trunk/Source/StructureMap.Testing.Widget/Rule.cs =================================================================== --- trunk/Source/StructureMap.Testing.Widget/Rule.cs 2008-01-14 04:18:06 UTC (rev 54) +++ trunk/Source/StructureMap.Testing.Widget/Rule.cs 2008-01-14 04:24:37 UTC (rev 55) @@ -1,4 +1,5 @@ using System; +using StructureMap.Configuration.Mementos; namespace ... [truncated message content] |