openlsd.database.data
Class LSDDbControl

java.lang.Object
  extended by openlsd.database.data.LSDDbControl

public class LSDDbControl
extends java.lang.Object

Class for Op(eration) manipulation

Author:
Frederic Bregier LGPL

Field Summary
static java.lang.String allfields
          DB field for all fields in select command.
 long did
          Next DID Id
static java.lang.String[] fields
          DB field names
 long idip
          IpPort Id
 long lid
          Legacy Id
static java.util.concurrent.locks.ReentrantLock lock
          Lock for new Control test
 int op
          Op function
static int OPcheck
          Function: Check a Legacy
static int OPcontrol
          Function: control line in database
 java.sql.Timestamp opdate
          Date (Timestamp) of this Control
static int OPnoop
          Function: no operation
static int rdid
          DB field rank
static int ridip
          DB field rank
static int rlid
          DB field rank
static int rop
          DB field rank
static int ropdate
          DB field rank
static java.lang.String table
          information for DB manipulation: Table name
 
Constructor Summary
LSDDbControl()
          Create an empty Op
LSDDbControl(long lid, long idip, int op, long did, java.sql.Timestamp opdate)
          Create a Control from args
 
Method Summary
 boolean get(java.sql.ResultSet resultSet)
          Get Values from ResultSet
 boolean getCheck(LSDDbAdmin admin, long lid, long idip)
          Get the Control object from DB for Check only
static void getLock(LSDDbAdmin admin)
          Get Lock for Control (JVM Only, since SQL should be done elsewhere)
static long getLockSQL(LSDDbAdmin admin)
          Get Lock for Control SQL only (PostGre/MySQL)
 boolean insert(LSDDbAdmin admin, boolean isCommit)
          Insert data into DB from object.
static boolean setInitialOpHandler(LSDDbAdmin admin)
          Initialize if needed the OpHandler control in Control Table.
 java.lang.String toString()
          Object to String
static void unsetLock(LSDDbAdmin admin)
          Set Unlock for Control (JVM Only, since SQL should be done elsewhere)
static void unsetLockSQL(LSDDbAdmin admin)
          Set Unlock for Control SQL only (PostGre/MySQL)
 boolean update(LSDDbAdmin admin, long did, boolean isCommit)
          Update opdate into BD if opdate not null
static boolean updateOpHandler(LSDDbAdmin admin, long newdid, boolean isCommit)
          Set Unlock for Control SQL
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

lid

public long lid
Legacy Id


idip

public long idip
IpPort Id


op

public int op
Op function


did

public long did
Next DID Id


opdate

public java.sql.Timestamp opdate
Date (Timestamp) of this Control


OPcontrol

public static final int OPcontrol
Function: control line in database

See Also:
Constant Field Values

OPnoop

public static final int OPnoop
Function: no operation

See Also:
Constant Field Values

OPcheck

public static final int OPcheck
Function: Check a Legacy

See Also:
Constant Field Values

table

public static final java.lang.String table
information for DB manipulation: Table name

See Also:
Constant Field Values

fields

public static final java.lang.String[] fields
DB field names


rlid

public static final int rlid
DB field rank

See Also:
Constant Field Values

ridip

public static final int ridip
DB field rank

See Also:
Constant Field Values

rop

public static final int rop
DB field rank

See Also:
Constant Field Values

rdid

public static final int rdid
DB field rank

See Also:
Constant Field Values

ropdate

public static final int ropdate
DB field rank

See Also:
Constant Field Values

allfields

public static final java.lang.String allfields
DB field for all fields in select command.


lock

public static java.util.concurrent.locks.ReentrantLock lock
Lock for new Control test

Constructor Detail

LSDDbControl

public LSDDbControl()
Create an empty Op


LSDDbControl

public LSDDbControl(long lid,
                    long idip,
                    int op,
                    long did,
                    java.sql.Timestamp opdate)
Create a Control from args

Parameters:
lid -
idip -
op -
did -
opdate -
Method Detail

get

public boolean get(java.sql.ResultSet resultSet)
Get Values from ResultSet

Parameters:
resultSet -
Returns:
True if OK, else False

insert

public boolean insert(LSDDbAdmin admin,
                      boolean isCommit)
Insert data into DB from object.

Parameters:
admin -
isCommit -
Returns:
True if OK, else False

update

public boolean update(LSDDbAdmin admin,
                      long did,
                      boolean isCommit)
Update opdate into BD if opdate not null

Parameters:
admin -
did -
isCommit -
Returns:
True if OK, else False

getCheck

public boolean getCheck(LSDDbAdmin admin,
                        long lid,
                        long idip)
Get the Control object from DB for Check only

Parameters:
admin -
lid -
idip -
Returns:
True if OK, else False

setInitialOpHandler

public static boolean setInitialOpHandler(LSDDbAdmin admin)
Initialize if needed the OpHandler control in Control Table.

Parameters:
admin -
Returns:
True if OK

getLock

public static void getLock(LSDDbAdmin admin)
Get Lock for Control (JVM Only, since SQL should be done elsewhere)

Parameters:
admin -

unsetLock

public static void unsetLock(LSDDbAdmin admin)
Set Unlock for Control (JVM Only, since SQL should be done elsewhere)

Parameters:
admin -

getLockSQL

public static long getLockSQL(LSDDbAdmin admin)
Get Lock for Control SQL only (PostGre/MySQL)

Parameters:
admin -
Returns:
the next valid index or invalide_idx if error

unsetLockSQL

public static void unsetLockSQL(LSDDbAdmin admin)
Set Unlock for Control SQL only (PostGre/MySQL)

Parameters:
admin -

updateOpHandler

public static boolean updateOpHandler(LSDDbAdmin admin,
                                      long newdid,
                                      boolean isCommit)
Set Unlock for Control SQL

Parameters:
admin -
newdid -
isCommit -
Returns:
True if updated

toString

public java.lang.String toString()
Object to String

Overrides:
toString in class java.lang.Object
Returns:
the string that displays this object
See Also:
Object.toString()