/// <summary> /// Создает объект для AC поезда с дополнительными параметрами /// </summary> /// <param name="trainName"></param> /// <returns></returns> /// <exception cref="ArgumentNullException">factory is <see langword="null"/></exception> public static ACParameters GetACTrainParametres(String trainName) { var repository = GetInstance(); var baseTrainParameters = repository.GetTrainBaseParametres(trainName); var nbAuto = repository.GetAdditionalParametresByTrainName(trainName).nbAuto; var acTrainParameters = new ACParameters(baseTrainParameters, nbAuto); return(acTrainParameters); }
/// <summary> /// </summary> /// <param name="machine"></param> /// <param name="commonProperties"></param> /// <param name="trainName"></param> /// <param name="broker"></param> /// <exception cref="ArgumentException">Train.Name != <paramref name="commonProperties"/>.TrainName</exception> /// <exception cref="ArgumentNullException">value is <see langword="null"/></exception> /// <exception cref="ArgumentOutOfRangeException">empty.</exception> internal ACTrain(ACMachine machine, ACParameters commonProperties, String trainName, EventBroker broker) : base(machine, commonProperties, broker) { Name = trainName; if (!Name.Equals(commonProperties.Name)) { throw new ArgumentException("Train.Name != commonProperties.TrainName"); } NbAuto = commonProperties.NBAuto; //if (!Name.Equals(machine.Name)) // throw new ArgumentException("Train.Name != machine.TrainName"); //Machine = machine; //Broker = broker; }