public IEngraver Build(Type driverType, string comPort) { IEngraver engraver = _unityContainer.Resolve(driverType) as IEngraver; if (engraver == null) { throw new InvalidOperationException("Invalid driver type"); } engraver.Connect(comPort); return(engraver); }
private void ConnectToEngraver(object sender, EventArgs e) { Type driverType = CmbAvailableDrivers.SelectedItem as Type; if (driverType == null) { //TODO message return; } string comPort = CmbAvailablePorts.SelectedItem as string; IEngraverFactory engraverFactory = _unityContainer.Resolve <IEngraverFactory>(); _engraver = engraverFactory.Build(driverType, comPort); SetConnnectionStatus(true); }