com.pegacat.vcf.data
Class DataLayer

java.lang.Object
  |
  +--com.pegacat.vcf.data.DataLayer

public class DataLayer
extends java.lang.Object

The DataLayer provides a common access point for all the different objects in the Voyager universe.


Field Summary
static double CURRENT_DATE
           
protected  double currentTurn
           
static boolean debug
           
protected  int empireNumber
           
static int FAR_STAR
           
protected  int homeStar
           
static int MAIN_STAR
           
static int NEAR_STAR
           
static double NO_DATE
           
protected  Loader.Watcher watcher
           
static double ZERO_DATE
           
 
Constructor Summary
DataLayer()
           
 
Method Summary
 VoyagerText getAllSurveys()
           
 VoyagerText getAllTech()
           
 VoyagerText getCargoReport()
           
 double getCurrentTurn()
          Insert the method's description here.
 int getEmpireNumber()
          Insert the method's description here.
 int getGameNumber()
           
 int getHomeStar()
          Insert the method's description here.
 VoyagerText getNewSurveys()
           
 VoyagerText getNewTech()
           
 VoyagerText getObjectTree()
           
 int getPlayerNumber()
           
 VoyagerText getPopSurveys()
           
 VoyagerText getRaceDesc()
           
 VoyagerText getRawStars()
           
 VoyagerText getReport()
           
 Star getStar(int no)
          get a star by star number.
 Star[] getStars()
           
 VoyagerText getSummary()
           
 int getTurnNumber()
           
 boolean isConnected()
           
 void loadOffline(java.io.File gameDirectory)
           
 void loadWeb(java.net.URL server, int gameNo, java.lang.String user, java.lang.String password, boolean useCache)
          This establishes a connection to the voyager server, and slurps the data (using the WebLoader to load all the data).
 void parseAllData()
          This method is run *after* all the data has been loaded.
 void parseObjectTree()
          Parses the object tree, creating a complete listing of all ships, reus, hulks, etc.
 void parseSurveys()
          Insert the method's description here.
 void registerLoadWatcher(Loader.Watcher watch)
          Registers a gui feedback agent to let the user know how downloads are going.
 void reload(java.net.URL voyagerURL)
          Forces all data to be reloaded from the server, clearing any previously cached data.
 void setAllSurveys(VoyagerText data)
           
 void setAllTech(VoyagerText data)
           
 void setCargoReport(VoyagerText data)
           
 void setCurrentTurn(double newCurrentTurn)
          Insert the method's description here.
 void setEmpireNumber(int newEmpireNumber)
          Insert the method's description here.
 void setHomeStar(int newHomeStar)
          Insert the method's description here.
 void setNewSurveys(VoyagerText data)
           
 void setNewTech(VoyagerText data)
           
 void setObjectTree(VoyagerText data)
           
 void setPopSurveys(VoyagerText data)
           
 void setRaceDesc(VoyagerText data)
           
 void setRawStars(VoyagerText data)
           
 void setReport(VoyagerText data)
           
 void setStars(Star[] starList)
           
 void setSummary(VoyagerText data)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

watcher

protected Loader.Watcher watcher

debug

public static boolean debug

CURRENT_DATE

public static final double CURRENT_DATE

FAR_STAR

public static final int FAR_STAR

MAIN_STAR

public static final int MAIN_STAR

NEAR_STAR

public static final int NEAR_STAR

NO_DATE

public static final double NO_DATE

ZERO_DATE

public static final double ZERO_DATE

currentTurn

protected double currentTurn

empireNumber

protected int empireNumber

homeStar

protected int homeStar
Constructor Detail

DataLayer

public DataLayer()
Method Detail

registerLoadWatcher

public void registerLoadWatcher(Loader.Watcher watch)
Registers a gui feedback agent to let the user know how downloads are going.

loadOffline

public void loadOffline(java.io.File gameDirectory)

reload

public void reload(java.net.URL voyagerURL)
            throws java.net.MalformedURLException,
                   java.net.ProtocolException
Forces all data to be reloaded from the server, clearing any previously cached data.

loadWeb

public void loadWeb(java.net.URL server,
                    int gameNo,
                    java.lang.String user,
                    java.lang.String password,
                    boolean useCache)
             throws java.net.ProtocolException
This establishes a connection to the voyager server, and slurps the data (using the WebLoader to load all the data).
Parameters:
server - the voyager server -> e.g. http://64.81.247.78/voyager
gameNumber - the current game number (e.g. '57')
user - the (pre registered) user name (e.g. 'Captain Kirk')
password - the corresponding user password.
useCache - whether to force a reload if this turn has already been cached.

isConnected

public boolean isConnected()

getSummary

public VoyagerText getSummary()

getReport

public VoyagerText getReport()

getPopSurveys

public VoyagerText getPopSurveys()

getCargoReport

public VoyagerText getCargoReport()

getAllSurveys

public VoyagerText getAllSurveys()

getNewSurveys

public VoyagerText getNewSurveys()

getAllTech

public VoyagerText getAllTech()

getNewTech

public VoyagerText getNewTech()

getRaceDesc

public VoyagerText getRaceDesc()

getRawStars

public VoyagerText getRawStars()

getObjectTree

public VoyagerText getObjectTree()

getStars

public Star[] getStars()

getStar

public Star getStar(int no)
get a star by star number.

fixed by Korny to actually use the real star number, not a random array index which causes endless off-by-one errors and the like.


setSummary

public void setSummary(VoyagerText data)

setReport

public void setReport(VoyagerText data)

setPopSurveys

public void setPopSurveys(VoyagerText data)

setCargoReport

public void setCargoReport(VoyagerText data)

setAllSurveys

public void setAllSurveys(VoyagerText data)

setNewSurveys

public void setNewSurveys(VoyagerText data)

setAllTech

public void setAllTech(VoyagerText data)

setNewTech

public void setNewTech(VoyagerText data)

setRaceDesc

public void setRaceDesc(VoyagerText data)

setRawStars

public void setRawStars(VoyagerText data)

setObjectTree

public void setObjectTree(VoyagerText data)

setStars

public void setStars(Star[] starList)

getGameNumber

public int getGameNumber()

getPlayerNumber

public int getPlayerNumber()

getTurnNumber

public int getTurnNumber()

parseAllData

public void parseAllData()
This method is run *after* all the data has been loaded. It runs all the parse functions used to create all the processed voyager objects (ships, worlds, REUs, etc. etc. etc. ). Note that some of the parse functions make use of multiple raw VoyagerText files (so they'd better have all been loaded!).

parseSurveys

public void parseSurveys()
Insert the method's description here. Creation date: (22/05/2001 7:36:15 PM)

parseObjectTree

public void parseObjectTree()
Parses the object tree, creating a complete listing of all ships, reus, hulks, etc. etc. etc., and their positions.

getCurrentTurn

public double getCurrentTurn()
Insert the method's description here. Creation date: (10/06/2001 2:58:43 PM)
Returns:
double

getEmpireNumber

public int getEmpireNumber()
Insert the method's description here. Creation date: (10/06/2001 2:53:38 PM)
Returns:
int

setCurrentTurn

public void setCurrentTurn(double newCurrentTurn)
Insert the method's description here. Creation date: (10/06/2001 2:58:43 PM)
Parameters:
newCurrentTurn - double

setEmpireNumber

public void setEmpireNumber(int newEmpireNumber)
Insert the method's description here. Creation date: (10/06/2001 2:53:38 PM)
Parameters:
newEmpireNumber - int

getHomeStar

public int getHomeStar()
Insert the method's description here. Creation date: (19/06/2001 6:33:25 PM)
Returns:
int

setHomeStar

public void setHomeStar(int newHomeStar)
Insert the method's description here. Creation date: (19/06/2001 6:33:25 PM)
Parameters:
newHomeStar - int