|
From: <jer...@us...> - 2009-12-28 05:14:51
|
Revision: 312
http://structuremap.svn.sourceforge.net/structuremap/?rev=312&view=rev
Author: jeremydmiller
Date: 2009-12-28 05:14:41 +0000 (Mon, 28 Dec 2009)
Log Message:
-----------
quickie code cleanup
Modified Paths:
--------------
trunk/Source/StructureMap/Configuration/ProfileBuilder.cs
trunk/Source/StructureMap/Container.cs
trunk/Source/StructureMap/Graph/FirstInterfaceConvention.cs
trunk/Source/StructureMap/Graph/PluginFamily.cs
trunk/Source/StructureMap/PipelineGraph.cs
trunk/Source/StructureMap/Query/Model.cs
trunk/Source/StructureMap.Testing/Configuration/DSL/RegistryTester.cs
trunk/Source/StructureMap.Testing/Configuration/InlineInstanceDefinitionInProfileAndMachineNodesTester.cs
trunk/Source/StructureMap.Testing/Configuration/ProfileBuilderTester.cs
trunk/Source/StructureMap.Testing/Graph/FirstInterfaceConventionTester.cs
trunk/Source/StructureMap.Testing/Graph/PluginFamilyTester.cs
trunk/Source/StructureMap.Testing/SpecificationExtensions.cs
Modified: trunk/Source/StructureMap/Configuration/ProfileBuilder.cs
===================================================================
--- trunk/Source/StructureMap/Configuration/ProfileBuilder.cs 2009-12-28 05:04:44 UTC (rev 311)
+++ trunk/Source/StructureMap/Configuration/ProfileBuilder.cs 2009-12-28 05:14:41 UTC (rev 312)
@@ -1,4 +1,3 @@
-using System;
using StructureMap.Graph;
using StructureMap.Pipeline;
@@ -39,6 +38,5 @@
}
#endregion
-
}
}
\ No newline at end of file
Modified: trunk/Source/StructureMap/Container.cs
===================================================================
--- trunk/Source/StructureMap/Container.cs 2009-12-28 05:04:44 UTC (rev 311)
+++ trunk/Source/StructureMap/Container.cs 2009-12-28 05:14:41 UTC (rev 312)
@@ -64,13 +64,7 @@
/// <summary>
/// Provides queryable access to the configured PluginType's and Instances of this Container
/// </summary>
- public IModel Model
- {
- get
- {
- return new Model(_pipelineGraph, this);
- }
- }
+ public IModel Model { get { return new Model(_pipelineGraph, this); } }
/// <summary>
/// Creates or finds the named instance of T
Modified: trunk/Source/StructureMap/Graph/FirstInterfaceConvention.cs
===================================================================
--- trunk/Source/StructureMap/Graph/FirstInterfaceConvention.cs 2009-12-28 05:04:44 UTC (rev 311)
+++ trunk/Source/StructureMap/Graph/FirstInterfaceConvention.cs 2009-12-28 05:14:41 UTC (rev 312)
@@ -1,8 +1,8 @@
using System;
using System.Diagnostics;
+using System.Linq;
using StructureMap.Configuration.DSL;
using StructureMap.TypeRules;
-using System.Linq;
namespace StructureMap.Graph
{
@@ -11,9 +11,9 @@
public void Process(Type type, Registry registry)
{
if (!type.IsConcrete() || !type.CanBeCreated()) return;
-
-
- var interfaceType = type.AllInterfaces().FirstOrDefault();
+
+
+ Type interfaceType = type.AllInterfaces().FirstOrDefault();
if (interfaceType != null)
{
Debug.WriteLine("Plugging {0} into {1}".ToFormat(type.Name, interfaceType.Name));
Modified: trunk/Source/StructureMap/Graph/PluginFamily.cs
===================================================================
--- trunk/Source/StructureMap/Graph/PluginFamily.cs 2009-12-28 05:04:44 UTC (rev 311)
+++ trunk/Source/StructureMap/Graph/PluginFamily.cs 2009-12-28 05:14:41 UTC (rev 312)
@@ -2,7 +2,6 @@
using System.Collections.Generic;
using System.Linq;
using StructureMap.Pipeline;
-using StructureMap.Query;
using StructureMap.TypeRules;
using StructureMap.Util;
@@ -328,6 +327,22 @@
_instances.WithValue(name, action);
}
+ public void RemoveInstance(Instance instance)
+ {
+ _instances.Remove(instance.Name);
+ if (_defaultKey == instance.Name)
+ {
+ _defaultKey = null;
+ }
+ }
+
+ public void RemoveAll()
+ {
+ _instances.Clear();
+ _mementoList.Clear();
+ _defaultKey = null;
+ }
+
#region properties
public bool IsGenericTemplate { get { return _pluginType.IsGenericTypeDefinition || _pluginType.ContainsGenericParameters; } }
@@ -348,29 +363,8 @@
/// The InstanceKey of the default instance of the PluginFamily
/// </summary>
[Obsolete]
- public string DefaultInstanceKey
- {
- get { return _defaultKey; }
- set { _defaultKey = value ?? string.Empty; }
- }
+ public string DefaultInstanceKey { get { return _defaultKey; } set { _defaultKey = value ?? string.Empty; } }
#endregion
-
- public void RemoveInstance(Instance instance)
- {
- _instances.Remove(instance.Name);
- if (_defaultKey == instance.Name)
- {
- _defaultKey = null;
- }
-
- }
-
- public void RemoveAll()
- {
- _instances.Clear();
- _mementoList.Clear();
- _defaultKey = null;
- }
}
}
\ No newline at end of file
Modified: trunk/Source/StructureMap/PipelineGraph.cs
===================================================================
--- trunk/Source/StructureMap/PipelineGraph.cs 2009-12-28 05:04:44 UTC (rev 311)
+++ trunk/Source/StructureMap/PipelineGraph.cs 2009-12-28 05:14:41 UTC (rev 312)
@@ -188,7 +188,7 @@
public void EjectAllInstancesOf<T>()
{
- EjectAllInstancesOf(typeof(T));
+ EjectAllInstancesOf(typeof (T));
}
public void EjectAllInstancesOf(Type pluginType)
@@ -250,8 +250,5 @@
ForType(pluginType).RemoveInstance(instance);
_profileManager.RemoveInstance(pluginType, instance);
}
-
-
-
}
}
\ No newline at end of file
Modified: trunk/Source/StructureMap/Query/Model.cs
===================================================================
--- trunk/Source/StructureMap/Query/Model.cs 2009-12-28 05:04:44 UTC (rev 311)
+++ trunk/Source/StructureMap/Query/Model.cs 2009-12-28 05:14:41 UTC (rev 312)
@@ -7,8 +7,8 @@
{
public class Model : IModel
{
- private PipelineGraph _graph;
- private IContainer _container;
+ private readonly IContainer _container;
+ private readonly PipelineGraph _graph;
internal Model(PipelineGraph graph, IContainer container)
{
@@ -18,6 +18,8 @@
#region IModel Members
+ private IEnumerable<IPluginTypeConfiguration> pluginTypes { get { return _graph.GetPluginTypes(_container); } }
+
public bool HasDefaultImplementationFor(Type pluginType)
{
return findForFamily(pluginType, f => f.Default != null);
@@ -38,14 +40,6 @@
return findForFamily(pluginType, f => f.Default == null ? null : f.Default.ConcreteType);
}
- private IEnumerable<IPluginTypeConfiguration> pluginTypes
- {
- get
- {
- return _graph.GetPluginTypes(_container);
- }
- }
-
public IEnumerable<IPluginTypeConfiguration> PluginTypes { get { return pluginTypes; } }
/// <summary>
@@ -78,10 +72,7 @@
EjectAndRemovePluginTypes(filter);
// second pass to hit instances
- pluginTypes.Each(x =>
- {
- x.EjectAndRemove(i => filter(i.ConcreteType));
- });
+ pluginTypes.Each(x => { x.EjectAndRemove(i => filter(i.ConcreteType)); });
}
/// <summary>
Modified: trunk/Source/StructureMap.Testing/Configuration/DSL/RegistryTester.cs
===================================================================
--- trunk/Source/StructureMap.Testing/Configuration/DSL/RegistryTester.cs 2009-12-28 05:04:44 UTC (rev 311)
+++ trunk/Source/StructureMap.Testing/Configuration/DSL/RegistryTester.cs 2009-12-28 05:14:41 UTC (rev 312)
@@ -23,7 +23,8 @@
{
public RedGreenRegistry()
{
- InstanceOf<IWidget>().Is.OfConcreteType<ColorWidget>().WithCtorArg("color").EqualTo("Red").WithName("Red");
+ InstanceOf<IWidget>().Is.OfConcreteType<ColorWidget>().WithCtorArg("color").EqualTo("Red").WithName(
+ "Red");
InstanceOf<IWidget>().Is.OfConcreteType<ColorWidget>().WithCtorArg("color").EqualTo("Green").WithName(
"Green");
}
@@ -35,7 +36,8 @@
{
InstanceOf<IWidget>().Is.OfConcreteType<ColorWidget>().WithCtorArg("color").EqualTo("Yellow").WithName(
"Yellow");
- InstanceOf<IWidget>().Is.OfConcreteType<ColorWidget>().WithProperty("color").EqualTo("Blue").WithName("Blue");
+ InstanceOf<IWidget>().Is.OfConcreteType<ColorWidget>().WithProperty("color").EqualTo("Blue").WithName(
+ "Blue");
}
}
@@ -47,22 +49,7 @@
}
}
- [Test]
- public void include_a_registry()
- {
- var registry = new Registry();
- registry.IncludeRegistry<YellowBlueRegistry>();
- registry.IncludeRegistry<RedGreenRegistry>();
- registry.IncludeRegistry<PurpleRegistry>();
- var container = new Container(registry);
-
- container.GetInstance<IWidget>().ShouldBeOfType<AWidget>();
-
- container.GetAllInstances<IWidget>().Count.ShouldEqual(5);
- }
-
-
[Test]
public void Can_add_an_instance_for_concrete_class_with_no_constructors()
{
@@ -91,6 +78,21 @@
}
[Test]
+ public void include_a_registry()
+ {
+ var registry = new Registry();
+ registry.IncludeRegistry<YellowBlueRegistry>();
+ registry.IncludeRegistry<RedGreenRegistry>();
+ registry.IncludeRegistry<PurpleRegistry>();
+
+ var container = new Container(registry);
+
+ container.GetInstance<IWidget>().ShouldBeOfType<AWidget>();
+
+ container.GetAllInstances<IWidget>().Count.ShouldEqual(5);
+ }
+
+ [Test]
public void Latch_on_a_PluginGraph()
{
var registry2 = new TestRegistry2();
Modified: trunk/Source/StructureMap.Testing/Configuration/InlineInstanceDefinitionInProfileAndMachineNodesTester.cs
===================================================================
--- trunk/Source/StructureMap.Testing/Configuration/InlineInstanceDefinitionInProfileAndMachineNodesTester.cs 2009-12-28 05:04:44 UTC (rev 311)
+++ trunk/Source/StructureMap.Testing/Configuration/InlineInstanceDefinitionInProfileAndMachineNodesTester.cs 2009-12-28 05:14:41 UTC (rev 312)
@@ -1,5 +1,4 @@
using NUnit.Framework;
-using StructureMap.Configuration;
using StructureMap.Graph;
using StructureMap.Testing.TestData;
using StructureMap.Testing.Widget;
Modified: trunk/Source/StructureMap.Testing/Configuration/ProfileBuilderTester.cs
===================================================================
--- trunk/Source/StructureMap.Testing/Configuration/ProfileBuilderTester.cs 2009-12-28 05:04:44 UTC (rev 311)
+++ trunk/Source/StructureMap.Testing/Configuration/ProfileBuilderTester.cs 2009-12-28 05:14:41 UTC (rev 312)
@@ -74,6 +74,5 @@
Assert.AreEqual(280, ex.ErrorCode);
}
}
-
}
}
\ No newline at end of file
Modified: trunk/Source/StructureMap.Testing/Graph/FirstInterfaceConventionTester.cs
===================================================================
--- trunk/Source/StructureMap.Testing/Graph/FirstInterfaceConventionTester.cs 2009-12-28 05:04:44 UTC (rev 311)
+++ trunk/Source/StructureMap.Testing/Graph/FirstInterfaceConventionTester.cs 2009-12-28 05:14:41 UTC (rev 312)
@@ -1,7 +1,5 @@
-using System.Diagnostics;
+using System.Linq;
using NUnit.Framework;
-using System.Linq;
-using StructureMap.Testing.Widget;
using StructureMap.Testing.Widget3;
using StructureMap.TypeRules;
@@ -10,7 +8,7 @@
[TestFixture]
public class FirstInterfaceConventionTester
{
- private Container container;
+ #region Setup/Teardown
[SetUp]
public void SetUp()
@@ -22,31 +20,36 @@
o.TheCallingAssembly();
o.RegisterConcreteTypesAgainstTheFirstInterface();
- o.Exclude(t => t.CanBeCastTo(typeof(IGateway)));
+ o.Exclude(t => t.CanBeCastTo(typeof (IGateway)));
});
});
}
- [Test]
- public void simple_case()
+ #endregion
+
+ private Container container;
+
+
+ public interface I1
{
- container.Model.For<I1>().Instances.Select(x => x.ConcreteType).ShouldHaveTheSameElementsAs(typeof(C1), typeof(C2));
- container.Model.For<I2>().Instances.Select(x => x.ConcreteType).Any().ShouldBeFalse();
}
- [Test]
- public void do_not_register_type_if_there_are_primitive_arguments()
+ public interface I2
{
- container.Model.HasImplementationsFor<I3>().ShouldBeFalse();
}
+ public interface I3
+ {
+ }
- public interface I1 { }
- public interface I2 { }
- public interface I3 { }
+ public class C1 : I1
+ {
+ }
- public class C1 : I1 { }
- public class C2 : C1, I2 { }
+ public class C2 : C1, I2
+ {
+ }
+
public class C3 : C2, I3
{
public C3(string name)
@@ -56,24 +59,51 @@
public class C4
{
-
}
public class C5 : I1
{
- private C5(){}
+ private C5()
+ {
+ }
}
- public interface I1<T> { }
- public interface I2<T> { }
- public interface I3<T> { }
+ public interface I1<T>
+ {
+ }
- public class C1<T> : I1<T> { }
- public class C2<T> : C1<T>, I2<T> { }
- public class C3<T> : C2<T>, I3<T> { }
+ public interface I2<T>
+ {
+ }
- }
+ public interface I3<T>
+ {
+ }
+ public class C1<T> : I1<T>
+ {
+ }
-}
+ public class C2<T> : C1<T>, I2<T>
+ {
+ }
+ public class C3<T> : C2<T>, I3<T>
+ {
+ }
+
+ [Test]
+ public void do_not_register_type_if_there_are_primitive_arguments()
+ {
+ container.Model.HasImplementationsFor<I3>().ShouldBeFalse();
+ }
+
+ [Test]
+ public void simple_case()
+ {
+ container.Model.For<I1>().Instances.Select(x => x.ConcreteType).ShouldHaveTheSameElementsAs(typeof (C1),
+ typeof (C2));
+ container.Model.For<I2>().Instances.Select(x => x.ConcreteType).Any().ShouldBeFalse();
+ }
+ }
+}
\ No newline at end of file
Modified: trunk/Source/StructureMap.Testing/Graph/PluginFamilyTester.cs
===================================================================
--- trunk/Source/StructureMap.Testing/Graph/PluginFamilyTester.cs 2009-12-28 05:04:44 UTC (rev 311)
+++ trunk/Source/StructureMap.Testing/Graph/PluginFamilyTester.cs 2009-12-28 05:14:41 UTC (rev 312)
@@ -196,33 +196,33 @@
}
[Test]
- public void set_default()
+ public void remove_all_clears_the_defaul_and_removes_all_plugins_instances()
{
var family = new PluginFamily(typeof (IServiceProvider));
var instance = new SmartInstance<DataSet>();
family.SetDefault(instance);
- family.GetDefaultInstance().ShouldBeTheSameAs(instance);
- family.DefaultInstanceKey.ShouldEqual(instance.Name);
+ family.AddInstance(new NullInstance());
+ family.AddType(typeof (DataSet));
+
+ family.RemoveAll();
+
+ family.DefaultInstanceKey.ShouldBeNull();
+
+ family.InstanceCount.ShouldEqual(0);
}
[Test]
- public void remove_all_clears_the_defaul_and_removes_all_plugins_instances()
+ public void set_default()
{
- var family = new PluginFamily(typeof(IServiceProvider));
+ var family = new PluginFamily(typeof (IServiceProvider));
var instance = new SmartInstance<DataSet>();
family.SetDefault(instance);
- family.AddInstance(new NullInstance());
- family.AddType(typeof(DataSet));
-
- family.RemoveAll();
-
- family.DefaultInstanceKey.ShouldBeNull();
-
- family.InstanceCount.ShouldEqual(0);
+ family.GetDefaultInstance().ShouldBeTheSameAs(instance);
+ family.DefaultInstanceKey.ShouldEqual(instance.Name);
}
[Test]
Modified: trunk/Source/StructureMap.Testing/SpecificationExtensions.cs
===================================================================
--- trunk/Source/StructureMap.Testing/SpecificationExtensions.cs 2009-12-28 05:04:44 UTC (rev 311)
+++ trunk/Source/StructureMap.Testing/SpecificationExtensions.cs 2009-12-28 05:14:41 UTC (rev 312)
@@ -44,7 +44,7 @@
catch (Exception)
{
Debug.WriteLine("ACTUAL:");
- foreach (var o in actual)
+ foreach (object o in actual)
{
Debug.WriteLine(o);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|