예제 #1
0
 public Vessel(long id, string code, string name, string description, long companyId, VesselStates vesselState, bool isActive)
 {
     Id = id;
     Code = code;
     Name = name;
     Description = description;
     CompanyId = companyId;
     VesselState = vesselState;
     IsActive = isActive;
 }
 public VesselInCompanyState CreatState(VesselStates state)
 {
     switch (state)
     {
         case VesselStates.Inactive:
             return CreateInactiveVesselInCompanyState();
         case VesselStates.CharterIn:
             return CreateCharteredInVesselInCompanyState();
         case VesselStates.CharterOut:
             return CreateCharteredOutVesselInCompanyState();
         case VesselStates.Owned:
             return CreateOwnedVesselInCompanyState();
         case VesselStates.Scrapped:
             return CreateScrappedVesselInCompanyState();
         default:
             throw new ArgumentOutOfRangeException("Vessel State");
     }
 }
예제 #3
0
 protected VesselInCompanyState(IVesselInCompanyStateFactory vesselInCompanyStateFactory, VesselStates state)
 {
     this.VesselInCompanyStateFactory = vesselInCompanyStateFactory;
     this.State = state;
 }
예제 #4
0
 //================================================================================
 private void validateVesselState(VesselStates vesselState)
 {
     if (vesselState != VesselStates.CharterIn && vesselState != VesselStates.CharterOut)
         throw new BusinessRuleException("", "Vessel is not in valid state.");
 }