blob: 94ae726c5e2d6ffc0cc8f5828648dc0df8cbbd78 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
using Marina.Infrastructure.Container;
using Marina.Presentation.Mappers;
using Marina.Presentation.Views;
using Marina.Task;
using Marina.Web;
namespace Marina.Presentation.Presenters {
public class LoginPresenter : ILoginPresenter {
public LoginPresenter( ILoginView view )
: this(
view,
Resolve.DependencyFor< IHttpRequest >( ),
Resolve.DependencyFor< IAuthenticationTask >( ),
Resolve.DependencyFor< ILoginCredentialsMapper >( )
) {}
public LoginPresenter( ILoginView view, IHttpRequest request, IAuthenticationTask task,
ILoginCredentialsMapper mapper ) {
_view = view;
_request = request;
_task = task;
_mapper = mapper;
}
public void Login() {
_view.Display( _task.AuthenticateUserUsing( _mapper.MapFrom( _request ) ) );
}
private readonly ILoginView _view;
private readonly IHttpRequest _request;
private readonly IAuthenticationTask _task;
private readonly ILoginCredentialsMapper _mapper;
}
}
|