private string AbrirHost() { string mensajeDeErrorDeEstado = string.Empty; HostDelServidor = new ServiceHost(ServiciosDeJuego); if (!(HostDelServidor.State == CommunicationState.Opened) && EstadoDelServidor != EstadoDelServidor.Activo) { try { HostDelServidor.Open(); EstadoDelServidor = EstadoDelServidor.Activo; } catch (CommunicationObjectFaultedException e) { mensajeDeErrorDeEstado = e.Message.ToString(); HostDelServidor.Abort(); EstadoDelServidor = EstadoDelServidor.Incomunicado; } catch (CommunicationException e) { mensajeDeErrorDeEstado = e.Message.ToString(); HostDelServidor.Abort(); EstadoDelServidor = EstadoDelServidor.Incomunicado; } } return(mensajeDeErrorDeEstado); }
public void EstadoDelServidorActualizado(string nombre, EstadoDelServidor estadoDelServidor, string mensaje = null) { TextBlockEstadoDelServidor.Text += "Nombre: " + nombre + Environment.NewLine + "Estado: " + estadoDelServidor.ToString() + Environment.NewLine; if (mensaje != null) { TextBlockEstadoDelServidor.Text += mensaje + Environment.NewLine + Environment.NewLine; } }
public void PararServidor() { if (EstadoDelServidor != EstadoDelServidor.Detenido) { if (HostDelServidor != null) { HostDelServidor.Abort(); } ServiciosDeJuego.SesionesConectadas.Clear(); ControladorDeActualizacionDePantalla.ListaDeSesionesActualizado(ServiciosDeJuego.SesionesConectadas); EstadoDelServidor = EstadoDelServidor.Detenido; ControladorDeActualizacionDePantalla.EstadoDelServidorActualizado(GetType().Name, EstadoDelServidor); } }