public static void GuardarNuevaEstacion(EstacionModelo estacion, byte[] bitmapData) { Estaciones estacionBD = LlenarEstacion(estacion, bitmapData); AccesoDatosBD.GuardarNuevaEstacion(estacionBD); }
public MainFrame() { InitializeComponent(); FormaEstacion formaEstacion = new FormaEstacion(); formaEstacion.Show(_dockMain, DockState.Document); _formaPaletaHerramientas = new PaletaHerramienta(); _formaPaletaHerramientas.CloseButton = false; _formaPaletaHerramientas.Show(_dockMain, DockState.DockLeft); _formaPaletaHerramientas.DockPanel.DockLeftPortion = 140; _formaPaletaHerramientas.AllowEndUserDocking = false; _formaPaletaHerramientas.AutoHidePortion = 140; UnificarPaleta(); _estacionView = formaEstacion.EstacionView; _estacionModelo = new EstacionModelo(Guid.NewGuid()); _esEstacionNueva = true; EstablecerToolBarInicial(); _presenterLocal = new PresenterLocal(_estacionView); ModeloSnifferMaster modeloSniffer = new ModeloSnifferMaster(); modeloSniffer.setEstacion(_estacionModelo); _presenterLocal.SetEstacion(_estacionModelo, modeloSniffer); _estacionView.Inicializar(_presenterLocal, _dockMain,this); _presenterLocal.ConectarCliente(); }
public void SetEstacion(EstacionModelo estacion,ModeloSnifferMaster modeloSnifferMaster) { foreach (KeyValuePair<Guid,ComputadorLogico> item in estacion.Computadores) { item.Value.InformarVistas(_vistas); } foreach (KeyValuePair<Guid, RouterLogico> item in estacion.Routers) { item.Value.InformarVistas(_vistas); } _estacion = estacion; _snifferMaster = modeloSnifferMaster; }
private void ToolBarNewClick(object sender, EventArgs e) { _estacionModelo = new EstacionModelo(Guid.NewGuid()); CrearNuevaEstacion(); }
private void ToolBarOpenClick(object sender, EventArgs e) { List<RedBrowserModel> redes = AccesoDatos.AlmacenadorInformacion.CargarEstaciones(); using (RedBrowser forma = new RedBrowser(redes)) { if (forma.ShowDialog() == DialogResult.OK) { _estacionModelo = AccesoDatos.AlmacenadorInformacion.CargarEstacion(forma.Id); CrearNuevaEstacion(); _toolBarDelete.Enabled = true; _menuDelete.Enabled = true; _esEstacionNueva = false; } } }
private static Estaciones LlenarEstacion(EstacionModelo estacion, byte[] bitmapData, bool generarNuevosIds) { Estaciones estacionBD = new Estaciones(); if (generarNuevosIds) estacionBD.Id = Guid.NewGuid(); else estacionBD.Id = estacion.Id; estacionBD.Nombre = estacion.Nombre; estacionBD.Descripcion = estacion.Descripcion; estacionBD.Foto = new System.Data.Linq.Binary(bitmapData); estacionBD.Fecha = DateTime.Now; Dictionary<Guid, Guid> puertosMappingAntiguoNuevo = new Dictionary<Guid, Guid>(); foreach (KeyValuePair<Guid, ComputadorLogico> pc in estacion.Computadores) { Equipos equipoBD = AgregarEquipo(estacionBD, pc.Value, generarNuevosIds); Computadores pcBD = new Computadores(); pcBD.Id = equipoBD.Id; pcBD.DefaultGateWay = pc.Value.DefaultGateWay; equipoBD.Computadores = pcBD; pcBD.Equipos = equipoBD; Guid idPuerto = AgregarPuerto(equipoBD, pc.Value.PuertoEthernet, generarNuevosIds); puertosMappingAntiguoNuevo.Add(pc.Value.PuertoEthernet.Id, idPuerto); } foreach (KeyValuePair<Guid, HUBLogico> hub in estacion.HUBS) { Equipos equipoBD = AgregarEquipo(estacionBD, hub.Value, generarNuevosIds); foreach (PuertoEthernetLogicoBase puerto in hub.Value.PuertosEthernet) { Guid idPuerto = AgregarPuerto(equipoBD, puerto, generarNuevosIds); puertosMappingAntiguoNuevo.Add(puerto.Id, idPuerto); } } foreach (KeyValuePair<Guid, SwitchLogico> swi in estacion.Switches) { Equipos equipoBD = AgregarEquipo(estacionBD, swi.Value, generarNuevosIds); foreach (PuertoEthernetLogicoBase puerto in swi.Value.PuertosEthernet) { Guid idPuerto = AgregarPuerto(equipoBD, puerto, generarNuevosIds); puertosMappingAntiguoNuevo.Add(puerto.Id, idPuerto); } } foreach (KeyValuePair<Guid, SwitchVLAN> swi in estacion.SwitchesVLan) { Equipos equipoBD = AgregarEquipo(estacionBD, swi.Value, generarNuevosIds); Switch swiBD = new Switch(); swiBD.Id = equipoBD.Id; equipoBD.Switch = swiBD; swiBD.Equipos = equipoBD; foreach (PuertoEthernetLogicoBase puerto in swi.Value.PuertosEthernet) { Guid idPuerto = AgregarPuerto(equipoBD, puerto, generarNuevosIds); puertosMappingAntiguoNuevo.Add(puerto.Id, idPuerto); } foreach (VLan vLan in swi.Value.VLans) { VLans vLanBD = new VLans(); if (generarNuevosIds) vLanBD.Id = Guid.NewGuid(); else vLanBD.Id = vLan.Id; vLanBD.Nombre = vLan.Nombre; vLanBD.IdSwitch = equipoBD.Id; swiBD.VLans.Add(vLanBD); vLanBD.Switch = swiBD; foreach (PuertoEthernetLogicoBase puertoDeVLan in vLan.Puertos) { AsociacionesPuertosVLans asoc = new AsociacionesPuertosVLans(); asoc.Id = Guid.NewGuid(); asoc.IdPuerto = puertosMappingAntiguoNuevo[puertoDeVLan.Id]; asoc.IdVLan = vLanBD.Id; asoc.VLans = vLanBD; vLanBD.AsociacionesPuertosVLans.Add(asoc); } } } foreach (KeyValuePair<Guid, RouterLogico> rou in estacion.Routers) { Equipos equipoBD = AgregarEquipo(estacionBD, rou.Value, generarNuevosIds); Routers routerBD = new Routers(); routerBD.Id = equipoBD.Id; equipoBD.Routers = routerBD; routerBD.Equipos = equipoBD; foreach (PuertoEthernetLogicoBase puerto in rou.Value.PuertosEthernet) { Guid idPuerto = AgregarPuerto(equipoBD, puerto, generarNuevosIds); puertosMappingAntiguoNuevo.Add(puerto.Id, idPuerto); } foreach (RutaSOA entrada in rou.Value.TablaDeRutas.GetRutasEstaticas()) { Rutas ruta = new Rutas(); if (generarNuevosIds) ruta.Id = Guid.NewGuid(); else ruta.Id = entrada.Id; ruta.IdPuerto = puertosMappingAntiguoNuevo[entrada.IdPuerto]; ruta.IdRouter = equipoBD.Id; ruta.NextHopIP = entrada.NextHopIP; ruta.Mascara = entrada.Mask; ruta.Red = IPAddressFactory.GetValor(entrada.Red); routerBD.Rutas.Add(ruta); } } foreach (KeyValuePair<Guid, CableDeRedLogico> par in estacion.Cables) { CableDeRedLogico cableLogico = par.Value; Cables cableBD = new Cables(); if (generarNuevosIds) cableBD.Id = Guid.NewGuid(); else cableBD.Id = cableLogico.Id; cableBD.IdPuerto1 = puertosMappingAntiguoNuevo[cableLogico.Puerto1.Id]; cableBD.IdPuerto2 = puertosMappingAntiguoNuevo[cableLogico.Puerto2.Id]; estacionBD.AgregarCable(cableBD); } return estacionBD; }
public static void ActualizarEstacion(EstacionModelo estacion, byte[] bitmapData) { Estaciones estacionBD = LlenarEstacion(estacion, bitmapData); AccesoDatosBD.ActualizarEstacion(estacionBD); }
private static Estaciones LlenarEstacion(EstacionModelo estacion, byte[] bitmapData) { return LlenarEstacion(estacion, bitmapData, false); }
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 static EstacionModelo CargarEstacion(Guid id) { Estaciones estacionBD = AccesoDatosBD.GetEstacionById(id); EstacionModelo estacionLogica = new EstacionModelo(estacionBD.Id); estacionLogica.Nombre = estacionBD.Nombre; estacionLogica.Descripcion = estacionBD.Descripcion; if (estacionBD.Foto != null) estacionLogica.Imagen = estacionBD.Foto.ToArray(); CrearEquipos(estacionLogica, estacionBD); foreach (Cables cableBD in estacionBD.Cables) { estacionLogica.ConectarPuertos(cableBD.IdPuerto1, cableBD.IdPuerto2); } return estacionLogica; }
public void setEstacion(EstacionModelo estacion) { _estacion = estacion; }