Java源码示例:org.apache.jena.query.TxnType
示例1
@Override
public void begin(TxnType txnType) {
if ( insideBegin.get() ) {
super.begin(txnType);
return;
}
insideBegin.set(true);
try {
// For the sync, we have to assume it will write.
ReadWrite readWrite = ( txnType == TxnType.READ) ? ReadWrite.READ : ReadWrite.WRITE;
txnSyncHandler.accept(readWrite);
super.begin(txnType);
if ( transactionMode() == ReadWrite.WRITE )
monitor.txnBegin();
} finally {
insideBegin.set(false);
}
internalBegin();
}
示例2
@Override
public boolean promote() {
// Do not use the wrapper which will redirect to the wrapped DSG
// bypassing promote(Promote) below.
// This is copied :-( from "Transactional"
TxnType txnType = transactionType();
if ( txnType == null )
throw new JenaTransactionException("Not in a transaction") ;
switch(txnType) {
case WRITE : return true;
case READ : return false;
case READ_PROMOTE : return promote(Promote.ISOLATED);
case READ_COMMITTED_PROMOTE : return promote(Promote.READ_COMMITTED);
}
throw new JenaTransactionException("Can't determine promote '"+txnType+"'transaction");
}
示例3
@Override
public void begin(TxnType type) {}
示例4
@Override
public TxnType transactionType() {
return null;
}
示例5
@Override
public void begin(TxnType type) {
dataset.begin(type);
}
示例6
@Override
public TxnType transactionType() {
return dataset.transactionType();
}
示例7
@Override
public void begin(TxnType type) {
delegate.begin(type);
}
示例8
@Override
public TxnType transactionType() {
return delegate.transactionType();
}
示例9
@Override
public void begin(TxnType type) {
// TODO Auto-generated method stub
}
示例10
@Override
public TxnType transactionType() {
// TODO Auto-generated method stub
return null;
}
示例11
void onBegin(TxnType txnType);