openlsd.multiple.ophandler.common.LSDOpRunner Class Reference

Inheritance diagram for openlsd.multiple.ophandler.common.LSDOpRunner:

Inheritance graph
[legend]
Collaboration diagram for openlsd.multiple.ophandler.common.LSDOpRunner:

Collaboration graph
[legend]

List of all members.


Detailed Description

Class to run a thread for OpHandler
Author:
Frederic BREGIER LGPL 2007

Public Member Functions

 LSDOpRunner (LSDDbAdmin admin, ConcurrentLinkedQueue< ArrayList< LSDDbOp >> queue, long delay, LSDPoolLSDConnection poolLSDConnection, Semaphore startSignal, Semaphore doneSignal)
void run ()
void runSequential ()
void shutdownNow ()

Protected Attributes

ConcurrentLinkedQueue
< ArrayList< LSDDbOp > > 
queue = null
LSDDbAdmin admin = null
long delay = LSDConstants.RETRYINMS
LSDPoolLSDConnection poolLSDConnection = null
Semaphore startSignal = null
Semaphore doneSignal = null
boolean continueRunning = true

Private Member Functions

void executeRun (LSDOpOpTodo opOpTodo)
boolean executeRunSequential (LSDOpOpTodo opOpTodo)
boolean runTaskImport (LSDOpOpTodo opOpTodo, LSDDbAdmin admin, LSDPoolLSDConnection poolLSDConnection)
boolean finalizeOpImport (LSDDbAdmin admin, int retour, LSDDbOp newop)
boolean runTaskDelete (LSDOpOpTodo opOpTodo, LSDDbAdmin admin, LSDPoolLSDConnection poolLSDConnection)
boolean runTaskReplace (LSDOpOpTodo opOpTodo, LSDDbAdmin admin, LSDPoolLSDConnection poolLSDConnection)
boolean runTaskMove (LSDOpOpTodo opOpTodo, LSDDbAdmin admin, LSDPoolLSDConnection poolLSDConnection)

Constructor & Destructor Documentation

openlsd.multiple.ophandler.common.LSDOpRunner.LSDOpRunner ( LSDDbAdmin  admin,
ConcurrentLinkedQueue< ArrayList< LSDDbOp >>  queue,
long  delay,
LSDPoolLSDConnection  poolLSDConnection,
Semaphore  startSignal,
Semaphore  doneSignal 
)

Create one OpRunner

Parameters:
admin 
queue 
delay 
poolLSDConnection 
startSignal 
doneSignal 


Member Function Documentation

void openlsd.multiple.ophandler.common.LSDOpRunner.run (  ) 

See also:
java.lang.Runnable.run()

void openlsd.multiple.ophandler.common.LSDOpRunner.runSequential (  ) 

Sequential run (Delete present)

See also:
java.lang.Runnable.run()

void openlsd.multiple.ophandler.common.LSDOpRunner.shutdownNow (  ) 

Force shutdown if necessary

void openlsd.multiple.ophandler.common.LSDOpRunner.executeRun ( LSDOpOpTodo  opOpTodo  )  [private]

Run the task according to the op

Parameters:
opOpTodo 

boolean openlsd.multiple.ophandler.common.LSDOpRunner.executeRunSequential ( LSDOpOpTodo  opOpTodo  )  [private]

Run the task according to the op, but stopping after any error

Parameters:
opOpTodo 
Returns:
True if OK, else False

boolean openlsd.multiple.ophandler.common.LSDOpRunner.runTaskImport ( LSDOpOpTodo  opOpTodo,
LSDDbAdmin  admin,
LSDPoolLSDConnection  poolLSDConnection 
) [private]

Import Task

Parameters:
opOpTodo 
admin 
poolLSDConnection 
Returns:
True if OK

boolean openlsd.multiple.ophandler.common.LSDOpRunner.finalizeOpImport ( LSDDbAdmin  admin,
int  retour,
LSDDbOp  newop 
) [private]

Finalize the current newop

Parameters:
admin 
retour 
newop 
Returns:
True if OK, else False

boolean openlsd.multiple.ophandler.common.LSDOpRunner.runTaskDelete ( LSDOpOpTodo  opOpTodo,
LSDDbAdmin  admin,
LSDPoolLSDConnection  poolLSDConnection 
) [private]

Run Delete

Parameters:
opOpTodo 
admin 
poolLSDConnection 
Returns:
True if OK

boolean openlsd.multiple.ophandler.common.LSDOpRunner.runTaskReplace ( LSDOpOpTodo  opOpTodo,
LSDDbAdmin  admin,
LSDPoolLSDConnection  poolLSDConnection 
) [private]

Replace Task

Parameters:
opOpTodo 
admin 
poolLSDConnection 
Returns:
True if OK

boolean openlsd.multiple.ophandler.common.LSDOpRunner.runTaskMove ( LSDOpOpTodo  opOpTodo,
LSDDbAdmin  admin,
LSDPoolLSDConnection  poolLSDConnection 
) [private]

Move Task

Parameters:
opOpTodo 
admin 
poolLSDConnection 
Returns:
True if OK


Member Data Documentation

ConcurrentLinkedQueue<ArrayList<LSDDbOp> > openlsd.multiple.ophandler.common.LSDOpRunner.queue = null [protected]

Queue of Member to import

DB Admin object

Delay between two get in todo queue when no Op is available

Pool of connection

Each OpRunner can start

Each OpRunner have done and have to wait to start

Change by Shutdown force


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