dist1.acb.CBL
Class Backup

java.lang.Object
  extended byjava.lang.Thread
      extended bydist1.acb.common.transport.AbstractClientSocket
          extended bydist1.acb.CBL.Backup
All Implemented Interfaces:
java.lang.Runnable, Server, UpdatesExecutor

public class Backup
extends AbstractClientSocket
implements Server

The Backup

Version:
$Revision: 1.31 $
Author:
Alexander Stasiv

Nested Class Summary
 
Nested classes inherited from class dist1.acb.common.transport.AbstractClientSocket
AbstractClientSocket.SocketAndStreams
 
Field Summary
 
Fields inherited from class dist1.acb.common.transport.AbstractClientSocket
isShutdowned, log, objectStreamFactory, socket
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
Backup()
          Constructor for the Backup object
 
Method Summary
 void forceGetReplicas()
          Force the Backup to try to receive replicas
 java.util.logging.Logger getLogger()
          Returns logger for current server
 java.util.LinkedList getReplicasBackup()
          Returns list for backuping replicas
 CBL getThisCBL()
          Returns information about this CBL
protected  void handleConnectionEstablished()
           
protected  boolean handleConnectionLost()
           
protected  void handleUnrecoverableError(java.lang.Throwable e)
           
 Response hBeginSellTransaction(java.lang.String login, RequestUpdate request)
          Handler for request BeginSellTransaction
 Response hCloseSession(java.lang.String login, RequestUpdate request)
          Handler for request CloseSession
 Response hDeleteOldUsers(java.lang.String login, RequestUpdate request)
          Handler for request DeleteOldUsers
 Response hEndSellTransaction(java.lang.String login, RequestUpdate request)
          Handler for request BeginSellTransaction
 Response hInitCBLTable(java.lang.String login, RequestUpdate request)
          Handler for request InitCBLTable
 Response hInsertLog(java.lang.String login, RequestUpdate request)
          Handler for request insert log
 Response hLogin(java.lang.String login, RequestUpdate request)
          Handler for request Login
 Response hMoneyFromAccount(java.lang.String login, RequestUpdate request)
          Handler for request MoneyFromAccount
 Response hMoneyToAccount(java.lang.String login, RequestUpdate request)
          Handler for request MoneyToAccount
 Response hRegister(java.lang.String login, RequestUpdate request)
          Handler for request Register
 Response hRemoveCBL(java.lang.String login, RequestUpdate request)
          Handler for request RemoveCBL
 Response hRemoveFiles(java.lang.String login, RequestUpdate request)
          Handler for request RemoveFiles
 Response hShare(java.lang.String login, RequestUpdate request)
          Handler for request Share
 Response hUpdateCBL(java.lang.String login, RequestUpdate request)
          Handler for request UpdateCBL
 Response hUpdateUser(java.lang.String login, RequestUpdate request)
          Handler for request UpdateUser
 boolean isPrimary()
          Checks if the current server is the Primary
 void run()
          Main processor
 void startServer()
          Start the server
 void stopServer()
          Stop the server
 
Methods inherited from class dist1.acb.common.transport.AbstractClientSocket
connect, connect, connect, getResponse, getServerAddr, getServersAddresses, handleResponseToNoRequest, isConnected, receiveResponse, request, request, scheduleRequest, setServersAddresses, start
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Backup

public Backup()
Constructor for the Backup object

Method Detail

getLogger

public java.util.logging.Logger getLogger()
Returns logger for current server

Specified by:
getLogger in interface Server
Returns:
Logger for current server

isPrimary

public boolean isPrimary()
Checks if the current server is the Primary

Specified by:
isPrimary in interface Server
Returns:
true if the Server is the Primary, false is it is a Backup

getReplicasBackup

public java.util.LinkedList getReplicasBackup()
Returns list for backuping replicas

Specified by:
getReplicasBackup in interface Server
Returns:
List for backuping replicas

getThisCBL

public CBL getThisCBL()
Returns information about this CBL

Specified by:
getThisCBL in interface Server
Returns:
Regerence to CBL object

forceGetReplicas

public void forceGetReplicas()
Force the Backup to try to receive replicas


hBeginSellTransaction

public Response hBeginSellTransaction(java.lang.String login,
                                      RequestUpdate request)
Handler for request BeginSellTransaction

Specified by:
hBeginSellTransaction in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hCloseSession

public Response hCloseSession(java.lang.String login,
                              RequestUpdate request)
Handler for request CloseSession

Specified by:
hCloseSession in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hDeleteOldUsers

public Response hDeleteOldUsers(java.lang.String login,
                                RequestUpdate request)
Handler for request DeleteOldUsers

Specified by:
hDeleteOldUsers in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hEndSellTransaction

public Response hEndSellTransaction(java.lang.String login,
                                    RequestUpdate request)
Handler for request BeginSellTransaction

Specified by:
hEndSellTransaction in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hInitCBLTable

public Response hInitCBLTable(java.lang.String login,
                              RequestUpdate request)
Handler for request InitCBLTable

Specified by:
hInitCBLTable in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hInsertLog

public Response hInsertLog(java.lang.String login,
                           RequestUpdate request)
Handler for request insert log

Specified by:
hInsertLog in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hLogin

public Response hLogin(java.lang.String login,
                       RequestUpdate request)
Handler for request Login

Specified by:
hLogin in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hMoneyFromAccount

public Response hMoneyFromAccount(java.lang.String login,
                                  RequestUpdate request)
Handler for request MoneyFromAccount

Specified by:
hMoneyFromAccount in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hMoneyToAccount

public Response hMoneyToAccount(java.lang.String login,
                                RequestUpdate request)
Handler for request MoneyToAccount

Specified by:
hMoneyToAccount in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hRegister

public Response hRegister(java.lang.String login,
                          RequestUpdate request)
Handler for request Register

Specified by:
hRegister in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hRemoveCBL

public Response hRemoveCBL(java.lang.String login,
                           RequestUpdate request)
Handler for request RemoveCBL

Specified by:
hRemoveCBL in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hRemoveFiles

public Response hRemoveFiles(java.lang.String login,
                             RequestUpdate request)
Handler for request RemoveFiles

Specified by:
hRemoveFiles in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hShare

public Response hShare(java.lang.String login,
                       RequestUpdate request)
Handler for request Share

Specified by:
hShare in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hUpdateCBL

public Response hUpdateCBL(java.lang.String login,
                           RequestUpdate request)
Handler for request UpdateCBL

Specified by:
hUpdateCBL in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

hUpdateUser

public Response hUpdateUser(java.lang.String login,
                            RequestUpdate request)
Handler for request UpdateUser

Specified by:
hUpdateUser in interface UpdatesExecutor
Parameters:
login - Urer's login
request - The request
Returns:
A response

run

public void run()
Main processor

Specified by:
run in interface java.lang.Runnable
Overrides:
run in class AbstractClientSocket

startServer

public void startServer()
Start the server

Specified by:
startServer in interface Server
Throws:
java.lang.RuntimeException - internal exception

stopServer

public void stopServer()
Stop the server

Specified by:
stopServer in interface Server

handleConnectionEstablished

protected void handleConnectionEstablished()
Specified by:
handleConnectionEstablished in class AbstractClientSocket

handleConnectionLost

protected boolean handleConnectionLost()
Specified by:
handleConnectionLost in class AbstractClientSocket

handleUnrecoverableError

protected void handleUnrecoverableError(java.lang.Throwable e)
Specified by:
handleUnrecoverableError in class AbstractClientSocket


Copyright © 2004 Phoenix Team (CMU/AIT). All Rights Reserved.