diff options
| author | Jason Lepp <jlepp@arcresources.com> | 2010-10-18 16:35:01 -0600 |
|---|---|---|
| committer | Jason Lepp <jlepp@arcresources.com> | 2010-10-18 16:35:01 -0600 |
| commit | 4f7c1f73ff5dab991512118841e4cda826685bf9 (patch) | |
| tree | 267bda0df4ee5758fefc571b5667a03e90c8ecb4 | |
| parent | ec85c3ecd47359cbd7eee06bc1b1b991e0d43732 (diff) | |
Remove Mappers from MVP
| -rwxr-xr-x | src/MVPtoMVVM.mvp/MVPtoMVVM.mvp.csproj | 4 | ||||
| -rw-r--r-- | src/MVPtoMVVM.mvp/mappers/ITodoItemMapper.cs | 10 | ||||
| -rw-r--r-- | src/MVPtoMVVM.mvp/mappers/ITodoItemPresenterMapper.cs | 12 | ||||
| -rw-r--r-- | src/MVPtoMVVM.mvp/mappers/TodoItemMapper.cs | 13 | ||||
| -rw-r--r-- | src/MVPtoMVVM.mvp/mappers/TodoItemPresenterMapper.cs | 25 | ||||
| -rw-r--r-- | src/MVPtoMVVM.mvp/presenters/MvpPresenter.cs | 14 | ||||
| -rw-r--r-- | src/MVPtoMVVM.mvp/presenters/TodoItemPresenter.cs | 16 | ||||
| -rw-r--r-- | src/MVPtoMVVM.mvvm/viewmodels/MainWindowViewModel.cs | 9 |
8 files changed, 22 insertions, 81 deletions
diff --git a/src/MVPtoMVVM.mvp/MVPtoMVVM.mvp.csproj b/src/MVPtoMVVM.mvp/MVPtoMVVM.mvp.csproj index 29fc93d..05496e2 100755 --- a/src/MVPtoMVVM.mvp/MVPtoMVVM.mvp.csproj +++ b/src/MVPtoMVVM.mvp/MVPtoMVVM.mvp.csproj @@ -59,10 +59,6 @@ <Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</ApplicationDefinition>
- <Compile Include="mappers\ITodoItemMapper.cs" />
- <Compile Include="mappers\ITodoItemPresenterMapper.cs" />
- <Compile Include="mappers\TodoItemMapper.cs" />
- <Compile Include="mappers\TodoItemPresenterMapper.cs" />
<Compile Include="presenters\IMvpPresenter.cs" />
<Compile Include="presenters\ITodoItemPresenter.cs" />
<Compile Include="presenters\MvpPresenter.cs" />
diff --git a/src/MVPtoMVVM.mvp/mappers/ITodoItemMapper.cs b/src/MVPtoMVVM.mvp/mappers/ITodoItemMapper.cs deleted file mode 100644 index 165a8ac..0000000 --- a/src/MVPtoMVVM.mvp/mappers/ITodoItemMapper.cs +++ /dev/null @@ -1,10 +0,0 @@ -using MVPtoMVVM.domain;
-using MVPtoMVVM.mvp.presenters;
-
-namespace MVPtoMVVM.mvp.mappers
-{
- public interface ITodoItemMapper
- {
- TodoItem MapFrom(ITodoItemPresenter presenter);
- }
-}
\ No newline at end of file diff --git a/src/MVPtoMVVM.mvp/mappers/ITodoItemPresenterMapper.cs b/src/MVPtoMVVM.mvp/mappers/ITodoItemPresenterMapper.cs deleted file mode 100644 index 5471240..0000000 --- a/src/MVPtoMVVM.mvp/mappers/ITodoItemPresenterMapper.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System.Collections.Generic;
-using MVPtoMVVM.domain;
-using MVPtoMVVM.mvp.presenters;
-
-namespace MVPtoMVVM.mvp.mappers
-{
- public interface ITodoItemPresenterMapper
- {
- ITodoItemPresenter MapFrom(TodoItem item);
- IEnumerable<ITodoItemPresenter> MapAll(IEnumerable<TodoItem> items);
- }
-}
\ No newline at end of file diff --git a/src/MVPtoMVVM.mvp/mappers/TodoItemMapper.cs b/src/MVPtoMVVM.mvp/mappers/TodoItemMapper.cs deleted file mode 100644 index 77fe55d..0000000 --- a/src/MVPtoMVVM.mvp/mappers/TodoItemMapper.cs +++ /dev/null @@ -1,13 +0,0 @@ -using MVPtoMVVM.domain;
-using MVPtoMVVM.mvp.presenters;
-
-namespace MVPtoMVVM.mvp.mappers
-{
- public class TodoItemMapper : ITodoItemMapper
- {
- public TodoItem MapFrom(ITodoItemPresenter presenter)
- {
- return new TodoItem {Description = presenter.Description, DueDate = presenter.DueDate, Id = presenter.Id};
- }
- }
-}
\ No newline at end of file diff --git a/src/MVPtoMVVM.mvp/mappers/TodoItemPresenterMapper.cs b/src/MVPtoMVVM.mvp/mappers/TodoItemPresenterMapper.cs deleted file mode 100644 index 64525d5..0000000 --- a/src/MVPtoMVVM.mvp/mappers/TodoItemPresenterMapper.cs +++ /dev/null @@ -1,25 +0,0 @@ -using System.Collections.Generic;
-using System.Linq;
-using MVPtoMVVM.domain;
-using MVPtoMVVM.mvp.presenters;
-using StructureMap;
-
-namespace MVPtoMVVM.mvp.mappers
-{
- public class TodoItemPresenterMapper : ITodoItemPresenterMapper
- {
- public ITodoItemPresenter MapFrom(TodoItem item)
- {
- var presenter = ObjectFactory.GetInstance<ITodoItemPresenter>();
- presenter.Id = item.Id;
- presenter.Description = item.Description;
- presenter.DueDate = item.DueDate;
- return presenter;
- }
-
- public IEnumerable<ITodoItemPresenter> MapAll(IEnumerable<TodoItem> items)
- {
- return items.Select(todoItem => MapFrom(todoItem));
- }
- }
-}
\ No newline at end of file diff --git a/src/MVPtoMVVM.mvp/presenters/MvpPresenter.cs b/src/MVPtoMVVM.mvp/presenters/MvpPresenter.cs index d117799..9dd8f93 100644 --- a/src/MVPtoMVVM.mvp/presenters/MvpPresenter.cs +++ b/src/MVPtoMVVM.mvp/presenters/MvpPresenter.cs @@ -1,7 +1,6 @@ using System;
using System.Collections.Generic;
using MVPtoMVVM.domain;
-using MVPtoMVVM.mvp.mappers;
using MVPtoMVVM.mvp.views;
using MVPtoMVVM.repositories;
using System.Linq;
@@ -12,12 +11,10 @@ namespace MVPtoMVVM.mvp.presenters {
private IMvpView view;
private ITodoItemRepository itemRepository;
- private ITodoItemPresenterMapper presenterMapper;
- public MvpPresenter(ITodoItemRepository itemRepository, ITodoItemPresenterMapper presenterMapper)
+ public MvpPresenter(ITodoItemRepository itemRepository)
{
this.itemRepository = itemRepository;
- this.presenterMapper = presenterMapper;
}
public void SetView(IMvpView view)
@@ -29,7 +26,7 @@ namespace MVPtoMVVM.mvp.presenters public void AddNewItem()
{
var items = new List<ITodoItemPresenter>(view.GetTodoItems());
- var newItem = presenterMapper.MapFrom(new TodoItem { DueDate = DateTime.Today, Description = ""});
+ var newItem = new TodoItemPresenter(itemRepository) {Description = string.Empty, DueDate = DateTime.Today} ;
items.Add(newItem);
view.SetTodoItems(items);
}
@@ -51,7 +48,12 @@ namespace MVPtoMVVM.mvp.presenters private void RefreshItems()
{
- view.SetTodoItems(presenterMapper.MapAll(itemRepository.GetAll()));
+ view.SetTodoItems(itemRepository.GetAll().Select(MapFrom));
+ }
+
+ private ITodoItemPresenter MapFrom(TodoItem todoItem)
+ {
+ return new TodoItemPresenter(itemRepository) { Description = todoItem.Description, DueDate = todoItem.DueDate, Id = todoItem.Id};
}
}
}
\ No newline at end of file diff --git a/src/MVPtoMVVM.mvp/presenters/TodoItemPresenter.cs b/src/MVPtoMVVM.mvp/presenters/TodoItemPresenter.cs index 2e95e53..269a569 100644 --- a/src/MVPtoMVVM.mvp/presenters/TodoItemPresenter.cs +++ b/src/MVPtoMVVM.mvp/presenters/TodoItemPresenter.cs @@ -1,6 +1,5 @@ using System;
using MVPtoMVVM.domain;
-using MVPtoMVVM.mvp.mappers;
using MVPtoMVVM.mvp.views;
using MVPtoMVVM.repositories;
@@ -9,14 +8,12 @@ namespace MVPtoMVVM.mvp.presenters public class TodoItemPresenter : ITodoItemPresenter
{
private ITodoItemRepository itemRepository;
- private ITodoItemMapper itemMapper;
private ITodoItemView view;
public int Id { get; set; }
- public TodoItemPresenter(ITodoItemRepository itemRepository, ITodoItemMapper itemMapper)
+ public TodoItemPresenter(ITodoItemRepository itemRepository)
{
this.itemRepository = itemRepository;
- this.itemMapper = itemMapper;
}
public void SetView(ITodoItemView view)
@@ -43,15 +40,20 @@ namespace MVPtoMVVM.mvp.presenters public void SaveItem()
{
- var item = itemMapper.MapFrom(this);
+ var item = GetTodoItem();
itemRepository.Save(item);
Id = item.Id;
IsDirty = false;
}
+ private TodoItem GetTodoItem()
+ {
+ return new TodoItem {Id = Id, Description = Description, DueDate = DueDate};
+ }
+
public void DeleteItem()
{
- var item = itemMapper.MapFrom(this);
+ var item = GetTodoItem();
view.Remove(item.Id);
itemRepository.Delete(item);
}
@@ -75,6 +77,8 @@ namespace MVPtoMVVM.mvp.presenters }
private bool isDirty;
+
+
public bool IsDirty
{
get { return isDirty; }
diff --git a/src/MVPtoMVVM.mvvm/viewmodels/MainWindowViewModel.cs b/src/MVPtoMVVM.mvvm/viewmodels/MainWindowViewModel.cs index 65144ed..af413eb 100644 --- a/src/MVPtoMVVM.mvvm/viewmodels/MainWindowViewModel.cs +++ b/src/MVPtoMVVM.mvvm/viewmodels/MainWindowViewModel.cs @@ -14,6 +14,10 @@ namespace MVPtoMVVM.mvvm.viewmodels {
private ITodoItemRepository todoItemRepository;
private Synchronizer<MainWindowViewModel> updater;
+ public event PropertyChangedEventHandler PropertyChanged = (o, e) => { };
+ public ICollection<TodoItemViewModel> TodoItems { get; set; }
+ public ICommand CancelChangesCommand { get; set; }
+ public ICommand AddNewItemCommand { get; set; }
public MainWindowViewModel(ITodoItemRepository todoItemRepository)
{
@@ -50,11 +54,6 @@ namespace MVPtoMVVM.mvvm.viewmodels };
}
- public ICollection<TodoItemViewModel> TodoItems { get; set; }
- public event PropertyChangedEventHandler PropertyChanged = (o,e)=> { };
- public ICommand CancelChangesCommand { get; set; }
- public ICommand AddNewItemCommand { get; set; }
-
public void Update(Expression<Func<MainWindowViewModel, object>> property)
{
updater.Update(property);
|
