summaryrefslogtreecommitdiff
path: root/slips/src/app/Marina/Domain/Interfaces/ICustomer.cs
blob: 677194cec86c4924ed87f6c81b22aff8524df47b (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
using System;
using System.Collections.Generic;

namespace Marina.Domain.Interfaces {
	public interface ICustomer : IDomainObject {
		void RegisterBoat( string registrationNumber, string manufacturer, DateTime yearOfModel, long length );

		void RegisterBoat( IBoat unregisteredBoat );

		IEnumerable< IBoat > RegisteredBoats();

		void Lease( ISlip slip, ILeaseDuration duration );

		IEnumerable< ISlipLease > Leases();

		IRegistration Registration();

		void RegisterAccount( string username, string password, string firstName,
		                      string lastName, string phoneNumber, string city );

		void UpdateRegistrationTo( IRegistration registration );

		void UpdateRegistrationTo( string username, string password, string firstName, string lastName,
		                                  string phoneNumber,
		                                  string city );
	}
}