Commit ff8479c

mokhan <mokhan@ce5e1baf-6525-42e4-a1b2-857ea38da20a>
2009-04-18 22:43:20
split some infrastructure stuff to gorilla.commons.infrastructure project.
git-svn-id: https://svn.xp-dev.com/svn/mokhan-mo.money@170 ce5e1baf-6525-42e4-a1b2-857ea38da20a
1 parent a1b7ef1
trunk/product/MoMoney.Infrastructure/Cloning/BinarySerializer.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Cloning/BinarySerializer.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Cloning/BinarySerializerSpecs.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Cloning/BinarySerializerSpecs.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Cloning/ISerializer.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Cloning/ISerializer.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Cloning/Prototype.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Cloning/Prototype.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Cloning/Serializer.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Cloning/Serializer.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Container/DependencyResolutionException.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Container/DependencyResolutionException.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Container/IDependencyRegistry.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Container/IDependencyRegistry.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Container/Resolve.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Container/Resolve.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Container/ResolveSpecs.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Container/ResolveSpecs.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Debugging/Launch.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Debugging/Launch.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Eventing/EventAggregator.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Eventing/EventAggregator.cs
@@ -3,7 +3,6 @@ using System.Collections.Generic;
 using System.Linq.Expressions;
 using System.Threading;
 using Gorilla.Commons.Utility.Extensions;
-using MoMoney.Infrastructure.Extensions;
 
 namespace MoMoney.Infrastructure.eventing
 {
@@ -41,13 +40,11 @@ namespace MoMoney.Infrastructure.eventing
 
         public void publish<Event>(Event the_event_to_broadcast) where Event : IEvent
         {
-            this.log().debug("publishing: {0}", the_event_to_broadcast);
             process(() => subscribers.call_on_each<IEventSubscriber<Event>>(x => x.notify(the_event_to_broadcast)));
         }
 
         public void publish<T>(Expression<Action<T>> call) where T : class
         {
-            this.log().debug("publishing: {0}", call);
             process(() => subscribers.each(x => x.call_on(call.Compile())));
         }
 
trunk/product/MoMoney.Infrastructure/Eventing/EventAggregatorSpecs.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Eventing/EventAggregatorSpecs.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Eventing/IEvent.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Eventing/IEvent.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Eventing/IEventSubscriber.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Eventing/IEventSubscriber.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Logging/ConsoleLogging/ConsoleLogger.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Logging/Console/ConsoleLogger.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Logging/ILogFactory.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Logging/ILogFactory.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Logging/ILoggable.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Logging/ILoggable.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Logging/ILogger.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Logging/ILogger.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Logging/Log.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Logging/Log.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Extensions/logging_extensions.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Logging/logging_extensions.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Logging/LogSpecs.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Logging/LogSpecs.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Reflection/ApplicationAssembly.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Reflection/ApplicationAssembly.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Reflection/IAssembly.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Reflection/IAssembly.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Registries/DefaultRegistry.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Registries/DefaultRegistry.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Registries/DefaultRegistrySpecs.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Registries/DefaultRegistrySpecs.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/AsynchronousCommandProcessor.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/AsynchronousCommandProcessor.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/BackgroundThread.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/BackgroundThread.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/BackgroundThreadFactory.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/BackgroundThreadFactory.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/BackgroundThreadFactorySpecs.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/BackgroundThreadFactorySpecs.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/BackgroundThreadSpecs.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/BackgroundThreadSpecs.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/CommandProcessor.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/CommandProcessor.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/CommandProcessorSpecs.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/CommandProcessorSpecs.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/ICommandProcessor.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/ICommandProcessor.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/IntervalTimer.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/IntervalTimer.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/IntervalTimerSpecs.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/IntervalTimerSpecs.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/ISynchronizationContext.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/ISynchronizationContext.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/ITimerClient.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/ITimerClient.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/SynchronizationContextFactory.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/SynchronizationContextFactory.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/SynchronizedCommand.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/SynchronizedCommand.cs
@@ -1,7 +1,6 @@
 using System;
 using System.Threading;
 using Gorilla.Commons.Utility.Core;
-using MoMoney.Infrastructure.Extensions;
 
 namespace MoMoney.Infrastructure.Threading
 {
@@ -20,11 +19,7 @@ namespace MoMoney.Infrastructure.Threading
 
         public void run(Action item)
         {
-            context.Post(x =>
-                             {
-                                 this.log().debug("posting action");
-                                 item();
-                             }, new object());
+            context.Post(x => item(), new object());
         }
 
         public void run(ICommand item)
trunk/product/MoMoney.Infrastructure/Threading/SynchronizedContext.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/SynchronizedContext.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/TimerFactory.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/TimerFactory.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/TimerFactorySpecs.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/TimerFactorySpecs.cs
File renamed without changes
trunk/product/MoMoney.Infrastructure/Threading/WorkerThread.cs โ†’ trunk/product/Gorilla.Commons.Infrastructure/Threading/WorkerThread.cs
File renamed without changes
trunk/product/Gorilla.Commons.Infrastructure/Gorilla.Commons.Infrastructure.csproj
@@ -0,0 +1,132 @@
+๏ปฟ<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>9.0.30729</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{AA5EEED9-4531-45F7-AFCD-AD9717D2E405}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>Gorilla.Commons.Infrastructure</RootNamespace>
+    <AssemblyName>Gorilla.Commons.Infrastructure</AssemblyName>
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="bdddoc, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\build\lib\test\bdd.doc\bdddoc.dll</HintPath>
+    </Reference>
+    <Reference Include="developwithpassion.bdd, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\build\lib\test\developwithpassion\developwithpassion.bdd.dll</HintPath>
+    </Reference>
+    <Reference Include="MbUnit.Framework, Version=2.4.2.175, Culture=neutral, PublicKeyToken=5e72ecd30bc408d5">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\build\lib\test\mbunit\MbUnit.Framework.dll</HintPath>
+    </Reference>
+    <Reference Include="Rhino.Mocks, Version=3.5.0.1337, Culture=neutral, PublicKeyToken=0b3305902db7183f, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\build\lib\test\rhino.mocks\Rhino.Mocks.dll</HintPath>
+    </Reference>
+    <Reference Include="System" />
+    <Reference Include="System.Core">
+      <RequiredTargetFramework>3.5</RequiredTargetFramework>
+    </Reference>
+    <Reference Include="System.Xml.Linq">
+      <RequiredTargetFramework>3.5</RequiredTargetFramework>
+    </Reference>
+    <Reference Include="System.Data.DataSetExtensions">
+      <RequiredTargetFramework>3.5</RequiredTargetFramework>
+    </Reference>
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Cloning\BinarySerializer.cs" />
+    <Compile Include="Cloning\BinarySerializerSpecs.cs" />
+    <Compile Include="Cloning\ISerializer.cs" />
+    <Compile Include="Cloning\Prototype.cs" />
+    <Compile Include="Cloning\Serializer.cs" />
+    <Compile Include="Container\DependencyResolutionException.cs" />
+    <Compile Include="Container\IDependencyRegistry.cs" />
+    <Compile Include="Container\Resolve.cs" />
+    <Compile Include="Container\ResolveSpecs.cs" />
+    <Compile Include="Debugging\Launch.cs" />
+    <Compile Include="Eventing\EventAggregator.cs" />
+    <Compile Include="Eventing\EventAggregatorSpecs.cs" />
+    <Compile Include="Eventing\IEvent.cs" />
+    <Compile Include="Eventing\IEventSubscriber.cs" />
+    <Compile Include="Logging\Console\ConsoleLogger.cs" />
+    <Compile Include="Logging\ILogFactory.cs" />
+    <Compile Include="Logging\ILoggable.cs" />
+    <Compile Include="Logging\ILogger.cs" />
+    <Compile Include="Logging\Log.cs" />
+    <Compile Include="Logging\logging_extensions.cs" />
+    <Compile Include="Logging\LogSpecs.cs" />
+    <Compile Include="Reflection\ApplicationAssembly.cs" />
+    <Compile Include="Reflection\IAssembly.cs" />
+    <Compile Include="Registries\DefaultRegistry.cs" />
+    <Compile Include="Registries\DefaultRegistrySpecs.cs" />
+    <Compile Include="Threading\AsynchronousCommandProcessor.cs" />
+    <Compile Include="Threading\BackgroundThread.cs" />
+    <Compile Include="Threading\BackgroundThreadFactory.cs" />
+    <Compile Include="Threading\BackgroundThreadFactorySpecs.cs" />
+    <Compile Include="Threading\BackgroundThreadSpecs.cs" />
+    <Compile Include="Threading\CommandProcessor.cs" />
+    <Compile Include="Threading\CommandProcessorSpecs.cs" />
+    <Compile Include="Threading\ICommandProcessor.cs" />
+    <Compile Include="Threading\IntervalTimer.cs" />
+    <Compile Include="Threading\IntervalTimerSpecs.cs" />
+    <Compile Include="Threading\ISynchronizationContext.cs" />
+    <Compile Include="Threading\ITimerClient.cs" />
+    <Compile Include="Threading\SynchronizationContextFactory.cs" />
+    <Compile Include="Threading\SynchronizedCommand.cs" />
+    <Compile Include="Threading\SynchronizedContext.cs" />
+    <Compile Include="Threading\TimerFactory.cs" />
+    <Compile Include="Threading\TimerFactorySpecs.cs" />
+    <Compile Include="Threading\WorkerThread.cs">
+      <SubType>Component</SubType>
+    </Compile>
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\Gorilla.Commons.Testing\Gorilla.Commons.Testing.csproj">
+      <Project>{44E65096-9657-4716-90F8-4535BABE8039}</Project>
+      <Name>Gorilla.Commons.Testing</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\Gorilla.Commons.Utility\Gorilla.Commons.Utility.csproj">
+      <Project>{DD8FD29E-7424-415C-9BA3-7D9F6ECBA161}</Project>
+      <Name>Gorilla.Commons.Utility</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <ItemGroup>
+    <Folder Include="Properties\" />
+    <Folder Include="Proxies\" />
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>
\ No newline at end of file
trunk/product/MoMoney.DataAccess/Testing/behaves_like_a_repository.cs
@@ -1,7 +1,6 @@
 using developwithpassion.bdd.contexts;
 using Gorilla.Commons.Testing;
 using MbUnit.Framework;
-using MoMoney.DataAccess.core;
 using MoMoney.Infrastructure.Container;
 using MoMoney.Infrastructure.transactions2;
 using MoMoney.Testing.MetaData;
trunk/product/MoMoney.DataAccess/ApplicationFile.cs
@@ -1,5 +1,4 @@
 using System.IO;
-using MoMoney.Infrastructure.Extensions;
 using MoMoney.Presentation.Model.Projects;
 
 namespace MoMoney.DataAccess
@@ -20,7 +19,6 @@ namespace MoMoney.DataAccess
 
         public void copy_to(string other_path)
         {
-            this.log().debug("copying {0} to {1}", path, other_path);
             File.Copy(path, other_path, true);
         }
 
trunk/product/MoMoney.Domain/Core/Entity.cs
@@ -14,7 +14,6 @@ namespace MoMoney.Domain.Core
         protected Entity()
         {
             id = Guid.NewGuid();
-            //UnitOfWork.For<T>().register(this as T);
         }
 
         public Guid id { get; private set; }
trunk/product/MoMoney.Infrastructure/Proxies/IProxyBuilder.cs
@@ -0,0 +1,15 @@
+using System;
+using Castle.Core.Interceptor;
+
+namespace MoMoney.Infrastructure.proxies
+{
+    public interface IProxyBuilder<TypeToProxy>
+    {
+        IConstraintSelector<TypeToProxy> add_interceptor<Interceptor>(Interceptor interceptor)
+            where Interceptor : IInterceptor;
+
+        IConstraintSelector<TypeToProxy> add_interceptor<Interceptor>() where Interceptor : IInterceptor, new();
+        TypeToProxy create_proxy_for(TypeToProxy target);
+        TypeToProxy create_proxy_for(Func<TypeToProxy> target);
+    }
+}
\ No newline at end of file
trunk/product/MoMoney.Infrastructure/Proxies/ProxyBuilder.cs
@@ -6,16 +6,6 @@ using Ec.AuditTool.Infrastructure.Proxies.Interceptors;
 
 namespace MoMoney.Infrastructure.proxies
 {
-    public interface IProxyBuilder<TypeToProxy>
-    {
-        IConstraintSelector<TypeToProxy> add_interceptor<Interceptor>(Interceptor interceptor)
-            where Interceptor : IInterceptor;
-
-        IConstraintSelector<TypeToProxy> add_interceptor<Interceptor>() where Interceptor : IInterceptor, new();
-        TypeToProxy create_proxy_for(TypeToProxy target);
-        TypeToProxy create_proxy_for(Func<TypeToProxy> target);
-    }
-
     public class ProxyBuilder<TypeToProxy> : IProxyBuilder<TypeToProxy>
     {
         readonly IDictionary<IInterceptor, IInterceptorConstraint<TypeToProxy>> constraints;
trunk/product/MoMoney.Infrastructure/Transactions2/Session.cs
@@ -8,7 +8,7 @@ namespace MoMoney.Infrastructure.transactions2
 {
     public interface ISession : IDisposable
     {
-        IEntity find<T>(Guid guid) where T : IEntity;
+        T find<T>(Guid guid) where T : IEntity;
         IEnumerable<T> all<T>() where T : IEntity;
         void save<T>(T entity) where T : IEntity;
         void delete<T>(T entity) where T : IEntity;
@@ -29,7 +29,7 @@ namespace MoMoney.Infrastructure.transactions2
             identity_maps = new Dictionary<Type, object>();
         }
 
-        public IEntity find<T>(Guid id) where T : IEntity
+        public T find<T>(Guid id) where T : IEntity
         {
             if (get_identity_map_for<T>().contains_an_item_for(id))
             {
trunk/product/MoMoney.Infrastructure/MoMoney.Infrastructure.csproj
@@ -89,19 +89,10 @@
     <Reference Include="System.Xml" />
   </ItemGroup>
   <ItemGroup>
-    <Compile Include="Cloning\BinarySerializer.cs" />
-    <Compile Include="Cloning\BinarySerializerSpecs.cs" />
-    <Compile Include="Cloning\ISerializer.cs" />
-    <Compile Include="Cloning\Prototype.cs" />
-    <Compile Include="Cloning\Serializer.cs" />
     <Compile Include="Container\Autofac\AutofacDependencyRegistry.cs" />
     <Compile Include="Container\Autofac\AutofacDependencyRegistryBuilder.cs" />
     <Compile Include="Container\Autofac\AutofacSpecs.cs" />
-    <Compile Include="Container\DependencyResolutionException.cs" />
     <Compile Include="Container\IDependencyRegistration.cs" />
-    <Compile Include="Container\IDependencyRegistry.cs" />
-    <Compile Include="Container\Resolve.cs" />
-    <Compile Include="Container\ResolveSpecs.cs" />
     <Compile Include="Container\Windsor\Configuration\ApplyLoggingInterceptor.cs" />
     <Compile Include="Container\Windsor\Configuration\ComponentRegistrationConfiguration.cs" />
     <Compile Include="Container\Windsor\Configuration\ConfigureComponentLifestyle.cs" />
@@ -111,13 +102,7 @@
     <Compile Include="Container\Windsor\WindsorContainerFactory.cs" />
     <Compile Include="Container\Windsor\WindsorDependencyRegistry.cs" />
     <Compile Include="Container\Windsor\WindsorDependencyRegistrySpecs.cs" />
-    <Compile Include="Debugging\Launch.cs" />
-    <Compile Include="Eventing\EventAggregator.cs" />
-    <Compile Include="Eventing\EventAggregatorSpecs.cs" />
-    <Compile Include="Eventing\IEvent.cs" />
-    <Compile Include="Eventing\IEventSubscriber.cs" />
     <Compile Include="Extensions\environment_extensions.cs" />
-    <Compile Include="Extensions\logging_extensions.cs" />
     <Compile Include="Extensions\ThreadingExtensions.cs" />
     <Compile Include="Interceptors\Lazy.cs" />
     <Compile Include="Interceptors\LazyLoadedInterceptor.cs" />
@@ -125,14 +110,8 @@
     <Compile Include="Interceptors\LoggingInterceptor.cs" />
     <Compile Include="Interceptors\RaiseEventInterceptor.cs" />
     <Compile Include="Interceptors\SynchronizedInterceptor.cs" />
-    <Compile Include="Logging\ConsoleLogging\ConsoleLogger.cs" />
-    <Compile Include="Logging\ILogFactory.cs" />
-    <Compile Include="Logging\ILoggable.cs" />
-    <Compile Include="Logging\ILogger.cs" />
-    <Compile Include="Logging\Log.cs" />
     <Compile Include="Logging\Log4NetLogging\Log4NetLogFactory.cs" />
     <Compile Include="Logging\Log4NetLogging\Log4NetLogger.cs" />
-    <Compile Include="Logging\LogSpecs.cs" />
     <Compile Include="Proxies\IConstraintSelector.cs" />
     <Compile Include="Proxies\IInterceptorConstraint.cs" />
     <Compile Include="Proxies\IInterceptorConstraintFactory.cs" />
@@ -145,38 +124,15 @@
     <Compile Include="Proxies\Interceptors\RunOnBackgroundThreadInterceptor.cs" />
     <Compile Include="Proxies\Interceptors\RunOnBackgrounThreadInterceptorSpecs.cs" />
     <Compile Include="Proxies\Interceptors\SelectiveInterceptor.cs" />
+    <Compile Include="Proxies\IProxyBuilder.cs" />
     <Compile Include="Proxies\IProxyFactory.cs" />
     <Compile Include="Proxies\ProxyBuilder.cs" />
     <Compile Include="Proxies\ProxyBuilderSpecs.cs" />
     <Compile Include="Proxies\ProxyFactory.cs" />
     <Compile Include="Proxies\ProxyFactorySpecs.cs" />
-    <Compile Include="Reflection\ApplicationAssembly.cs" />
-    <Compile Include="Reflection\IAssembly.cs" />
-    <Compile Include="Registries\DefaultRegistry.cs" />
-    <Compile Include="Registries\DefaultRegistrySpecs.cs" />
-    <Compile Include="Threading\AsynchronousCommandProcessor.cs" />
-    <Compile Include="Threading\BackgroundThread.cs" />
-    <Compile Include="Threading\BackgroundThreadFactory.cs" />
-    <Compile Include="Threading\BackgroundThreadFactorySpecs.cs" />
-    <Compile Include="Threading\BackgroundThreadSpecs.cs" />
-    <Compile Include="Threading\CommandProcessor.cs" />
-    <Compile Include="Threading\CommandProcessorSpecs.cs" />
-    <Compile Include="Threading\ICommandProcessor.cs" />
-    <Compile Include="Threading\IntervalTimer.cs" />
-    <Compile Include="Threading\IntervalTimerSpecs.cs" />
-    <Compile Include="Threading\ISynchronizationContext.cs" />
-    <Compile Include="Threading\ITimerClient.cs" />
     <Compile Include="Threading\Juval\Synchronizer.cs" />
     <Compile Include="Threading\Juval\WorkItem.cs" />
     <Compile Include="Threading\RunOnUIThread.cs" />
-    <Compile Include="Threading\SynchronizationContextFactory.cs" />
-    <Compile Include="Threading\SynchronizedCommand.cs" />
-    <Compile Include="Threading\SynchronizedContext.cs" />
-    <Compile Include="Threading\TimerFactory.cs" />
-    <Compile Include="Threading\TimerFactorySpecs.cs" />
-    <Compile Include="Threading\WorkerThread.cs">
-      <SubType>Component</SubType>
-    </Compile>
     <Compile Include="Transactions2\ChangeTracker.cs" />
     <Compile Include="Transactions2\ChangeTrackerFactory.cs" />
     <Compile Include="Transactions2\ChangeTrackerFactorySpecs.cs" />
@@ -208,11 +164,12 @@
     <Compile Include="Transactions2\UnitOfWork.cs" />
     <Compile Include="Transactions2\UnitOfWorkFactory.cs" />
     <Compile Include="Transactions2\UnitOfWorkInterceptor.cs" />
-    <Compile Include="Transactions\IDatabaseGateway.cs">
-      <SubType>Code</SubType>
-    </Compile>
   </ItemGroup>
   <ItemGroup>
+    <ProjectReference Include="..\Gorilla.Commons.Infrastructure\Gorilla.Commons.Infrastructure.csproj">
+      <Project>{AA5EEED9-4531-45F7-AFCD-AD9717D2E405}</Project>
+      <Name>Gorilla.Commons.Infrastructure</Name>
+    </ProjectReference>
     <ProjectReference Include="..\Gorilla.Commons.Testing\Gorilla.Commons.Testing.csproj">
       <Project>{44E65096-9657-4716-90F8-4535BABE8039}</Project>
       <Name>Gorilla.Commons.Testing</Name>
@@ -227,7 +184,14 @@
     </ProjectReference>
   </ItemGroup>
   <ItemGroup>
+    <Folder Include="Cloning\" />
+    <Folder Include="Debugging\" />
+    <Folder Include="Eventing\" />
+    <Folder Include="Logging\ConsoleLogging\" />
     <Folder Include="Properties\" />
+    <Folder Include="Reflection\" />
+    <Folder Include="Registries\" />
+    <Folder Include="Transactions\" />
   </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
trunk/product/MoMoney.Presentation/MoMoney.Presentation.csproj
@@ -459,6 +459,10 @@
     </EmbeddedResource>
   </ItemGroup>
   <ItemGroup>
+    <ProjectReference Include="..\Gorilla.Commons.Infrastructure\Gorilla.Commons.Infrastructure.csproj">
+      <Project>{AA5EEED9-4531-45F7-AFCD-AD9717D2E405}</Project>
+      <Name>Gorilla.Commons.Infrastructure</Name>
+    </ProjectReference>
     <ProjectReference Include="..\Gorilla.Commons.Testing\Gorilla.Commons.Testing.csproj">
       <Project>{44E65096-9657-4716-90F8-4535BABE8039}</Project>
       <Name>Gorilla.Commons.Testing</Name>
trunk/product/MoMoney.Service/Application/CustomerTasks.cs
@@ -1,5 +1,4 @@
 using System.Linq;
-using MoMoney.DataAccess.core;
 using MoMoney.Domain.accounting;
 using MoMoney.Domain.repositories;
 
@@ -14,7 +13,7 @@ namespace MoMoney.Tasks.application
     {
         IAccountHolderRepository account_holders;
 
-        public CustomerTasks( IAccountHolderRepository account_holders)
+        public CustomerTasks(IAccountHolderRepository account_holders)
         {
             this.account_holders = account_holders;
         }
trunk/product/MoMoney.Service/MoMoney.Service.csproj
@@ -72,6 +72,10 @@
     <Compile Include="Infrastructure\Updating\WhatIsTheAvailableVersion.cs" />
   </ItemGroup>
   <ItemGroup>
+    <ProjectReference Include="..\Gorilla.Commons.Infrastructure\Gorilla.Commons.Infrastructure.csproj">
+      <Project>{AA5EEED9-4531-45F7-AFCD-AD9717D2E405}</Project>
+      <Name>Gorilla.Commons.Infrastructure</Name>
+    </ProjectReference>
     <ProjectReference Include="..\Gorilla.Commons.Testing\Gorilla.Commons.Testing.csproj">
       <Project>{44E65096-9657-4716-90F8-4535BABE8039}</Project>
       <Name>Gorilla.Commons.Testing</Name>
trunk/product/MyMoney/boot/container/registration/wire_up_the_services_in_to_the.cs
@@ -1,12 +1,11 @@
 using Gorilla.Commons.Utility.Core;
-using MoMoney.DataAccess.core;
 using MoMoney.Domain.accounting.billing;
 using MoMoney.Domain.repositories;
 using MoMoney.Infrastructure.Container;
 using MoMoney.Infrastructure.interceptors;
 using MoMoney.Infrastructure.proxies;
+using MoMoney.Infrastructure.transactions2;
 using MoMoney.Tasks.application;
-using IUnitOfWorkInterceptor=MoMoney.Infrastructure.transactions2.IUnitOfWorkInterceptor;
 
 namespace MoMoney.boot.container.registration
 {
trunk/product/MyMoney/MyMoney.csproj
@@ -216,6 +216,10 @@
     <Compile Include="boot\container\registration\wire_up_the_views_in_to_the.cs" />
   </ItemGroup>
   <ItemGroup>
+    <ProjectReference Include="..\Gorilla.Commons.Infrastructure\Gorilla.Commons.Infrastructure.csproj">
+      <Project>{AA5EEED9-4531-45F7-AFCD-AD9717D2E405}</Project>
+      <Name>Gorilla.Commons.Infrastructure</Name>
+    </ProjectReference>
     <ProjectReference Include="..\Gorilla.Commons.Testing\Gorilla.Commons.Testing.csproj">
       <Project>{44E65096-9657-4716-90F8-4535BABE8039}</Project>
       <Name>Gorilla.Commons.Testing</Name>
trunk/solution.sln
@@ -21,6 +21,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MoMoney.DTO", "product\MoMo
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MoMoney.Presentation", "product\MoMoney.Presentation\MoMoney.Presentation.csproj", "{D7C83DB3-492D-4514-8C53-C57AD8E7ACE7}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Gorilla.Commons.Infrastructure", "product\Gorilla.Commons.Infrastructure\Gorilla.Commons.Infrastructure.csproj", "{AA5EEED9-4531-45F7-AFCD-AD9717D2E405}"
+EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|Any CPU = Debug|Any CPU
@@ -67,6 +69,10 @@ Global
 		{D7C83DB3-492D-4514-8C53-C57AD8E7ACE7}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{D7C83DB3-492D-4514-8C53-C57AD8E7ACE7}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{D7C83DB3-492D-4514-8C53-C57AD8E7ACE7}.Release|Any CPU.Build.0 = Release|Any CPU
+		{AA5EEED9-4531-45F7-AFCD-AD9717D2E405}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{AA5EEED9-4531-45F7-AFCD-AD9717D2E405}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{AA5EEED9-4531-45F7-AFCD-AD9717D2E405}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{AA5EEED9-4531-45F7-AFCD-AD9717D2E405}.Release|Any CPU.Build.0 = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE