public static SwitchVLanSOA CrearSwitchVLanSOA(SwitchVLAN swiLogico) { SwitchVLanSOA swiRespuesta = new SwitchVLanSOA(swiLogico.TipoDeEquipo, swiLogico.Id, swiLogico.X, swiLogico.Y, swiLogico.Nombre); foreach (PuertoEthernetLogicoBase puerto in swiLogico.PuertosEthernet) { swiRespuesta.AgregarPuerto(new PuertoBaseSOA(puerto.Id, puerto.Nombre, puerto.Habilitado)); } foreach (VLan vLan in swiLogico._vLans) { VLanSOA vLanSOA = new VLanSOA(vLan.Id, vLan.Nombre); foreach (PuertoEthernetLogicoBase puerto in vLan.Puertos) { vLanSOA.IdPuertos.Add(puerto.Id); } swiRespuesta.VLans.Add(vLanSOA); } return swiRespuesta; }
private static void CrearEquipos(EstacionModelo estacionLogica, Estaciones estacionBD) { foreach (Equipos equipoBD in estacionBD.EquiposBD) { switch ((TipoDeEquipo)equipoBD.TipoDeEquipo) { case TipoDeEquipo.Ninguno: throw new Exception(); case TipoDeEquipo.Computador: ComputadorLogico pc = new ComputadorLogico(equipoBD.Id, equipoBD.X, equipoBD.Y, equipoBD.Nombre, equipoBD.Computadores.DefaultGateWay); PuertosCompletos puertoCompleto = equipoBD.Puertos[0].PuertosCompletos; pc.AgregarPuerto(puertoCompleto.Id, puertoCompleto.Puertos.Nombre, puertoCompleto.DireccionMAC, puertoCompleto.DireccionIP, puertoCompleto.Mascara, puertoCompleto.Puertos.Habilitado); estacionLogica.CrearComputador(pc); break; case TipoDeEquipo.HUB: HUBLogico hub = new HUBLogico(equipoBD.Id, equipoBD.X, equipoBD.Y, equipoBD.Nombre); foreach (Puertos puertoBD in equipoBD.PuertosBD) { hub.AgregarPuerto(puertoBD.Id, puertoBD.Nombre, puertoBD.Habilitado); } estacionLogica.CrearHUB(hub); break; case TipoDeEquipo.Switch: SwitchLogico swi = new SwitchLogico(equipoBD.Id, equipoBD.X, equipoBD.Y, equipoBD.Nombre); foreach (Puertos puertoBD in equipoBD.PuertosBD) { swi.AgregarPuerto(puertoBD.Id, puertoBD.Nombre, puertoBD.Habilitado); } estacionLogica.CrearSwitch(swi); break; case TipoDeEquipo.SwitchVLan: SwitchVLAN swiVLan = new SwitchVLAN(equipoBD.Id, equipoBD.X, equipoBD.Y, equipoBD.Nombre); foreach (Puertos puertoBD in equipoBD.PuertosBD) { swiVLan.AgregarPuerto(puertoBD.Id, puertoBD.Nombre, puertoBD.Habilitado); } List<VLanSOA> vLansSOA = new List<VLanSOA>(); foreach (VLans vLanBD in equipoBD.Switch.VLans) { VLanSOA vLan = new VLanSOA(vLanBD.Id, vLanBD.Nombre); foreach (AsociacionesPuertosVLans asoc in vLanBD.AsociacionesPuertosVLans) { vLan.IdPuertos.Add(asoc.IdPuerto); } vLansSOA.Add(vLan); } swiVLan.ActualizarVLans(vLansSOA); estacionLogica.CrearSwitchVLan(swiVLan); break; case TipoDeEquipo.Router: RouterLogico rou = new RouterLogico(equipoBD.Id, equipoBD.X, equipoBD.Y, equipoBD.Nombre); foreach (Puertos puertoBD in equipoBD.PuertosBD) { PuertosCompletos puertoFull = puertoBD.PuertosCompletos; rou.AgregarPuerto(puertoFull.Id, puertoFull.Puertos.Nombre, puertoFull.DireccionMAC, puertoFull.DireccionIP, puertoFull.Mascara, puertoFull.Puertos.Habilitado); } foreach (Rutas ruta in equipoBD.Routers.Rutas) { rou.CrearNuevaRuta(ruta.Id, ruta.IdPuerto, IPAddressFactory.GetIpRep((uint)ruta.Red), ruta.Mascara, ruta.NextHopIP); } estacionLogica.CrearRouter(rou); break; default: throw new Exception(); } } }
public void CrearSwitchVLan(SwitchVLAN swiVLANLogico) { _switchesVLan.Add(swiVLANLogico.Id, swiVLANLogico); LLenarPuertos(_puertos, swiVLANLogico.PuertosEthernet); swiVLANLogico.InicializarEquipo(); }
public void PeticionCrearSwitchVLAN(SwitchVLanSOA switchVLanSOA) { SwitchVLAN swiVLANLogico = new SwitchVLAN(Guid.NewGuid(), switchVLanSOA.X, switchVLanSOA.Y, switchVLanSOA.Nombre); for (int i = 0; i < 18; i++) { swiVLANLogico.AgregarPuerto(Guid.NewGuid(), "E." + i.ToString(), true); } _estacion.CrearSwitchVLan(swiVLANLogico); SwitchVLanSOA swiRespuesta = SwitchVLAN.CrearSwitchVLanSOA(swiVLANLogico); foreach (IVisualizacion cliente in _vistas) { cliente.CrearSwitchVLan(swiRespuesta); } }