Commit 5c13e4f
Changed files (5)
trunk
product
MyMoney
Presentation
Views
updates
Tasks
infrastructure
trunk/product/MyMoney/Presentation/Views/updates/CheckForUpdatesView.cs
@@ -49,7 +49,6 @@ namespace MoMoney.Presentation.Views.updates
ux_dont_update_button.Enabled = false;
ux_cancel_button.Enabled = false;
Show();
- //ShowDialog();
});
}
trunk/product/MyMoney/Tasks/infrastructure/updating/CommandFactory.cs
@@ -0,0 +1,17 @@
+using MoMoney.Utility.Core;
+
+namespace MoMoney.Tasks.infrastructure.updating
+{
+ public interface ICommandFactory
+ {
+ ICommand create_for<T>(ICallback<T> item, IQuery<T> query);
+ }
+
+ public class CommandFactory : ICommandFactory
+ {
+ public ICommand create_for<T>(ICallback<T> item, IQuery<T> query)
+ {
+ return new RunQueryCommand<T>(item, new ProcessQueryCommand<T>(query));
+ }
+ }
+}
\ No newline at end of file
trunk/product/MyMoney/Tasks/infrastructure/updating/DisplayNextAvailableVersion.cs
@@ -12,16 +12,18 @@ namespace MoMoney.Tasks.infrastructure.updating
{
readonly IWhatIsTheAvailableVersion query;
readonly ICommandProcessor processor;
+ readonly ICommandFactory factory;
- public DisplayNextAvailableVersion(IWhatIsTheAvailableVersion query, ICommandProcessor processor)
+ public DisplayNextAvailableVersion(IWhatIsTheAvailableVersion query, ICommandProcessor processor, ICommandFactory factory)
{
this.query = query;
+ this.factory = factory;
this.processor = processor;
}
public void run(ICallback<ApplicationVersion> item)
{
- processor.add(new RunQueryCommand<ApplicationVersion>(item, new ProcessQueryCommand<ApplicationVersion>(query)));
+ processor.add(factory.create_for(item, query));
}
}
}
\ No newline at end of file
trunk/product/MyMoney/Tasks/infrastructure/updating/ProcessQueryCommand.cs
@@ -1,5 +1,3 @@
-using System.Threading;
-using MoMoney.Infrastructure.Container;
using MoMoney.Utility.Core;
namespace MoMoney.Tasks.infrastructure.updating
@@ -11,22 +9,15 @@ namespace MoMoney.Tasks.infrastructure.updating
public class ProcessQueryCommand<T> : IProcessQueryCommand<T>
{
readonly IQuery<T> query;
- readonly SynchronizationContext context;
- public ProcessQueryCommand(IQuery<T> query) : this(query, resolve.dependency_for<SynchronizationContext>())
- {
- }
-
- public ProcessQueryCommand(IQuery<T> query, SynchronizationContext context)
+ public ProcessQueryCommand(IQuery<T> query)
{
this.query = query;
- this.context = context;
}
public void run(ICallback<T> item)
{
- var result = query.fetch();
- context.Post(x => item.run(result), null);
+ item.run(query.fetch());
}
}
}
\ No newline at end of file
trunk/product/MyMoney/MyMoney.csproj
@@ -560,6 +560,7 @@
<Compile Include="Tasks\application\CustomerTasks.cs" />
<Compile Include="Tasks\application\IncomeTasks.cs" />
<Compile Include="Tasks\infrastructure\LogFileTasks.cs" />
+ <Compile Include="Tasks\infrastructure\updating\CommandFactory.cs" />
<Compile Include="Tasks\infrastructure\updating\DisplayNextAvailableVersion.cs" />
<Compile Include="Tasks\infrastructure\updating\ProcessQueryCommand.cs" />
<Compile Include="Tasks\infrastructure\updating\RunQueryCommand.cs" />