Server Class Reference

Abstract baseclass that is used to implement a server protocol. More...

#include <server.h>

Inherits iNetClass.

Inherited by TASServer.

Collaboration diagram for Server:
Collaboration graph
[legend]

Data Structures

struct  UiServerData

Public Types

enum  PortTestCode {
  porttest_pass_WX26 = 0, porttest_pass = 1, porttest_timeout = 2, porttest_socketNotOk = 3,
  porttest_socketError = 4, porttest_unreachable = 5
}

Public Member Functions

 Server ()
virtual ~Server ()
virtual bool ExecuteSayCommand (const wxString &cmd)=0
virtual bool Register (const wxString &addr, const int port, const wxString &nick, const wxString &password, wxString &reason)=0
virtual void AcceptAgreement ()=0
virtual void Connect (const wxString &servername, const wxString &addr, const int port)=0
virtual void Disconnect ()=0
virtual bool IsConnected ()=0
virtual void Login ()=0
virtual void Logout ()=0
virtual bool IsOnline () const =0
virtual void Update (int mselapsed)=0
virtual void JoinChannel (const wxString &channel, const wxString &key)=0
virtual void PartChannel (const wxString &channel)=0
virtual void DoActionChannel (const wxString &channel, const wxString &msg)=0
virtual void SayChannel (const wxString &channel, const wxString &msg)=0
virtual void SayPrivate (const wxString &nick, const wxString &msg)=0
virtual void DoActionPrivate (const wxString &nick, const wxString &msg)=0
virtual void SayBattle (int battleid, const wxString &msg)=0
virtual void DoActionBattle (int battleid, const wxString &msg)=0
virtual void Ring (const wxString &nick)=0
virtual void ModeratorSetChannelTopic (const wxString &channel, const wxString &topic)=0
virtual void ModeratorSetChannelKey (const wxString &channel, const wxString &key)=0
virtual void ModeratorMute (const wxString &channel, const wxString &nick, int duration, bool byip)=0
virtual void ModeratorUnmute (const wxString &channel, const wxString &nick)=0
virtual void ModeratorKick (const wxString &channel, const wxString &reason)=0
virtual void ModeratorBan (const wxString &nick, bool byip)=0
virtual void ModeratorUnban (const wxString &nick)=0
virtual void ModeratorGetIP (const wxString &nick)=0
virtual void ModeratorGetLastLogin (const wxString &nick)=0
virtual void ModeratorGetLastIP (const wxString &nick)=0
virtual void ModeratorFindByIP (const wxString &ipadress)=0
virtual void AdminGetAccountAccess (const wxString &nick)=0
virtual void AdminChangeAccountAccess (const wxString &nick, const wxString &accesscode)=0
virtual void AdminSetBotMode (const wxString &nick, bool isbot)=0
virtual void HostBattle (BattleOptions bo, const wxString &password=_T(""))=0
virtual void JoinBattle (const int &battleid, const wxString &password=_T(""))=0
virtual void LeaveBattle (const int &battleid)=0
virtual void StartHostedBattle ()=0
virtual void ForceSide (int battleid, User &user, int side)=0
virtual void ForceTeam (int battleid, User &user, int team)=0
virtual void ForceAlly (int battleid, User &user, int ally)=0
virtual void ForceColour (int battleid, User &user, const wxColour &col)=0
virtual void ForceSpectator (int battleid, User &user, bool spectator)=0
virtual void BattleKickPlayer (int battleid, User &user)=0
virtual void SetHandicap (int battleid, User &user, int handicap)=0
virtual void AddBot (int battleid, const wxString &nick, UserBattleStatus &status)=0
virtual void RemoveBot (int battleid, User &user)=0
virtual void UpdateBot (int battleid, User &user, UserBattleStatus &status)=0
virtual void SendHostInfo (HostInfo update)=0
virtual void SendHostInfo (const wxString &Tag)=0
virtual void SendRaw (const wxString &raw)=0
virtual void SendUserPosition (const User &usr)=0
virtual void RequestInGameTime (const wxString &nick)=0
virtual BattleGetCurrentBattle ()=0
virtual void RequestChannels ()=0
virtual void SendMyBattleStatus (UserBattleStatus &bs)=0
virtual void SendMyUserStatus ()=0
virtual void SetKeepaliveInterval (int seconds)
virtual int GetKeepaliveInterval ()
virtual void SetUsername (const wxString &username)
virtual void SetPassword (const wxString &password)
virtual bool IsPasswordHash (const wxString &pass) const =0
virtual wxString GetPasswordHash (const wxString &pass) const =0
wxString GetRequiredSpring () const
void SetRequiredSpring (const wxString &version)
virtual void OnConnected (Socket *sock)=0
virtual void OnDisconnected (Socket *sock)=0
virtual void OnDataReceived (Socket *sock)=0
virtual void OnDisconnected ()
virtual const UserGetMe () const =0
virtual UserGetMe ()=0
UserGetUser (const wxString &nickname) const
bool UserExists (const wxString &nickname) const
ChannelGetChannel (const wxString &name)
int GetNumChannels () const
ChannelGetChannel (const int &index)
bool ChannelExists (const wxString &name) const
BattleGetBattle (const int &battleid)
bool BattleExists (const int &battleid) const
virtual int TestOpenPort (unsigned int port) const =0
virtual void SendScriptToProxy (const wxString &script)=0
virtual void SendScriptToClients (const wxString &script)=0
const UserListGetUserList () const
 channel name -> password, filled on channel join
unsigned int GetNumUsers () const
wxString GetServerName () const
virtual void RequestSpringUpdate ()
virtual void SetRelayIngamePassword (const User &user)=0
virtual wxArrayString GetRelayHostList ()
virtual void Ping ()=0

Data Fields

UiServerData uidata
BattleList_Iter *const battles_iter
std::map< wxString, wxStringm_channel_pw

Protected Member Functions

User_AddUser (const wxString &user)
void _RemoveUser (const wxString &nickname)
Channel_AddChannel (const wxString &chan)
void _RemoveChannel (const wxString &name)
Battle_AddBattle (const int &id)
void _RemoveBattle (const int &id)
virtual void SendCmd (const wxString &command, const wxString &param)=0
virtual void RelayCmd (const wxString &command, const wxString &param)=0

Protected Attributes

Socketm_sock
int m_keepalive
wxString m_user
wxString m_pass
wxString m_server_name
bool m_pass_hash
wxString m_required_spring_ver
ChannelList m_channels
UserList m_users
BattleList m_battles
wxString m_relay_host_bot
wxString m_relay_host_manager
wxArrayString m_relay_host_manager_list

Static Protected Attributes

static const unsigned int PING_TIMEOUT = 40

Friends

class ServerEvents
class SimpleServerEvents

Detailed Description

Abstract baseclass that is used to implement a server protocol.

Definition at line 30 of file server.h.


Member Enumeration Documentation

Enumerator:
porttest_pass_WX26 
porttest_pass 
porttest_timeout 
porttest_socketNotOk 
porttest_socketError 
porttest_unreachable 

Definition at line 36 of file server.h.


Constructor & Destructor Documentation

Server::Server (  ) 

Definition at line 19 of file server.cpp.

Server::~Server (  )  [virtual]

Definition at line 26 of file server.cpp.


Member Function Documentation

Battle & Server::_AddBattle ( const int &  id  )  [protected]

Definition at line 128 of file server.cpp.

Channel & Server::_AddChannel ( const wxString chan  )  [protected]

Definition at line 109 of file server.cpp.

User & Server::_AddUser ( const wxString user  )  [protected]

Definition at line 83 of file server.cpp.

void Server::_RemoveBattle ( const int &  id  )  [protected]

Definition at line 138 of file server.cpp.

void Server::_RemoveChannel ( const wxString name  )  [protected]

Definition at line 120 of file server.cpp.

void Server::_RemoveUser ( const wxString nickname  )  [protected]

Definition at line 92 of file server.cpp.

virtual void Server::AcceptAgreement (  )  [pure virtual]

Implemented in TASServer.

virtual void Server::AddBot ( int  battleid,
const wxString nick,
UserBattleStatus status 
) [pure virtual]

Implemented in TASServer.

virtual void Server::AdminChangeAccountAccess ( const wxString nick,
const wxString accesscode 
) [pure virtual]

Implemented in TASServer.

virtual void Server::AdminGetAccountAccess ( const wxString nick  )  [pure virtual]

Implemented in TASServer.

virtual void Server::AdminSetBotMode ( const wxString nick,
bool  isbot 
) [pure virtual]

Implemented in TASServer.

bool Server::BattleExists ( const int &  battleid  )  const

Definition at line 76 of file server.cpp.

virtual void Server::BattleKickPlayer ( int  battleid,
User user 
) [pure virtual]

Implemented in TASServer.

bool Server::ChannelExists ( const wxString name  )  const

Definition at line 64 of file server.cpp.

virtual void Server::Connect ( const wxString servername,
const wxString addr,
const int  port 
) [pure virtual]

Implemented in TASServer.

virtual void Server::Disconnect (  )  [pure virtual]

Implemented in TASServer.

virtual void Server::DoActionBattle ( int  battleid,
const wxString msg 
) [pure virtual]

Implemented in TASServer.

virtual void Server::DoActionChannel ( const wxString channel,
const wxString msg 
) [pure virtual]

Implemented in TASServer.

virtual void Server::DoActionPrivate ( const wxString nick,
const wxString msg 
) [pure virtual]

Implemented in TASServer.

virtual bool Server::ExecuteSayCommand ( const wxString cmd  )  [pure virtual]

Implemented in TASServer.

virtual void Server::ForceAlly ( int  battleid,
User user,
int  ally 
) [pure virtual]

Implemented in TASServer.

virtual void Server::ForceColour ( int  battleid,
User user,
const wxColour &  col 
) [pure virtual]

Implemented in TASServer.

virtual void Server::ForceSide ( int  battleid,
User user,
int  side 
) [pure virtual]

Implemented in TASServer.

virtual void Server::ForceSpectator ( int  battleid,
User user,
bool  spectator 
) [pure virtual]

Implemented in TASServer.

virtual void Server::ForceTeam ( int  battleid,
User user,
int  team 
) [pure virtual]

Implemented in TASServer.

Battle & Server::GetBattle ( const int &  battleid  ) 

Definition at line 70 of file server.cpp.

Channel & Server::GetChannel ( const int &  index  ) 

Definition at line 58 of file server.cpp.

Channel & Server::GetChannel ( const wxString name  ) 

Definition at line 46 of file server.cpp.

virtual Battle* Server::GetCurrentBattle (  )  [pure virtual]

Implemented in TASServer.

virtual int Server::GetKeepaliveInterval (  )  [inline, virtual]

Definition at line 136 of file server.h.

virtual User& Server::GetMe (  )  [pure virtual]

Implemented in TASServer.

virtual const User& Server::GetMe (  )  const [pure virtual]

Implemented in TASServer.

int Server::GetNumChannels (  )  const

Definition at line 52 of file server.cpp.

unsigned int Server::GetNumUsers (  )  const [inline]

Definition at line 179 of file server.h.

virtual wxString Server::GetPasswordHash ( const wxString pass  )  const [pure virtual]

Implemented in TASServer.

wxArrayString Server::GetRelayHostList (  )  [virtual]

Reimplemented in TASServer.

Definition at line 184 of file server.cpp.

wxString Server::GetRequiredSpring (  )  const [inline]

Definition at line 143 of file server.h.

wxString Server::GetServerName (  )  const [inline]

Definition at line 181 of file server.h.

User & Server::GetUser ( const wxString nickname  )  const

Definition at line 34 of file server.cpp.

const UserList& Server::GetUserList (  )  const [inline]

channel name -> password, filled on channel join

used to fill userlist in groupuserdialog

Definition at line 177 of file server.h.

virtual void Server::HostBattle ( BattleOptions  bo,
const wxString password = _T("") 
) [pure virtual]

Implemented in TASServer.

virtual bool Server::IsConnected (  )  [pure virtual]

Implemented in TASServer.

virtual bool Server::IsOnline (  )  const [pure virtual]

Implemented in TASServer.

virtual bool Server::IsPasswordHash ( const wxString pass  )  const [pure virtual]

Implemented in TASServer.

virtual void Server::JoinBattle ( const int &  battleid,
const wxString password = _T("") 
) [pure virtual]

Implemented in TASServer.

virtual void Server::JoinChannel ( const wxString channel,
const wxString key 
) [pure virtual]

Implemented in TASServer.

virtual void Server::LeaveBattle ( const int &  battleid  )  [pure virtual]

Implemented in TASServer.

virtual void Server::Login (  )  [pure virtual]

Implemented in TASServer.

virtual void Server::Logout (  )  [pure virtual]

Implemented in TASServer.

virtual void Server::ModeratorBan ( const wxString nick,
bool  byip 
) [pure virtual]

Implemented in TASServer.

virtual void Server::ModeratorFindByIP ( const wxString ipadress  )  [pure virtual]

Implemented in TASServer.

virtual void Server::ModeratorGetIP ( const wxString nick  )  [pure virtual]

Implemented in TASServer.

virtual void Server::ModeratorGetLastIP ( const wxString nick  )  [pure virtual]

Implemented in TASServer.

virtual void Server::ModeratorGetLastLogin ( const wxString nick  )  [pure virtual]

Implemented in TASServer.

virtual void Server::ModeratorKick ( const wxString channel,
const wxString reason 
) [pure virtual]

Implemented in TASServer.

virtual void Server::ModeratorMute ( const wxString channel,
const wxString nick,
int  duration,
bool  byip 
) [pure virtual]

Implemented in TASServer.

virtual void Server::ModeratorSetChannelKey ( const wxString channel,
const wxString key 
) [pure virtual]

Implemented in TASServer.

virtual void Server::ModeratorSetChannelTopic ( const wxString channel,
const wxString topic 
) [pure virtual]

Implemented in TASServer.

virtual void Server::ModeratorUnban ( const wxString nick  )  [pure virtual]

Implemented in TASServer.

virtual void Server::ModeratorUnmute ( const wxString channel,
const wxString nick 
) [pure virtual]

Implemented in TASServer.

virtual void Server::OnConnected ( Socket sock  )  [pure virtual]

Implements iNetClass.

Implemented in TASServer.

virtual void Server::OnDataReceived ( Socket sock  )  [pure virtual]

Implements iNetClass.

Implemented in TASServer.

void Server::OnDisconnected (  )  [virtual]

Definition at line 147 of file server.cpp.

virtual void Server::OnDisconnected ( Socket sock  )  [pure virtual]

Implements iNetClass.

Implemented in TASServer.

virtual void Server::PartChannel ( const wxString channel  )  [pure virtual]

Implemented in TASServer.

virtual void iNetClass::Ping (  )  [pure virtual, inherited]

Implemented in FakeNetClass, TASServer, and PlasmaInterface.

virtual bool Server::Register ( const wxString addr,
const int  port,
const wxString nick,
const wxString password,
wxString reason 
) [pure virtual]

Implemented in TASServer.

virtual void Server::RelayCmd ( const wxString command,
const wxString param 
) [protected, pure virtual]

Implemented in TASServer.

virtual void Server::RemoveBot ( int  battleid,
User user 
) [pure virtual]

Implemented in TASServer.

virtual void Server::RequestChannels (  )  [pure virtual]

Implemented in TASServer.

virtual void Server::RequestInGameTime ( const wxString nick  )  [pure virtual]

Implemented in TASServer.

void Server::RequestSpringUpdate (  )  [virtual]

Reimplemented in TASServer.

Definition at line 180 of file server.cpp.

virtual void Server::Ring ( const wxString nick  )  [pure virtual]

Implemented in TASServer.

virtual void Server::SayBattle ( int  battleid,
const wxString msg 
) [pure virtual]

Implemented in TASServer.

virtual void Server::SayChannel ( const wxString channel,
const wxString msg 
) [pure virtual]

Implemented in TASServer.

virtual void Server::SayPrivate ( const wxString nick,
const wxString msg 
) [pure virtual]

Implemented in TASServer.

virtual void Server::SendCmd ( const wxString command,
const wxString param 
) [protected, pure virtual]

Implemented in TASServer.

virtual void Server::SendHostInfo ( const wxString Tag  )  [pure virtual]

Implemented in TASServer.

virtual void Server::SendHostInfo ( HostInfo  update  )  [pure virtual]

Implemented in TASServer.

virtual void Server::SendMyBattleStatus ( UserBattleStatus bs  )  [pure virtual]

Implemented in TASServer.

virtual void Server::SendMyUserStatus (  )  [pure virtual]

Implemented in TASServer.

virtual void Server::SendRaw ( const wxString raw  )  [pure virtual]

Implemented in TASServer.

virtual void Server::SendScriptToClients ( const wxString script  )  [pure virtual]

Implemented in TASServer.

virtual void Server::SendScriptToProxy ( const wxString script  )  [pure virtual]

Implemented in TASServer.

virtual void Server::SendUserPosition ( const User usr  )  [pure virtual]

Implemented in TASServer.

virtual void Server::SetHandicap ( int  battleid,
User user,
int  handicap 
) [pure virtual]

Implemented in TASServer.

virtual void Server::SetKeepaliveInterval ( int  seconds  )  [inline, virtual]

Definition at line 135 of file server.h.

virtual void Server::SetPassword ( const wxString password  )  [inline, virtual]

Definition at line 139 of file server.h.

virtual void Server::SetRelayIngamePassword ( const User user  )  [pure virtual]

Implemented in TASServer.

void Server::SetRequiredSpring ( const wxString version  )  [inline]

Definition at line 145 of file server.h.

virtual void Server::SetUsername ( const wxString username  )  [inline, virtual]

Definition at line 138 of file server.h.

virtual void Server::StartHostedBattle (  )  [pure virtual]

Implemented in TASServer.

virtual int Server::TestOpenPort ( unsigned int  port  )  const [pure virtual]

Implemented in TASServer.

virtual void Server::Update ( int  mselapsed  )  [pure virtual]

Implemented in TASServer.

virtual void Server::UpdateBot ( int  battleid,
User user,
UserBattleStatus status 
) [pure virtual]

Implemented in TASServer.

bool Server::UserExists ( const wxString nickname  )  const

Definition at line 40 of file server.cpp.


Friends And Related Function Documentation

friend class ServerEvents [friend]

Definition at line 33 of file server.h.

friend class SimpleServerEvents [friend]

Definition at line 34 of file server.h.


Field Documentation

Definition at line 153 of file server.h.

Definition at line 200 of file server.h.

Definition at line 174 of file server.h.

Definition at line 198 of file server.h.

int Server::m_keepalive [protected]

Definition at line 191 of file server.h.

wxString Server::m_pass [protected]

Definition at line 193 of file server.h.

bool Server::m_pass_hash [protected]

Definition at line 195 of file server.h.

Definition at line 202 of file server.h.

Definition at line 203 of file server.h.

wxArrayString Server::m_relay_host_manager_list [protected]

Reimplemented in TASServer.

Definition at line 205 of file server.h.

Definition at line 196 of file server.h.

Definition at line 194 of file server.h.

Socket* Server::m_sock [protected]

Definition at line 190 of file server.h.

wxString Server::m_user [protected]

Definition at line 192 of file server.h.

Definition at line 199 of file server.h.

const unsigned int Server::PING_TIMEOUT = 40 [static, protected]

Definition at line 216 of file server.h.

Definition at line 50 of file server.h.


The documentation for this class was generated from the following files:

Generated on Thu Dec 29 00:11:48 2011 for SpringLobby by doxygen 1.6.3