/// <summary> /// Return the prefix /// </summary> /// <param name="type"></param> /// <param name="index"></param> /// <returns></returns> public static string getPrefix(BikeStatEvent.StatTypes type, int index) { if (type != BikeStatEvent.StatTypes.COMBINED) { return(""); } if (calculateAverage[index]) { return(" (avg)"); } return(" (total)"); }
public void loadIdentifier(object focus) { if (focus is ClientIdentifier) { client.sendData(new Message(Commands.GETSTATS, focus)); current = BikeStatEvent.StatTypes.CURRENT_STATISTICS; linkLabel1.Visible = true; } if (focus is HistoryStats) { client.receivedAllBikeData.Invoke((HistoryStats)focus); linkLabel1.Visible = false; current = BikeStatEvent.StatTypes.COMBINED; updateLabels(((HistoryStats)focus).getCombined()); } }
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { var values = Enum.GetNames(typeof(BikeStatEvent.StatTypes)); var current = (int)this.current + 1; if (current > values.Length - 1) { current = 0; } this.current = (BikeStatEvent.StatTypes)Enum.Parse(typeof(BikeStatEvent.StatTypes), values[current]); linkLabel1.Text = values[current]; if (sender != null) { client.sendData(this.current); } }
/// <summary> /// Writes the recieved data to the console. depending on what kind of data it is. Does it do differnt things /// </summary> /// <param name="data">object data</param> public override void dataReceived(object data) { Console.WriteLine("SERVER RECEIVED " + data); if (data is Commands) { var command = (Commands)data; if (command == Commands.BREAKCONNECTION) { server.exception(identifier, "Client wants to break connection [connection closed]"); connected = false; writeHistory(); server.parseData(this, data); close(); return; } if (command == Commands.NOTIFYONNEWCONNECTED) { wantsNotify = !wantsNotify; return; } } if (data is BikeStatEvent.StatTypes) { StatType = (BikeStatEvent.StatTypes)data; return; } if (data is TextMessage) { messages.Add((TextMessage)data); } if (data is Message) { var message = (Message)data; switch (message.parameter) { case Commands.FOLLOW: following.Add((ClientIdentifier)message.sendObject); return; case Commands.UNFOLLOW: var client = (ClientIdentifier)message.sendObject; following.RemoveAll(arg => client.serverID == arg.serverID); return; } } if (data is Authentication) { Authentication = (Authentication)data; if (!server.validUser(Authentication)) { server.exception(identifier, "Client has given wrong username/password"); sendData(Commands.AUTHENTICATIONDENIED); // breakConnection(); return; } if (server.inUse(Authentication)) { server.exception(identifier, "login details are already in use"); sendData(Commands.AUTHENTICATIONINUSE); // breakConnection(); return; } if (Authentication.rights == Authentication.Rights.UNKNOWN) { Authentication.rights = server.getCorrespondingRights(Authentication); server.exception(identifier, "Client rights don't correspond with server details: UKNOWN vs " + Authentication.rights + " [savely replaced]"); sendData(new Message(Commands.AUTHENTICATIONRIGHTSINCORRECT, Authentication)); } if ((Authentication.rights != server.getCorrespondingRights(Authentication)) || (server.getCorrespondingRights(Authentication) == Authentication.Rights.BANNED)) { server.exception(identifier, "Client rights don't correspond with server details:" + Authentication.rights); sendData(Commands.AUTHENTICATIONRIGHTSINCORRECT); return; } identifier.rights = Authentication.rights; sendData(Commands.AUTHENTICATIONCORRECT); server.exception(identifier, "Client registered!"); server.registerServer(this); return; } if (identifier.serverID != -1) { server.parseData(this, data); } }