クラス org.objectweb.cjdbc.common.sql.AbstractRequest

org.objectweb.cjdbc.common.sql.AbstractRequestに対する継承グラフ

Inheritance graph
[凡例]
すべてのメンバ一覧

説明

An AbstractRequest defines the skeleton of an SQL request.

作者:
Emmanuel Cecchet

Julie Marguerite

Mathieu Peltier

バージョン:
1.0

AbstractRequest.java40 行で定義されています。

Public メソッド

 AbstractRequest (String sqlQuery, boolean escapeProcessing, int timeout, String lineSeparator)
abstract boolean isReadRequest ()
abstract boolean isWriteRequest ()
abstract boolean isUnknownRequest ()
boolean isParsed ()
boolean isReadOnly ()
void setIsReadOnly (boolean isReadOnly)
int getCacheAbility ()
void setCacheAbility (int cacheAbility)
boolean getEscapeProcessing ()
long getId ()
void setId (long id)
boolean isAutoCommit ()
void setIsAutoCommit (boolean isAutoCommit)
String getLogin ()
String getLineSeparator ()
void setLineSeparator (String lineSeparator)
void setLogin (String login)
String getSQL ()
String getSQLShortForm (int nbOfCharacters)
int getMaxRows ()
void setMaxRows (int rows)
void setSQL (String sql)
int getTimeout ()
void setTimeout (int timeout)
long getTransactionId ()
void setTransactionId (long id)
boolean equals (Object other)
abstract void parse (DatabaseSchema schema, int granularity, boolean isCaseSensitive) throws SQLException
abstract void cloneParsing (AbstractRequest request)
String trimCarriageReturn ()
String getSqlSkeleton ()
void setSqlSkeleton (String skel)
boolean isDriverProcessed ()
void setDriverProcessed (boolean driverProcessed)
void setFetchSize (int fetchSize)
int getFetchSize ()
void debug ()

Protected 変数

transient long id
String sqlQuery
String sqlSkeleton = null
String login
int cacheable
boolean isParsed
int maxRows
boolean isReadOnly = false
boolean isAutoCommit
long transactionId
int timeout
boolean escapeProcessing = true

Private メソッド

String trimCarriageReturn (String s)

Private 変数

int fetchSize = 0
String lineSeparator = null
boolean driverProcessed = true


コンストラクタとデストラクタ

org.objectweb.cjdbc.common.sql.AbstractRequest.AbstractRequest String  sqlQuery,
boolean  escapeProcessing,
int  timeout,
String  lineSeparator
 

Default constructor Creates a new AbstractRequest object

引数:
sqlQuery the SQL query
escapeProcessing should the driver to escape processing before sending to the database ?
timeout an int value
lineSeparator the line separator used in the query
AbstractRequest.java125 行で定義されています。
00127 { 00128 this.sqlQuery = sqlQuery; 00129 this.escapeProcessing = escapeProcessing; 00130 this.timeout = timeout; 00131 this.lineSeparator = lineSeparator; 00132 }


メソッド

abstract void org.objectweb.cjdbc.common.sql.AbstractRequest.cloneParsing AbstractRequest  request  )  [pure virtual]
 

Clones the parsing of a request.

引数:
request the parsed request to clone

org.objectweb.cjdbc.common.sql.AlterRequest, org.objectweb.cjdbc.common.sql.CreateRequest, org.objectweb.cjdbc.common.sql.DeleteRequest, org.objectweb.cjdbc.common.sql.DropRequest, org.objectweb.cjdbc.common.sql.InsertRequest, org.objectweb.cjdbc.common.sql.SelectRequest, org.objectweb.cjdbc.common.sql.StoredProcedure, org.objectweb.cjdbc.common.sql.UnknownRequest, と org.objectweb.cjdbc.common.sql.UpdateRequestで実装されています.

参照元 org.objectweb.cjdbc.controller.cache.parsing.ParsingCache.getParsingFromCache().

void org.objectweb.cjdbc.common.sql.AbstractRequest.debug  ) 
 

Displays some debugging information about this request.

org.objectweb.cjdbc.common.sql.CreateRequest, org.objectweb.cjdbc.common.sql.DeleteRequest, org.objectweb.cjdbc.common.sql.DropRequest, org.objectweb.cjdbc.common.sql.InsertRequest, org.objectweb.cjdbc.common.sql.SelectRequest, と org.objectweb.cjdbc.common.sql.UpdateRequestで再定義されています。

AbstractRequest.java550 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.cacheable, と org.objectweb.cjdbc.common.sql.AbstractRequest.sqlQuery.

00551 { 00552 System.out.println("Request: " + sqlQuery); 00553 System.out.print("Cacheable status: "); 00554 System.out.println(RequestType.getInformation(cacheable)); 00555 }

boolean org.objectweb.cjdbc.common.sql.AbstractRequest.equals Object  other  ) 
 

Two requests are equal if they have the same SQL code.

引数:
other an object
戻り値:
a boolean value
AbstractRequest.java414 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.getSQL(), org.objectweb.cjdbc.common.sql.AbstractRequest.getTransactionId(), org.objectweb.cjdbc.common.sql.AbstractRequest.sqlQuery, と org.objectweb.cjdbc.common.sql.AbstractRequest.transactionId.

00415 { 00416 if (!(other instanceof AbstractRequest)) 00417 return false; 00418 00419 AbstractRequest r = (AbstractRequest) other; 00420 return sqlQuery.equals(r.getSQL()) 00421 && (transactionId == r.getTransactionId()); 00422 }

int org.objectweb.cjdbc.common.sql.AbstractRequest.getCacheAbility  ) 
 

Returns the cacheable status of this request. It can be: org.objectweb.cjdbc.common.sql.RequestType#CACHEABLE, org.objectweb.cjdbc.common.sql.RequestType#UNCACHEABLEor org.objectweb.cjdbc.common.sql.RequestType#UNIQUE_CACHEABLE

戻り値:
a int value
AbstractRequest.java197 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.cacheable.

参照元 org.objectweb.cjdbc.common.sql.SelectRequest.cloneParsing(), org.objectweb.cjdbc.common.sql.AbstractWriteRequest.cloneTableNameAndColumns(), org.objectweb.cjdbc.controller.cache.result.ResultCache.getFromCache(), org.objectweb.cjdbc.controller.cache.result.schema.CacheDatabaseTable.invalidateAllExceptPk(), org.objectweb.cjdbc.controller.cache.result.schema.CacheDatabaseColumn.invalidateAllNonUnique(), org.objectweb.cjdbc.controller.cache.result.schema.CacheDatabaseColumn.invalidateAllNonUniqueAndMarkDirtyUnique(), org.objectweb.cjdbc.controller.cache.result.schema.CacheDatabaseColumn.invalidateAllUniqueWithValuesAndAllNonUnique(), org.objectweb.cjdbc.controller.cache.result.ResultCacheColumnUnique.isUpdateNecessary(), org.objectweb.cjdbc.controller.cache.result.schema.CacheDatabaseColumn.markDirtyAllNonUnique(), org.objectweb.cjdbc.controller.cache.result.ResultCacheColumnUnique.processAddToCache(), と org.objectweb.cjdbc.controller.cache.result.ResultCacheColumnUnique.processWriteNotify().

00198 { 00199 return cacheable; 00200 }

boolean org.objectweb.cjdbc.common.sql.AbstractRequest.getEscapeProcessing  ) 
 

Returns true if the driver should escape processing before sending to the database?

戻り値:
a boolean value
AbstractRequest.java221 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.escapeProcessing.

00222 { 00223 return escapeProcessing; 00224 }

int org.objectweb.cjdbc.common.sql.AbstractRequest.getFetchSize  ) 
 

Returns the fetchSize value.

戻り値:
Returns the fetchSize.
AbstractRequest.java542 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.fetchSize.

参照元 org.objectweb.cjdbc.controller.virtualdatabase.ControllerResultSet.ControllerResultSet().

00543 { 00544 return fetchSize; 00545 }

long org.objectweb.cjdbc.common.sql.AbstractRequest.getId  ) 
 

Returns the unique id of this request.

戻り値:
the request id
AbstractRequest.java231 行で定義されています。

参照元 org.objectweb.cjdbc.controller.scheduler.raidb2.RAIDb2QueryLevelScheduler.notifyWriteCompleted(), org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1QueryLevelScheduler.notifyWriteCompleted(), org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticTransactionLevelScheduler.notifyWriteCompleted(), org.objectweb.cjdbc.controller.scheduler.raidb2.RAIDb2QueryLevelScheduler.readCompletedNotify(), と org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1QueryLevelScheduler.readCompletedNotify().

00232 { 00233 return id; 00234 }

String org.objectweb.cjdbc.common.sql.AbstractRequest.getLineSeparator  ) 
 

Returns the lineSeparator value.

戻り値:
Returns the lineSeparator.
AbstractRequest.java283 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.lineSeparator.

参照元 org.objectweb.cjdbc.common.sql.SelectRequest.getFromTables(), と org.objectweb.cjdbc.common.sql.CreateRequest.parse().

00284 { 00285 return lineSeparator; 00286 }

String org.objectweb.cjdbc.common.sql.AbstractRequest.getLogin  ) 
 

Returns the login used to issue this request.

戻り値:
a String value
AbstractRequest.java273 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.login.

00274 { 00275 return login; 00276 }

int org.objectweb.cjdbc.common.sql.AbstractRequest.getMaxRows  ) 
 

Get the maximum number of rows the ResultSet can contain.

戻り値:
maximum number of rows
参照:
java.sql.Statement.getMaxRows()
AbstractRequest.java339 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.maxRows.

00340 { 00341 return maxRows; 00342 }

String org.objectweb.cjdbc.common.sql.AbstractRequest.getSQL  ) 
 

Gets the SQL code of this request.

戻り値:
the SQL query
AbstractRequest.java313 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.sqlQuery.

参照元 org.objectweb.cjdbc.controller.cache.metadata.MetadataCache.addMetadata(), org.objectweb.cjdbc.common.sql.AbstractRequest.equals(), org.objectweb.cjdbc.controller.cache.result.ResultCache.getCacheBehavior(), org.objectweb.cjdbc.controller.cache.result.ResultCache.getFromCache(), org.objectweb.cjdbc.controller.cache.metadata.MetadataCache.getMetadata(), org.objectweb.cjdbc.controller.cache.parsing.ParsingCache.getParsingFromCache(), org.objectweb.cjdbc.controller.loadbalancer.AbstractLoadBalancer.handleMacros(), org.objectweb.cjdbc.controller.scheduler.AbstractScheduler.hasSQLMacros(), org.objectweb.cjdbc.controller.monitoring.SQLMonitoringRule.matches(), org.objectweb.cjdbc.controller.cache.result.ResultCacheRule.matches(), org.objectweb.cjdbc.controller.monitoring.SQLMonitoring.monitorRequestRule(), org.objectweb.cjdbc.controller.cache.result.ResultCacheColumnUnique.processWriteNotify(), org.objectweb.cjdbc.controller.cache.result.ResultCacheColumn.processWriteNotify(), org.objectweb.cjdbc.controller.cache.result.ResultCache.removeFromCache(), org.objectweb.cjdbc.controller.cache.result.ResultCache.removeFromPendingQueries(), org.objectweb.cjdbc.controller.cache.result.ResultCache.removeOldest(), org.objectweb.cjdbc.controller.cache.result.ResultCache.RelaxedCacheThread.run(), org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog.setDriverProcessedAndSkeleton(), org.objectweb.cjdbc.controller.cache.result.entries.ResultCacheEntryRelaxed.toStringTable(), と org.objectweb.cjdbc.controller.cache.result.entries.ResultCacheEntryEager.toStringTable().

00314 { 00315 return sqlQuery; 00316 }

String org.objectweb.cjdbc.common.sql.AbstractRequest.getSQLShortForm int  nbOfCharacters  ) 
 

Get a short form of this request if the SQL statement exceeds nbOfCharacters.

引数:
nbOfCharacters number of characters to include in the short form.
戻り値:
the nbOfCharacters first characters of the SQL statement
AbstractRequest.java325 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.sqlQuery.

参照元 org.objectweb.cjdbc.controller.requestmanager.distributed.DistributedRequestManager.completeFailedOnAllBackends(), org.objectweb.cjdbc.controller.virtualdatabase.protocol.ExecWriteRequest.executeRequest(), と org.objectweb.cjdbc.controller.cache.result.ResultCacheColumnUnique.processWriteNotify().

00326 { 00327 if ((nbOfCharacters == 0) || (sqlQuery.length() < nbOfCharacters)) 00328 return sqlQuery; 00329 else 00330 return sqlQuery.substring(0, nbOfCharacters) + "..."; 00331 }

String org.objectweb.cjdbc.common.sql.AbstractRequest.getSqlSkeleton  ) 
 

戻り値:
the SQL query skeleton given in a PreparedStatement.
AbstractRequest.java493 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.sqlSkeleton.

参照元 org.objectweb.cjdbc.controller.cache.metadata.MetadataCache.addMetadata(), org.objectweb.cjdbc.controller.cache.metadata.MetadataCache.getMetadata(), org.objectweb.cjdbc.controller.cache.parsing.ParsingCache.getParsingFromCache(), org.objectweb.cjdbc.controller.loadbalancer.AbstractLoadBalancer.handleMacros(), org.objectweb.cjdbc.controller.monitoring.SQLMonitoringRule.matches(), と org.objectweb.cjdbc.controller.monitoring.SQLMonitoring.monitorRequestRule().

00494 { 00495 return sqlSkeleton; 00496 }

int org.objectweb.cjdbc.common.sql.AbstractRequest.getTimeout  ) 
 

Gets the timeout for this request in seconds.

戻り値:
timeout in seconds (0 means no timeout)
AbstractRequest.java372 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.timeout.

参照元 org.objectweb.cjdbc.controller.scheduler.schema.TransactionExclusiveLock.acquire().

00373 { 00374 return timeout; 00375 }

long org.objectweb.cjdbc.common.sql.AbstractRequest.getTransactionId  ) 
 

Gets the identifier of the transaction if this request belongs to a transaction, or -1 if this request does not belong to a transaction.

戻り値:
transaction identifier or -1
AbstractRequest.java393 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.transactionId.

参照元 org.objectweb.cjdbc.controller.scheduler.schema.TransactionExclusiveLock.acquire(), org.objectweb.cjdbc.common.sql.AbstractRequest.equals(), org.objectweb.cjdbc.controller.scheduler.singledb.SingleDBPessimisticTransactionLevelScheduler.notifyWriteCompleted(), org.objectweb.cjdbc.controller.scheduler.raidb2.RAIDb2PessimisticTransactionLevelScheduler.notifyWriteCompleted(), org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1PessimisticTransactionLevelScheduler.notifyWriteCompleted(), org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticQueryLevelScheduler.notifyWriteCompleted(), と org.objectweb.cjdbc.controller.scheduler.raidb0.RAIDb0PessimisticTransactionLevelScheduler.notifyWriteCompleted().

00394 { 00395 return transactionId; 00396 }

boolean org.objectweb.cjdbc.common.sql.AbstractRequest.isAutoCommit  ) 
 

Returns true if the request should be executed in autocommit mode.

戻り値:
a boolean value
AbstractRequest.java252 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.isAutoCommit.

00253 { 00254 return isAutoCommit; 00255 }

boolean org.objectweb.cjdbc.common.sql.AbstractRequest.isDriverProcessed  ) 
 

Returns the driverProcessed value.

戻り値:
Returns the driverProcessed.
AbstractRequest.java512 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.driverProcessed.

参照元 org.objectweb.cjdbc.controller.loadbalancer.AbstractLoadBalancer.handleMacros(), org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.procedureFromStream(), org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.readRequestFromStream(), と org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.writeRequestFromStream().

00513 { 00514 return driverProcessed; 00515 }

boolean org.objectweb.cjdbc.common.sql.AbstractRequest.isParsed  ) 
 

Returns true if the request SQL content has been already parsed.

戻り値:
a boolean value
AbstractRequest.java164 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.isParsed.

00165 { 00166 return isParsed; 00167 }

boolean org.objectweb.cjdbc.common.sql.AbstractRequest.isReadOnly  ) 
 

Returns true if the connection is set to read-only

戻り値:
a boolean value
AbstractRequest.java174 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.isReadOnly.

00175 { 00176 return isReadOnly; 00177 }

abstract boolean org.objectweb.cjdbc.common.sql.AbstractRequest.isReadRequest  )  [pure virtual]
 

Returns true if this request is a read request ( SELECT requests for example perform a read).

戻り値:
true if this request is a read request

org.objectweb.cjdbc.common.sql.AbstractWriteRequest, org.objectweb.cjdbc.common.sql.AlterRequest, org.objectweb.cjdbc.common.sql.SelectRequest, org.objectweb.cjdbc.common.sql.StoredProcedure, と org.objectweb.cjdbc.common.sql.UnknownRequestで実装されています.

abstract boolean org.objectweb.cjdbc.common.sql.AbstractRequest.isUnknownRequest  )  [pure virtual]
 

Returns true if the resulting operation on this request is unknown (some non-standard command or stored procedure for example).

戻り値:
a boolean value

org.objectweb.cjdbc.common.sql.AbstractWriteRequest, org.objectweb.cjdbc.common.sql.AlterRequest, org.objectweb.cjdbc.common.sql.SelectRequest, org.objectweb.cjdbc.common.sql.StoredProcedure, と org.objectweb.cjdbc.common.sql.UnknownRequestで実装されています.

abstract boolean org.objectweb.cjdbc.common.sql.AbstractRequest.isWriteRequest  )  [pure virtual]
 

Returns true if this request is a write request ( INSERT or UPDATE for example perform writes).

戻り値:
true if this requests is a write request

org.objectweb.cjdbc.common.sql.AbstractWriteRequest, org.objectweb.cjdbc.common.sql.AlterRequest, org.objectweb.cjdbc.common.sql.SelectRequest, org.objectweb.cjdbc.common.sql.StoredProcedure, と org.objectweb.cjdbc.common.sql.UnknownRequestで実装されています.

abstract void org.objectweb.cjdbc.common.sql.AbstractRequest.parse DatabaseSchema  schema,
int  granularity,
boolean  isCaseSensitive
throws SQLException [pure virtual]
 

Parses the SQL request and extract the selected columns and tables given the DatabaseSchema of the database targeted by this request.

An exception is thrown when the parsing fails. Warning, this method does not check the validity of the request. In particular, invalid request could be parsed without throwing an exception. However, valid SQL request should never throw an exception.

引数:
schema a DatabaseSchema value
granularity parsing granularity as defined in ParsingGranularities
isCaseSensitive true if parsing must be case sensitive
例外:
SQLException if the parsing fails

org.objectweb.cjdbc.common.sql.AlterRequest, org.objectweb.cjdbc.common.sql.CreateRequest, org.objectweb.cjdbc.common.sql.DeleteRequest, org.objectweb.cjdbc.common.sql.DropRequest, org.objectweb.cjdbc.common.sql.InsertRequest, org.objectweb.cjdbc.common.sql.SelectRequest, org.objectweb.cjdbc.common.sql.StoredProcedure, org.objectweb.cjdbc.common.sql.UnknownRequest, と org.objectweb.cjdbc.common.sql.UpdateRequestで実装されています.

void org.objectweb.cjdbc.common.sql.AbstractRequest.setCacheAbility int  cacheAbility  ) 
 

Set the cacheable status of this request. It can be: org.objectweb.cjdbc.common.sql.RequestType#CACHEABLE, org.objectweb.cjdbc.common.sql.RequestType#UNCACHEABLEor org.objectweb.cjdbc.common.sql.RequestType#UNIQUE_CACHEABLE

引数:
cacheAbility a int value
AbstractRequest.java210 行で定義されています。
00211 { 00212 this.cacheable = cacheAbility; 00213 }

void org.objectweb.cjdbc.common.sql.AbstractRequest.setDriverProcessed boolean  driverProcessed  ) 
 

Sets the driverProcessed value.

引数:
driverProcessed The driverProcessed to set.
AbstractRequest.java522 行で定義されています。

参照元 org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.procedureFromStream(), org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.readRequestFromStream(), org.objectweb.cjdbc.driver.Connection.setConnectionParametersOnRequest(), org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog.setDriverProcessedAndSkeleton(), と org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.writeRequestFromStream().

00523 { 00524 this.driverProcessed = driverProcessed; 00525 }

void org.objectweb.cjdbc.common.sql.AbstractRequest.setFetchSize int  fetchSize  ) 
 

Sets the fetchSize value.

引数:
fetchSize The fetchSize to set.
AbstractRequest.java532 行で定義されています。

参照元 org.objectweb.cjdbc.driver.Statement.executeQuery(), org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.procedureFromStream(), org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.readRequestFromStream(), と org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.writeRequestFromStream().

00533 { 00534 this.fetchSize = fetchSize; 00535 }

void org.objectweb.cjdbc.common.sql.AbstractRequest.setId long  id  ) 
 

Sets the unique id of this request.

引数:
id the id to set
AbstractRequest.java241 行で定義されています。

参照元 org.objectweb.cjdbc.controller.scheduler.singledb.SingleDBQueryLevelScheduler.scheduleNonSuspendedWriteRequest(), org.objectweb.cjdbc.controller.scheduler.raidb0.RAIDb0QueryLevelScheduler.scheduleNonSuspendedWriteRequest(), org.objectweb.cjdbc.controller.scheduler.singledb.SingleDBQueryLevelScheduler.scheduleReadRequest(), と org.objectweb.cjdbc.controller.scheduler.raidb0.RAIDb0QueryLevelScheduler.scheduleReadRequest().

00242 { 00243 this.id = id; 00244 }

void org.objectweb.cjdbc.common.sql.AbstractRequest.setIsAutoCommit boolean  isAutoCommit  ) 
 

Sets the autocommit mode for this request.

引数:
isAutoCommit true if autocommit should be used
AbstractRequest.java263 行で定義されています。

参照元 org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.procedureFromStream(), org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.readRequestFromStream(), org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog.recoverNextRequest(), org.objectweb.cjdbc.driver.Connection.setConnectionParametersOnRequest(), と org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.writeRequestFromStream().

00264 { 00265 this.isAutoCommit = isAutoCommit; 00266 }

void org.objectweb.cjdbc.common.sql.AbstractRequest.setIsReadOnly boolean  isReadOnly  ) 
 

Sets the read-only mode for this request.

引数:
isReadOnly true if connection is read-only
AbstractRequest.java184 行で定義されています。

参照元 org.objectweb.cjdbc.driver.Connection.setConnectionParametersOnRequest().

00185 { 00186 this.isReadOnly = isReadOnly; 00187 }

void org.objectweb.cjdbc.common.sql.AbstractRequest.setLineSeparator String  lineSeparator  ) 
 

Sets the lineSeparator value.

引数:
lineSeparator The lineSeparator to set.
AbstractRequest.java293 行で定義されています。
00294 { 00295 this.lineSeparator = lineSeparator; 00296 }

void org.objectweb.cjdbc.common.sql.AbstractRequest.setLogin String  login  ) 
 

Sets the login to use to issue this request.

引数:
login a String value
AbstractRequest.java303 行で定義されています。

参照元 org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog.recoverNextRequest().

00304 { 00305 this.login = login; 00306 }

void org.objectweb.cjdbc.common.sql.AbstractRequest.setMaxRows int  rows  ) 
 

Set the maximum number of rows in the ResultSet.

引数:
rows maximum number of rows
参照:
java.sql.Statement.setMaxRows(int)
AbstractRequest.java350 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.maxRows.

参照元 org.objectweb.cjdbc.driver.Statement.executeQuery(), org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.procedureFromStream(), org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.readRequestFromStream(), と org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.writeRequestFromStream().

00351 { 00352 maxRows = rows; 00353 }

void org.objectweb.cjdbc.common.sql.AbstractRequest.setSQL String  sql  ) 
 

Set the SQL code of this request. Warning! The request parsing validity is not checked. The caller has to recall parse(DatabaseSchema, int, boolean)if needed.

引数:
sql SQL statement
AbstractRequest.java362 行で定義されています。

参照元 org.objectweb.cjdbc.controller.loadbalancer.AbstractLoadBalancer.handleMacros().

00363 { 00364 this.sqlQuery = sql; 00365 }

void org.objectweb.cjdbc.common.sql.AbstractRequest.setSqlSkeleton String  skel  ) 
 

引数:
skel set the SQL query skeleton given in a PreparedStatement.
AbstractRequest.java502 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.sqlSkeleton.

参照元 org.objectweb.cjdbc.driver.Statement.executeQuery(), org.objectweb.cjdbc.driver.Statement.executeUpdateWithSkeleton(), org.objectweb.cjdbc.controller.loadbalancer.AbstractLoadBalancer.handleMacros(), org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.procedureFromStream(), org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.readRequestFromStream(), org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog.setDriverProcessedAndSkeleton(), と org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabaseWorkerThread.writeRequestFromStream().

00503 { 00504 sqlSkeleton = skel; 00505 }

void org.objectweb.cjdbc.common.sql.AbstractRequest.setTimeout int  timeout  ) 
 

Sets the new timeout in seconds for this request.

引数:
timeout an int value
AbstractRequest.java382 行で定義されています。

参照元 org.objectweb.cjdbc.controller.scheduler.schema.TransactionExclusiveLock.acquire().

00383 { 00384 this.timeout = timeout; 00385 }

void org.objectweb.cjdbc.common.sql.AbstractRequest.setTransactionId long  id  ) 
 

Sets the transaction identifier this request belongs to.

引数:
id transaction id
AbstractRequest.java403 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.transactionId.

参照元 org.objectweb.cjdbc.controller.virtualdatabase.protocol.Commit.commit(), org.objectweb.cjdbc.controller.requestmanager.distributed.RAIDb2DistributedRequestManager.distributedCommit(), org.objectweb.cjdbc.controller.requestmanager.distributed.RAIDb1DistributedRequestManager.distributedCommit(), org.objectweb.cjdbc.controller.requestmanager.distributed.RAIDb2DistributedRequestManager.distributedRollback(), org.objectweb.cjdbc.controller.requestmanager.distributed.RAIDb1DistributedRequestManager.distributedRollback(), org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog.recoverNextRequest(), と org.objectweb.cjdbc.controller.virtualdatabase.protocol.Rollback.rollback().

00404 { 00405 transactionId = id; 00406 }

String org.objectweb.cjdbc.common.sql.AbstractRequest.trimCarriageReturn String  s  )  [private]
 

Replaces any carriage returns by a space in a given String.

引数:
s the String to transform
戻り値:
the transformed String
AbstractRequest.java470 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.lineSeparator, と org.objectweb.cjdbc.common.sql.AbstractRequest.trimCarriageReturn().

00471 { 00472 int lineSeparatorLength = lineSeparator.length(); 00473 int idx = s.indexOf(lineSeparator); 00474 if (idx == -1) 00475 return s; 00476 else 00477 { 00478 if (idx == 0) // carriage is the first character 00479 return trimCarriageReturn(s.substring(lineSeparatorLength)); 00480 else if (idx == (s.length() - lineSeparatorLength)) // is the last 00481 // character 00482 return s.substring(0, s.length() - lineSeparatorLength); 00483 else 00484 // is somewhere in the string 00485 return s.substring(0, idx) + " " 00486 + trimCarriageReturn(s.substring(idx + lineSeparatorLength)); 00487 } 00488 }

String org.objectweb.cjdbc.common.sql.AbstractRequest.trimCarriageReturn  ) 
 

If the query has a skeleton defined, return the skeleton wth all carriage returns replaces with spaces. If no SQL skeleton is defined, we perform the same processing on the instanciated SQL statement.

戻り値:
statement with CR replaces by spaces
AbstractRequest.java456 行で定義されています。

参照先 org.objectweb.cjdbc.common.sql.AbstractRequest.sqlQuery, と org.objectweb.cjdbc.common.sql.AbstractRequest.sqlSkeleton.

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.trimCarriageReturn().

00457 { 00458 if (sqlSkeleton != null) 00459 return trimCarriageReturn(sqlSkeleton); 00460 else 00461 return trimCarriageReturn(sqlQuery); 00462 }


変数

int org.objectweb.cjdbc.common.sql.AbstractRequest.cacheable [protected]
 

Whether this request is cacheable or not. AbstractRequest.java58 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.debug(), と org.objectweb.cjdbc.common.sql.AbstractRequest.getCacheAbility().

boolean org.objectweb.cjdbc.common.sql.AbstractRequest.driverProcessed = true [private]
 

If set to true, the query is interpreted on the driver side, if false the various parameters are encoded and passed as is to the database native driver by the controller. AbstractRequest.java114 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.isDriverProcessed().

boolean org.objectweb.cjdbc.common.sql.AbstractRequest.escapeProcessing = true [protected]
 

Should the driver do escape processing before sending to the database? No setter for this member, should be set in constructor. AbstractRequest.java101 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.getEscapeProcessing().

int org.objectweb.cjdbc.common.sql.AbstractRequest.fetchSize = 0 [private]
 

AbstractRequest.java70 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.getFetchSize().

transient long org.objectweb.cjdbc.common.sql.AbstractRequest.id [protected]
 

Request unique id (set by the controller). AbstractRequest.java43 行で定義されています。

boolean org.objectweb.cjdbc.common.sql.AbstractRequest.isAutoCommit [protected]
 

Whether this request has been sent in autocommit mode or not. AbstractRequest.java83 行で定義されています。

参照元 org.objectweb.cjdbc.controller.scheduler.schema.TransactionExclusiveLock.acquire(), org.objectweb.cjdbc.common.sql.AbstractRequest.isAutoCommit(), org.objectweb.cjdbc.controller.scheduler.singledb.SingleDBPessimisticTransactionLevelScheduler.notifyWriteCompleted(), org.objectweb.cjdbc.controller.scheduler.raidb2.RAIDb2PessimisticTransactionLevelScheduler.notifyWriteCompleted(), org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1PessimisticTransactionLevelScheduler.notifyWriteCompleted(), org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticTransactionLevelScheduler.notifyWriteCompleted(), org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticQueryLevelScheduler.notifyWriteCompleted(), と org.objectweb.cjdbc.controller.scheduler.raidb0.RAIDb0PessimisticTransactionLevelScheduler.notifyWriteCompleted().

boolean org.objectweb.cjdbc.common.sql.AbstractRequest.isParsed [protected]
 

Whether the SQL content has been parsed or not. AbstractRequest.java61 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.UpdateRequest.cloneParsing(), org.objectweb.cjdbc.common.sql.SelectRequest.cloneParsing(), org.objectweb.cjdbc.common.sql.InsertRequest.cloneParsing(), org.objectweb.cjdbc.common.sql.DropRequest.cloneParsing(), org.objectweb.cjdbc.common.sql.DeleteRequest.cloneParsing(), org.objectweb.cjdbc.common.sql.CreateRequest.cloneParsing(), org.objectweb.cjdbc.common.sql.AlterRequest.cloneParsing(), org.objectweb.cjdbc.controller.cache.parsing.ParsingCache.getParsingFromCache(), と org.objectweb.cjdbc.common.sql.AbstractRequest.isParsed().

boolean org.objectweb.cjdbc.common.sql.AbstractRequest.isReadOnly = false [protected]
 

True if the connection has been set to read-only AbstractRequest.java77 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.isReadOnly().

String org.objectweb.cjdbc.common.sql.AbstractRequest.lineSeparator = null [private]
 

Should match System.getProperty("line.separator") on the driver side. Required for parsing. AbstractRequest.java107 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.getLineSeparator(), と org.objectweb.cjdbc.common.sql.AbstractRequest.trimCarriageReturn().

String org.objectweb.cjdbc.common.sql.AbstractRequest.login [protected]
 

Login used to issue this request (must be set by the VirtualDatabaseWorkerThread). AbstractRequest.java55 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.getLogin().

int org.objectweb.cjdbc.common.sql.AbstractRequest.maxRows [protected]
 

Maximum number of rows in the ResultSet.

参照:
java.sql.Statement.setMaxRows(int)
AbstractRequest.java68 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.getMaxRows(), と org.objectweb.cjdbc.common.sql.AbstractRequest.setMaxRows().

String org.objectweb.cjdbc.common.sql.AbstractRequest.sqlQuery [protected]
 

SQL query (should be set in constructor). AbstractRequest.java46 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.debug(), org.objectweb.cjdbc.common.sql.AbstractRequest.equals(), org.objectweb.cjdbc.common.sql.AbstractRequest.getSQL(), org.objectweb.cjdbc.common.sql.AbstractRequest.getSQLShortForm(), と org.objectweb.cjdbc.common.sql.AbstractRequest.trimCarriageReturn().

String org.objectweb.cjdbc.common.sql.AbstractRequest.sqlSkeleton = null [protected]
 

SQL query skeleton as it appears in PreparedStatements. AbstractRequest.java49 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.getSqlSkeleton(), org.objectweb.cjdbc.common.sql.AbstractRequest.setSqlSkeleton(), と org.objectweb.cjdbc.common.sql.AbstractRequest.trimCarriageReturn().

int org.objectweb.cjdbc.common.sql.AbstractRequest.timeout [protected]
 

Timeout for this request in seconds, value 0 means no timeout (should be set in constructor). AbstractRequest.java95 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.getTimeout().

long org.objectweb.cjdbc.common.sql.AbstractRequest.transactionId [protected]
 

Transaction identifier if this request belongs to a transaction. The value is set by the VirtualDatabaseWorkerThread. AbstractRequest.java89 行で定義されています。

参照元 org.objectweb.cjdbc.common.sql.AbstractRequest.equals(), org.objectweb.cjdbc.common.sql.AbstractRequest.getTransactionId(), と org.objectweb.cjdbc.common.sql.AbstractRequest.setTransactionId().


このクラスの説明は次のファイルから生成されました:
CJDBCversion1.0.4に対してTue Oct 12 15:16:16 2004に生成されました。 doxygen 1.3.8