JSettlers v1.0.6 API
Built ${date}

soc.server.database
Class SOCDBHelper

java.lang.Object
  extended bysoc.server.database.SOCDBHelper

public class SOCDBHelper
extends java.lang.Object

This code assumes that you're using mySQL as your database. It uses a database created with the following commands: CREATE DATABASE socdata; USE socdata; CREATE TABLE users (nickname VARCHAR(20), host VARCHAR(50), password VARCHAR(20), email VARCHAR(50), lastlogin DATE); CREATE TABLE logins (nickname VARCHAR(20), host VARCHAR(50), lastlogin DATE); CREATE TABLE games (gamename VARCHAR(20), player1 VARCHAR(20), player2 VARCHAR(20), player3 VARCHAR(20), player4 VARCHAR(20), score1 TINYINT, score2 TINYINT, score3 TINYINT, score4 TINYINT, starttime TIMESTAMP); CREATE TABLE robotparams (robotname VARCHAR(20), maxgamelength INT, maxeta INT, etabonusfactor FLOAT, adversarialfactor FLOAT, leaderadversarialfactor FLOAT, devcardmultiplier FLOAT, threatmultiplier FLOAT, strategytype INT, starttime TIMESTAMP, endtime TIMESTAMP, gameswon INT, gameslost INT, tradeFlag BOOL);


Constructor Summary
SOCDBHelper()
           
 
Method Summary
static void cleanup()
          DOCUMENT ME!
static boolean createAccount(java.lang.String userName, java.lang.String host, java.lang.String password, java.lang.String email, long time)
          DOCUMENT ME!
static java.lang.String getUserFromHost(java.lang.String host)
          DOCUMENT ME!
static java.lang.String getUserPassword(java.lang.String sUserName)
          DOCUMENT ME!
static void initialize(java.lang.String user, java.lang.String pswd)
          This makes a connection to the database and initializes the prepared statements.
static boolean recordLogin(java.lang.String userName, java.lang.String host, long time)
          DOCUMENT ME!
static SOCRobotParameters retrieveRobotParams(java.lang.String robotName)
          DOCUMENT ME!
static boolean saveGameScores(java.lang.String gameName, java.lang.String player1, java.lang.String player2, java.lang.String player3, java.lang.String player4, short score1, short score2, short score3, short score4, java.util.Date startTime)
          DOCUMENT ME!
static boolean updateLastlogin(java.lang.String userName, long time)
          DOCUMENT ME!
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SOCDBHelper

public SOCDBHelper()
Method Detail

initialize

public static void initialize(java.lang.String user,
                              java.lang.String pswd)
                       throws java.sql.SQLException
This makes a connection to the database and initializes the prepared statements.

Parameters:
user - the user name for accessing the database
pswd - the password for the user
Returns:
true if the database was initialized
Throws:
java.sql.SQLException - if an SQL command fails, or the db couldn't be initialied

getUserPassword

public static java.lang.String getUserPassword(java.lang.String sUserName)
                                        throws java.sql.SQLException
DOCUMENT ME!

Parameters:
sUserName - DOCUMENT ME!
Returns:
null if user account doesn't exist
Throws:
java.sql.SQLException - DOCUMENT ME!

getUserFromHost

public static java.lang.String getUserFromHost(java.lang.String host)
                                        throws java.sql.SQLException
DOCUMENT ME!

Parameters:
host - DOCUMENT ME!
Returns:
null if user is not authenticated
Throws:
java.sql.SQLException - DOCUMENT ME!

createAccount

public static boolean createAccount(java.lang.String userName,
                                    java.lang.String host,
                                    java.lang.String password,
                                    java.lang.String email,
                                    long time)
                             throws java.sql.SQLException
DOCUMENT ME!

Parameters:
userName - DOCUMENT ME!
host - DOCUMENT ME!
password - DOCUMENT ME!
email - DOCUMENT ME!
time - DOCUMENT ME!
Returns:
true if the account was created
Throws:
java.sql.SQLException - DOCUMENT ME!

recordLogin

public static boolean recordLogin(java.lang.String userName,
                                  java.lang.String host,
                                  long time)
                           throws java.sql.SQLException
DOCUMENT ME!

Parameters:
userName - DOCUMENT ME!
host - DOCUMENT ME!
time - DOCUMENT ME!
Returns:
true if the login was recorded
Throws:
java.sql.SQLException - DOCUMENT ME!

updateLastlogin

public static boolean updateLastlogin(java.lang.String userName,
                                      long time)
                               throws java.sql.SQLException
DOCUMENT ME!

Parameters:
userName - DOCUMENT ME!
time - DOCUMENT ME!
Returns:
true if the save succeeded
Throws:
java.sql.SQLException - DOCUMENT ME!

saveGameScores

public static boolean saveGameScores(java.lang.String gameName,
                                     java.lang.String player1,
                                     java.lang.String player2,
                                     java.lang.String player3,
                                     java.lang.String player4,
                                     short score1,
                                     short score2,
                                     short score3,
                                     short score4,
                                     java.util.Date startTime)
                              throws java.sql.SQLException
DOCUMENT ME!

Parameters:
gameName - DOCUMENT ME!
player1 - DOCUMENT ME!
player2 - DOCUMENT ME!
player3 - DOCUMENT ME!
player4 - DOCUMENT ME!
score1 - DOCUMENT ME!
score2 - DOCUMENT ME!
score3 - DOCUMENT ME!
score4 - DOCUMENT ME!
startTime - DOCUMENT ME!
Returns:
true if the save succeeded
Throws:
java.sql.SQLException - DOCUMENT ME!

retrieveRobotParams

public static SOCRobotParameters retrieveRobotParams(java.lang.String robotName)
                                              throws java.sql.SQLException
DOCUMENT ME!

Parameters:
robotName - DOCUMENT ME!
Returns:
null if robotName not in database
Throws:
java.sql.SQLException - DOCUMENT ME!

cleanup

public static void cleanup()
                    throws java.sql.SQLException
DOCUMENT ME!

Throws:
java.sql.SQLException

JSettlers v1.0.6 API
Built ${date}