SchedulerDatabaseSchema
describes all the tables and columns of a database and its associated cache entries.
SchedulerDatabaseSchema.java の 41 行で定義されています。
Public メソッド | |
SchedulerDatabaseSchema (DatabaseSchema schema) | |
void | addTable (SchedulerDatabaseTable table) |
void | removeTable (SchedulerDatabaseTable table) |
void | mergeSchema (SchedulerDatabaseSchema databaseSchema) throws SQLException |
ArrayList | getTables () |
SchedulerDatabaseTable | getTable (String tableName) |
boolean | hasTable (String tableName) |
TransactionExclusiveLock | getLock () |
boolean | equals (Object other) |
String | getInformation (boolean longFormat) |
Private 変数 | |
ArrayList | tables |
TransactionExclusiveLock | lock = new TransactionExclusiveLock() |
|
Creates a new
SchedulerDatabaseSchema.java の 54 行で定義されています。 参照先 org.objectweb.cjdbc.common.sql.schema.DatabaseSchema.getTables().
00055 { 00056 if (schema == null) 00057 { 00058 tables = new ArrayList(); 00059 return; 00060 } 00061 00062 // Clone the tables 00063 ArrayList origTables = schema.getTables(); 00064 int size = origTables.size(); 00065 tables = new ArrayList(size); 00066 for (int i = 0; i < size; i++) 00067 tables.add(new SchedulerDatabaseTable((DatabaseTable) origTables.get(i))); 00068 } |
|
Adds a
SchedulerDatabaseSchema.java の 76 行で定義されています。 参照元 org.objectweb.cjdbc.controller.scheduler.schema.SchedulerDatabaseSchema.mergeSchema(), org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticTransactionLevelScheduler.notifyWriteCompleted(), と org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticTransactionLevelScheduler.setDatabaseSchema().
00077 { 00078 tables.add(table); 00079 } |
|
Two
SchedulerDatabaseSchema.java の 188 行で定義されています。 参照先 org.objectweb.cjdbc.controller.scheduler.schema.SchedulerDatabaseSchema.getTables().
00189 { 00190 if (!(other instanceof SchedulerDatabaseSchema)) 00191 return false; 00192 00193 if (tables == null) 00194 return ((SchedulerDatabaseSchema) other).getTables() == null; 00195 else 00196 return tables.equals(((SchedulerDatabaseSchema) other).getTables()); 00197 } |
|
Returns information about the database schema.
SchedulerDatabaseSchema.java の 206 行で定義されています。 参照先 org.objectweb.cjdbc.controller.scheduler.schema.SchedulerDatabaseTable.getInformation().
00207 { 00208 StringBuffer result = new StringBuffer(); 00209 SchedulerDatabaseTable t; 00210 int size = tables.size(); 00211 for (int i = 0; i < size; i++) 00212 { 00213 t = (SchedulerDatabaseTable) tables.get(i); 00214 result.append(t.getInformation(longFormat)); 00215 result.append(System.getProperty("line.separator")); 00216 } 00217 return result.toString(); 00218 } |
|
Returns the lock for this table.
SchedulerDatabaseSchema.java の 176 行で定義されています。
00177 { 00178 return lock; 00179 } |
|
Returns the
SchedulerDatabaseSchema.java の 138 行で定義されています。 参照先 org.objectweb.cjdbc.controller.scheduler.schema.SchedulerDatabaseTable.getName(). 参照元 org.objectweb.cjdbc.controller.scheduler.schema.SchedulerDatabaseSchema.mergeSchema(), org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticTransactionLevelScheduler.notifyWriteCompleted(), と org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticTransactionLevelScheduler.scheduleNonSuspendedWriteRequest().
|
|
Returns an
SchedulerDatabaseSchema.java の 126 行で定義されています。 参照元 org.objectweb.cjdbc.controller.scheduler.schema.SchedulerDatabaseSchema.equals(), org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticTransactionLevelScheduler.releaseLocks(), org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticTransactionLevelScheduler.scheduleNonSuspendedWriteRequest(), と org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticTransactionLevelScheduler.setDatabaseSchema().
00127 { 00128 return tables; 00129 } |
|
Returns
SchedulerDatabaseSchema.java の 158 行で定義されています。 参照先 org.objectweb.cjdbc.controller.scheduler.schema.SchedulerDatabaseTable.getName().
|
|
Merge the given schema with the current one. All missing tables are added if no conflict is detected. An exception is thrown if the given schema definition conflicts with the current one.
SchedulerDatabaseSchema.java の 100 行で定義されています。 参照先 org.objectweb.cjdbc.controller.scheduler.schema.SchedulerDatabaseSchema.addTable(), org.objectweb.cjdbc.controller.scheduler.schema.SchedulerDatabaseTable.getName(), と org.objectweb.cjdbc.controller.scheduler.schema.SchedulerDatabaseSchema.getTable().
00102 { 00103 if (databaseSchema == null) 00104 return; 00105 00106 ArrayList otherTables = databaseSchema.getTables(); 00107 if (otherTables == null) 00108 return; 00109 00110 int size = otherTables.size(); 00111 for (int i = 0; i < size; i++) 00112 { 00113 SchedulerDatabaseTable t = (SchedulerDatabaseTable) otherTables.get(i); 00114 SchedulerDatabaseTable original = getTable(t.getName()); 00115 if (original == null) 00116 addTable(t); 00117 } 00118 } |
|
Removes a
SchedulerDatabaseSchema.java の 87 行で定義されています。 参照元 org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticTransactionLevelScheduler.notifyWriteCompleted(), と org.objectweb.cjdbc.controller.scheduler.raidb1.RAIDb1OptimisticTransactionLevelScheduler.setDatabaseSchema().
00088 { 00089 tables.remove(table); 00090 } |
|
SchedulerDatabaseSchema.java の 46 行で定義されています。 |
|
SchedulerDatabaseSchema.java の 44 行で定義されています。 |