Uses of Interface
jfreerails.world.common.FreerailsSerializable

Packages that use FreerailsSerializable
jfreerails.client.view Provides classes that make up the jfreerails client user interface that is implemented using Swing components. 
jfreerails.controller Provides classes that may be used by the client or the server to operate on the game world, for example, building trains and stations. 
jfreerails.move Provides classes that encapsulate changes to the game world. 
jfreerails.network Provides classes for sending moves and commands between the client and server. 
jfreerails.world.accounts Provides classes to record a players assets (for example, real estate, miles-of-track, cash, and shares) and liabilities (for example, outstanding shares and bonds, and any overdraft). 
jfreerails.world.cargo Provides classes that represent the cargo carried by trains. 
jfreerails.world.common Provides a space to put classes that can be imported by classes in any of the other jfreerails.world packages. 
jfreerails.world.player   
jfreerails.world.station Provides classes that represent stations and their properties, such as station improvements and supply and demand for different cargos. 
jfreerails.world.terrain Provides classes that represent terrain and its properties such as right-of-way cost and supply and demand for cargo. 
jfreerails.world.top Provides a space to put classes that depend on classes from several other jfreerails.world packages. 
jfreerails.world.track Provides classes that represent track and its properties. 
jfreerails.world.train Provides classes that represent trains and their properties including train movements. 
 

Uses of FreerailsSerializable in jfreerails.client.view
 

Fields in jfreerails.client.view declared as FreerailsSerializable
private  FreerailsSerializable StationInfoJPanel.lastCargoBundle
           
private  FreerailsSerializable TrainDescriptionJPanel.lastCargoBundle
           
private  FreerailsSerializable TrainDescriptionJPanel.lastTrain
           
 

Uses of FreerailsSerializable in jfreerails.controller
 

Subinterfaces of FreerailsSerializable in jfreerails.controller
 interface Message2Client
          Defines a command sent from the server to the client.
 interface Message2Server
          Defines a command sent from a client to the server.
 interface PreMove
          Defines a method that generates a move based on the state of the world object.
 

Classes in jfreerails.controller that implement FreerailsSerializable
 class AddStationPreMove
          Generates a move that adds or upgrades a station.
 class AddTrainPreMove
           
 class MessageStatus
          An instance of this class is returned to the client (the server) when a Message2Server (Message2Client) is executed by the server (the client).
 class MoveTrainPreMove
          Generates moves for changes in train position and stops at stations.
 class PreMoveStatus
          Records the success or failure of an attempt to execute a move.
 class TimeTickPreMove
          Generates a TimeTickMove.
 

Uses of FreerailsSerializable in jfreerails.move
 

Subinterfaces of FreerailsSerializable in jfreerails.move
 interface ListMove
          This interface provides information about changes to the lists in the World database.
 interface MapUpdateMove
          This interface tags Moves that change items on the map and tells the caller which tiles have been updated.
 interface Move
          All moves should implement this interface and obey the contract described below.
 interface TrackMove
          This interface tags Moves that change the track.
 

Classes in jfreerails.move that implement FreerailsSerializable
 class AddActiveEntityMove
          A move that adds an active entity.
 class AddCargoBundleMove
          This Move adds a cargo bundle to the cargo bundle list.
 class AddItemToListMove
          All moves that add an item to a list should extend this class.
 class AddItemToSharedListMove
          All moves that add an item to a shared list should extend this class.
 class AddPlayerMove
          Adds a player to the world.
 class AddStationMove
          This CompositeMoveadds a station to the station list and adds a cargo bundle (to store the cargo waiting at the station) to the cargo bundle list.
 class AddTransactionMove
          This Move adds a Transaction to a players bank account on the World object.
 class ChangeCargoBundleMove
          This Move changes a cargo bundle (cargo bundles are used to represent the cargo carried by trains and the cargo waiting at stations).
 class ChangeGameSpeedMove
          Changes the game speed item on the world object.
 class ChangeItemInListMove
          All Moves that replace an item in a list with another should extend this class.
 class ChangeProductionAtEngineShopMove
          This Move changes what is being built at an engine shop - when a client wants to build a train, it should send an instance of this class to the server.
 class ChangeStationMove
          This Move changes the properties of a station.
 class ChangeTileMove
          Move that changes a single tile.
 class ChangeTrackPieceCompositeMove
          This Move changes adds, removes, or upgrades the track between two tiles.
 class ChangeTrackPieceMove
          This Move adds, removes, or upgrades the track on a single tile.
 class ChangeTrainMove
          This Move can change a train's engine and wagons.
 class ChangeTrainScheduleMove
          This Move changes a train's schedule.
 class CompositeMove
          This Move may be subclassed to create a move composed of a number of component Moves where atomicity of the move is required.
 class MoveStatus
          Records the success or failure of an attempt to execute a move.
 class NextActivityMove
           
 class RemoveCargoBundleMove
          This move removes a cargo bundle from the cargo bundle list.
 class RemoveItemFromListMove
          All moves that remove an item from a list should extend this class.
 class RemoveStationMove
          This Move removes a station from the station list and from the map.
 class RemoveTrainMove
          This Move removes a train from the list of trains, and the corresponding CargoBundle and Schedule.
 class TimeTickMove
          Changes the time item on the world object.
 class TransferCargoAtStationMove
          This CompositeMove transfers cargo from a train to a station and vice-versa.
 class UndoMove
          Undoes the Move passed to its constructor.
 class UpgradeTrackMove
          This CompositeMove changes the track type at a point on the map and charges the players account for the cost of the change.
 class WorldDiffMove
          A move that makes a number of changes to the map and to the lists.
(package private) static class WorldDiffMove.MapDiff
           
 

Fields in jfreerails.move declared as FreerailsSerializable
private  FreerailsSerializable ChangeItemInListMove.after
           
(package private)  FreerailsSerializable WorldDiffMove.MapDiff.after
           
private  FreerailsSerializable ChangeItemInListMove.before
           
(package private)  FreerailsSerializable WorldDiffMove.MapDiff.before
           
private  FreerailsSerializable AddItemToListMove.item
           
private  FreerailsSerializable AddItemToSharedListMove.item
           
private  FreerailsSerializable RemoveItemFromListMove.item
           
 

Methods in jfreerails.move that return FreerailsSerializable
 FreerailsSerializable AddItemToListMove.getAfter()
           
 FreerailsSerializable AddItemToSharedListMove.getAfter()
           
 FreerailsSerializable ChangeItemInListMove.getAfter()
           
 FreerailsSerializable ListMove.getAfter()
           
 FreerailsSerializable RemoveItemFromListMove.getAfter()
           
 FreerailsSerializable AddItemToListMove.getBefore()
           
 FreerailsSerializable AddItemToSharedListMove.getBefore()
           
 FreerailsSerializable ChangeItemInListMove.getBefore()
           
 FreerailsSerializable ListMove.getBefore()
           
 FreerailsSerializable RemoveItemFromListMove.getBefore()
           
 

Methods in jfreerails.move with parameters of type FreerailsSerializable
protected  void AbstractMoveTestCase.assertSurvivesSerialisation(FreerailsSerializable m)
          This method asserts that if we serialise then deserialise the specified move, the specified move is equal to the deserialised move.
protected  MoveStatus ChangeItemInListMove.move(FreerailsSerializable to, FreerailsSerializable from, World w)
           
protected  MoveStatus ChangeItemInListMove.tryMove(FreerailsSerializable to, FreerailsSerializable from, World w)
           
 

Constructors in jfreerails.move with parameters of type FreerailsSerializable
AddItemToListMove(KEY key, int i, FreerailsSerializable item, FreerailsPrincipal p)
           
AddItemToSharedListMove(SKEY key, int i, FreerailsSerializable item)
           
ChangeItemInListMove(KEY k, int index, FreerailsSerializable before, FreerailsSerializable after, FreerailsPrincipal p)
           
ChangeTrainMove(int index, FreerailsSerializable before, FreerailsSerializable after, FreerailsPrincipal p)
           
RemoveItemFromListMove(KEY k, int i, FreerailsSerializable item, FreerailsPrincipal p)
           
WorldDiffMove.MapDiff(FreerailsSerializable before, FreerailsSerializable after, ImPoint p)
           
 

Uses of FreerailsSerializable in jfreerails.network
 

Classes in jfreerails.network that implement FreerailsSerializable
 class LoadGameMessage2Server
          Request to load a game.
 class LogOnRequest
          A client sends an instance of this class to the server when it wishes to log on.
 class LogOnResponse
          Stores the result of a request to log onto the server.
private static class MovePrecommitter.PreMoveAndMove
           
 class NewGameMessage2Server
          Request to start a game on a new map.
 class RefreshListOfGamesMessage2Server
          Tells the server to check the filesystem for changes to the available new maps and saved games.
 class SaveGameMessage2Server
          A request to save the game.
 class SetPropertyMessage2Client
          A Message2Client that lets the server set a property (for example, the list of saved games available) on a client.
 class SetWorldMessage2Client
          Sent from the server to the client when (i) a new game is started, (ii) a game is loaded, or (iii) the client connects to a game in progress.
 

Fields in jfreerails.network declared as FreerailsSerializable
private  FreerailsSerializable SetPropertyMessage2Client.value
           
 

Fields in jfreerails.network with type parameters of type FreerailsSerializable
private  java.util.LinkedList<FreerailsSerializable> EchoGameServer.messsages2send
           
(package private)  java.util.LinkedList<FreerailsSerializable> MovePrecommitter.precomitted
          List of moves and premoves that have been sent to the server and executed on the local world object.
private  java.util.LinkedList<FreerailsSerializable> SychronizedQueue.queue
           
(package private)  java.util.LinkedList<FreerailsSerializable> MovePrecommitter.uncomitted
          List of moves and premoves that have been sent to the server but not executed on the local world object.
 

Methods in jfreerails.network that return FreerailsSerializable
 FreerailsSerializable SychronizedQueue.getFirst()
           
(package private)  FreerailsSerializable[] AbstractInetConnection.read()
           
(package private)  FreerailsSerializable FreerailsClient.read()
           
 FreerailsSerializable[] SychronizedQueue.read()
           
 FreerailsSerializable[] Connection2Client.readFromClient()
          Returns an array containing all the objects read from the client since the last time this method or waitForObjectFromClient() was called, if no objects have been received, it returns an empty array rather than blocking.
 FreerailsSerializable[] InetConnection2Client.readFromClient()
           
 FreerailsSerializable[] LocalConnection.readFromClient()
           
 FreerailsSerializable[] Connection2Server.readFromServer()
          Returns an array containing all the objects read from the server since the last time this method or waitForObjectFromServer() was called, if no objects have been received, it returns an empty array rather than blocking.
 FreerailsSerializable[] InetConnection2Server.readFromServer()
           
 FreerailsSerializable[] LocalConnection.readFromServer()
           
(package private)  FreerailsSerializable InetConnection.receive()
           
(package private)  FreerailsSerializable AbstractInetConnection.waitForObject()
           
 FreerailsSerializable Connection2Client.waitForObjectFromClient()
          Returns the next object read from the client, blocking if non is available.
 FreerailsSerializable InetConnection2Client.waitForObjectFromClient()
           
 FreerailsSerializable LocalConnection.waitForObjectFromClient()
           
 FreerailsSerializable Connection2Server.waitForObjectFromServer()
          Returns the next object read from the server, blocking if non is available.
 FreerailsSerializable InetConnection2Server.waitForObjectFromServer()
           
 FreerailsSerializable LocalConnection.waitForObjectFromServer()
           
 

Methods in jfreerails.network with parameters of type FreerailsSerializable
(package private)  void FreerailsClient.processMessage(FreerailsSerializable message)
          Processes a message received from the server.
(package private)  void AbstractInetConnection.send(FreerailsSerializable object)
           
(package private)  void InetConnection.send(FreerailsSerializable object)
           
private  void FreerailsGameServer.send2All(FreerailsSerializable message)
           
private  void FreerailsGameServer.send2AllExcept(Connection2Client dontSend2, FreerailsSerializable message)
          Sends the specified message to all connections except the specified one.
(package private)  void EchoGameServer.sendMessage(FreerailsSerializable m)
           
(package private)  void FreerailsClient.write(FreerailsSerializable fs)
           
 void SychronizedQueue.write(FreerailsSerializable f)
           
 void Connection2Client.writeToClient(FreerailsSerializable object)
          Sends the specified object to the client.
 void InetConnection2Client.writeToClient(FreerailsSerializable object)
           
 void LocalConnection.writeToClient(FreerailsSerializable object)
           
 void Connection2Server.writeToServer(FreerailsSerializable object)
          Sends the specified object to the server.
 void InetConnection2Server.writeToServer(FreerailsSerializable object)
           
 void LocalConnection.writeToServer(FreerailsSerializable object)
           
 

Constructors in jfreerails.network with parameters of type FreerailsSerializable
SetPropertyMessage2Client(int id, ClientControlInterface.ClientProperty key, FreerailsSerializable value)
           
 

Uses of FreerailsSerializable in jfreerails.world.accounts
 

Subinterfaces of FreerailsSerializable in jfreerails.world.accounts
 interface Transaction
          A Transaction is a change in a player's bank balance and/or assets.
 

Classes in jfreerails.world.accounts that implement FreerailsSerializable
 class AddItemTransaction
          This Transaction represents the charge/credit for buying/selling an item.
 class Bill
          For example, the cost of buying a trains.
 class BondTransaction
          A Transaction that adds or removes a Bond.
 class DeliverCargoReceipt
          A credit for delivering cargo.
 class EconomicClimate
          Represents the state of the economy.
 class Receipt
          A credit.
 class StockTransaction
          A transaction that occurs when a new company is founded or when a company issues additional shares.
 class TransactionAndTimeStamp
           
 

Uses of FreerailsSerializable in jfreerails.world.cargo
 

Classes in jfreerails.world.cargo that implement FreerailsSerializable
 class CargoBatch
          This class represents a cargo batch (cargo of the same batch is cargo of the same type that was produced at the same location at the same time).
 class CargoType
          Represents a type of cargo.
 class ImmutableCargoBundle
          This class represents a bundle of cargo made up of quantities of cargo from different CargoBatchs.
 

Uses of FreerailsSerializable in jfreerails.world.common
 

Classes in jfreerails.world.common with type parameters of type FreerailsSerializable
 interface Activity<E extends FreerailsSerializable>
           
 class ImHashSet<E extends FreerailsSerializable>
           
 class ImList<E extends FreerailsSerializable>
          An immutable List
 class ImSet<E extends FreerailsSerializable>
          An immutable set.
 

Subinterfaces of FreerailsSerializable in jfreerails.world.common
 interface Activity<E extends FreerailsSerializable>
           
 interface FlatTrackTemplate
          Defines methods that encode a track configuration as an int.
 

Classes in jfreerails.world.common that implement FreerailsSerializable
 class GameCalendar
          This class converts time measured in ticks since the game began into time represented as Month, Year and hour:minute.
 class GameSpeed
          This class represents actual game speed.
 class GameTime
          This class represents a specific instant in time during a game.
 class ImHashSet<E extends FreerailsSerializable>
           
 class ImInts
          An immutable list of ints.
 class ImList<E extends FreerailsSerializable>
          An immutable List
 class ImPoint
          An immutable point.
 class ImSet<E extends FreerailsSerializable>
          An immutable set.
 class ImStringList
          An immutable list of Strings.
 class Money
          Represents an amount of Money.
 class Step
          This class represents a movement from a tile to any one of the surrounding eight tiles.
 

Fields in jfreerails.world.common declared as FreerailsSerializable
private  E[] ImList.elementData
           
 

Methods in jfreerails.world.common that return FreerailsSerializable
 FreerailsSerializable ActivityIterator.getState(double absoluteTime)
           
 

Constructors in jfreerails.world.common with parameters of type FreerailsSerializable
ImHashSet(E... values)
           
ImList(E... items)
           
 

Uses of FreerailsSerializable in jfreerails.world.player
 

Classes in jfreerails.world.player that implement FreerailsSerializable
 class FreerailsPrincipal
          This interface identifies a principal.
 class Player
          Represents a player within the game.
private static class Player.WorldPrincipal
          A FreerailsPrincipal that is not a player.
 class PlayerPrincipal
          FreerailsPrincipal that is a player in the game.
 

Uses of FreerailsSerializable in jfreerails.world.station
 

Classes in jfreerails.world.station that implement FreerailsSerializable
 class ConvertedAtStation
          Records which cargos are converted to other cargos at a station.
 class Demand4Cargo
          This class represents the demand for cargo at a station.
 class PlannedTrain
          This class represents the blue print for what an engine shop is producing.
 class StationModel
          This class represents a station.
 class SupplyAtStation
          This class represents the supply at a station.
 

Uses of FreerailsSerializable in jfreerails.world.terrain
 

Subinterfaces of FreerailsSerializable in jfreerails.world.terrain
 interface TerrainTile
          Defines the interface of a terrain tile.
 interface TerrainType
          Defines the methods to access the properties of a type of terrains.
 

Classes in jfreerails.world.terrain that implement FreerailsSerializable
 class CityModel
          A city.
 class Consumption
          This class represents the demand for a certain cargo for consumption.
 class Conversion
          This class represents the conversion of one cargo type to another one a tile.
 class NullTerrainType
           
 class Production
          This class represents the production of a raw material on a tile.
static class TerrainType.Category
           
 class TileTypeImpl
          Represents a type of terrain.
 

Uses of FreerailsSerializable in jfreerails.world.top
 

Classes in jfreerails.world.top that implement FreerailsSerializable
 class GameRules
          Stores rules governing what players are allowed to do, for example whether they can connect their track to the track of other players.
 class ITEM
           This class provides a set of keys to access the items of which there can only be one instance in the game world in the game world (for example, the current time).
 class KEY
           This class provides a set of keys to access the lists of elements in the game world that are indexed by player.
 class SKEY
           This class provides a set of keys to access the lists of elements in the game world that are shared by all players.
static class WorldImpl.ActivityAndTime
           
 

Fields in jfreerails.world.top declared as FreerailsSerializable
(package private)  FreerailsSerializable[][] WorldImpl.map
           
 

Fields in jfreerails.world.top with type parameters of type FreerailsSerializable
(package private)  List1D<FreerailsSerializable> WorldImpl.items
           
(package private)  List3D<FreerailsSerializable> WorldImpl.lists
          A 3D list: D1 is player, D2 is type, D3 is element.
(package private)  List2D<FreerailsSerializable> WorldImpl.sharedLists
          A 2D list: D1 is type, D2 is element.
 

Methods in jfreerails.world.top that return FreerailsSerializable
 FreerailsSerializable ReadOnlyWorld.get(FreerailsPrincipal p, KEY key, int index)
          Returns the element at the specified position in the specified list.
 FreerailsSerializable WorldImpl.get(FreerailsPrincipal p, KEY key, int index)
           
 FreerailsSerializable ReadOnlyWorld.get(ITEM item)
          Returns the element mapped to the specified item.
 FreerailsSerializable WorldImpl.get(ITEM item)
           
 FreerailsSerializable ReadOnlyWorld.get(SKEY key, int index)
          Returns the element at the specified position in the specified list.
 FreerailsSerializable WorldImpl.get(SKEY key, int index)
           
 FreerailsSerializable NonNullElements.getElement()
           
 FreerailsSerializable WorldIterator.getElement()
          Returns the element the curor is pointing to.
 FreerailsSerializable ReadOnlyWorld.getTile(int x, int y)
          Returns the tile at the specified position on the map.
 FreerailsSerializable WorldDiffs.getTile(int x, int y)
           
 FreerailsSerializable WorldImpl.getTile(int x, int y)
           
private  FreerailsSerializable NonNullElements.listGet(int i)
           
 FreerailsSerializable World.removeLast(FreerailsPrincipal principal, KEY key)
          Removes the last element from the specified list.
 FreerailsSerializable WorldImpl.removeLast(FreerailsPrincipal p, KEY key)
           
 FreerailsSerializable World.removeLast(SKEY key)
          Removes the last element from the specified list.
 FreerailsSerializable WorldImpl.removeLast(SKEY key)
           
 

Methods in jfreerails.world.top with parameters of type FreerailsSerializable
 int World.add(FreerailsPrincipal principal, KEY key, FreerailsSerializable element)
          Appends the specified element to the end of the specifed list and returns the index that can be used to retrieve it.
 int WorldImpl.add(FreerailsPrincipal p, KEY key, FreerailsSerializable element)
           
 int World.add(SKEY key, FreerailsSerializable element)
          Appends the specified element to the end of the specifed list and returns the index that can be used to retrieve it.
 int WorldImpl.add(SKEY key, FreerailsSerializable element)
           
 void World.set(FreerailsPrincipal principal, KEY key, int index, FreerailsSerializable element)
          Replaces the element at the specified position in the specified list with the specified element.
 void WorldImpl.set(FreerailsPrincipal p, KEY key, int index, FreerailsSerializable element)
           
 void World.set(ITEM item, FreerailsSerializable element)
          Replaces the element mapped to the specified item with the specified element.
 void WorldImpl.set(ITEM item, FreerailsSerializable element)
           
 void World.set(SKEY key, int index, FreerailsSerializable element)
          Replaces the element at the specified position in the specified list with the specified element.
 void WorldImpl.set(SKEY key, int index, FreerailsSerializable element)
           
 void World.setTile(int x, int y, FreerailsSerializable tile)
          Replaces the tile at the specified position on the map with the specified tile.
 void WorldDiffs.setTile(int x, int y, FreerailsSerializable tile)
           
 void WorldImpl.setTile(int x, int y, FreerailsSerializable element)
           
 

Uses of FreerailsSerializable in jfreerails.world.track
 

Subinterfaces of FreerailsSerializable in jfreerails.world.track
 interface TrackPiece
          Defines methods to access the properties of the track on a tile.
 interface TrackRule
          Defines methods to access the properties of a track type.
 

Classes in jfreerails.world.track that implement FreerailsSerializable
 class FreerailsTile
          A tile on the map.
 class LegalTrackConfigurations
          Stores the legal track configurations for a type of track.
 class LegalTrackPlacement
          This class encapsulates the rules governing where, that is, on what terrain, track of a given type can be built.
 class NullTrackPiece
          A track piece that doesn't exist - using this avoids needing to check against null before calling the methods on a track piece.
 class NullTrackType
          The type of a Null track piece.
 class TrackConfiguration
          An instance of this class represents one of the possible track configurations in a map square - the combinations of directions in which track can be laid.
 class TrackPieceImpl
          Represents the track on a tile.
 class TrackRuleImpl
          This class encapsulates the rules that apply to a type of track node.
 class TrackRuleProperties
          Stores some of the properties of a track type.
 class TrackSection
          Represents the track connecting two adjacent tiles.
 

Uses of FreerailsSerializable in jfreerails.world.train
 

Subinterfaces of FreerailsSerializable in jfreerails.world.train
 interface SpeedAgainstTime
           
 

Classes in jfreerails.world.train that implement FreerailsSerializable
 class CompositeSpeedAgainstTime
           
 class ConstAcc
           
 class EngineType
          This class represents an engine type, for example 'Grass Hopper'.
 class ImmutableSchedule
          A Schedule that is immutable.
 class PathOnTiles
          An immutable class that stores a path made up of OneTileMoveVectors.
 class SpeedTimeAndStatus
          Stores the speed and status of a train immediately after an instant of time.
 class TrainModel
          Represents a train.
 class TrainMotion
           This immutable class provides methods that return a train's position and speed at any time within an interval.
 class TrainOrdersModel
          This class encapsulates the orders for a train.
 class TrainPositionOnMap
          This immutable class represents the position of a train as a String of points.
 class WagonType
          This class represents a wagon type, for example 'goods wagon'.