001: package liquibase.database;
002:
003: import liquibase.ChangeSet;
004: import liquibase.DatabaseChangeLogLock;
005: import liquibase.RanChangeSet;
006: import liquibase.Liquibase;
007: import liquibase.database.sql.SqlStatement;
008: import liquibase.database.template.JdbcTemplate;
009: import liquibase.exception.DatabaseHistoryException;
010: import liquibase.exception.JDBCException;
011: import liquibase.exception.LockException;
012:
013: import java.io.IOException;
014: import java.sql.Connection;
015: import java.sql.SQLException;
016: import java.sql.Time;
017: import java.sql.Timestamp;
018: import java.util.Date;
019: import java.util.List;
020:
021: public class MockDatabase implements Database {
022:
023: public boolean isCorrectDatabaseImplementation(Connection conn)
024: throws JDBCException {
025: return false;
026: }
027:
028: public String getDefaultDriver(String url) {
029: return null;
030: }
031:
032: public DatabaseConnection getConnection() {
033: return null;
034: }
035:
036: public void setConnection(Connection conn) {
037: }
038:
039: public void setConnection(DatabaseConnection conn) {
040: }
041:
042: public boolean getAutoCommitMode() {
043: return false;
044: }
045:
046: public boolean supportsDDLInTransaction() {
047: return false;
048: }
049:
050: public String getDatabaseProductName() {
051: return null;
052: }
053:
054: public String getDatabaseProductVersion() throws JDBCException {
055: return null;
056: }
057:
058: public String getProductName() {
059: return null;
060: }
061:
062: public String getTypeName() {
063: return null;
064: }
065:
066: public String getDriverName() throws JDBCException {
067: return null;
068: }
069:
070: public String getConnectionURL() throws JDBCException {
071: return null;
072: }
073:
074: public String getConnectionUsername() throws JDBCException {
075: return null;
076: }
077:
078: public String getDefaultCatalogName() throws JDBCException {
079: return null;
080: }
081:
082: public String getDefaultSchemaName() {
083: return null;
084: }
085:
086: public void setDefaultSchemaName(String schemaName)
087: throws JDBCException {
088:
089: }
090:
091: public boolean supportsInitiallyDeferrableColumns() {
092: return false;
093: }
094:
095: public boolean supportsSequences() {
096: return true;
097: }
098:
099: public boolean supportsAutoIncrement() {
100: return true;
101: }
102:
103: public String getColumnType(String columnType, Boolean autoIncrement) {
104: return columnType;
105: }
106:
107: public String getFalseBooleanValue() {
108: return "FALSE";
109: }
110:
111: public String getTrueBooleanValue() {
112: return "TRUE";
113: }
114:
115: public String getDateLiteral(String isoDate) {
116: return isoDate;
117: }
118:
119: public String getDateLiteral(java.sql.Date date) {
120: return date.toString();
121: }
122:
123: public String getDateLiteral(Time time) {
124: return time.toString();
125: }
126:
127: public String getDateLiteral(Timestamp timeStamp) {
128: return timeStamp.toString();
129: }
130:
131: public String getCurrentDateTimeFunction() {
132: return "DATETIME()";
133: }
134:
135: public void setCurrentDateTimeFunction(String function) {
136: }
137:
138: public String getLineComment() {
139: return null;
140: }
141:
142: public String getAutoIncrementClause() {
143: return null;
144: }
145:
146: public SqlStatement getCommitSQL() {
147: return null;
148: }
149:
150: public String getDatabaseChangeLogTableName() {
151: return "DATABASECHANGELOG";
152: }
153:
154: public String getDatabaseChangeLogLockTableName() {
155: return "DATABASECHANGELOGLOCK";
156: }
157:
158: public String getConcatSql(String... values) {
159: return null;
160: }
161:
162: public boolean acquireLock(Liquibase liquibase)
163: throws LockException {
164: return false;
165: }
166:
167: public void releaseLock() throws LockException {
168: }
169:
170: public DatabaseChangeLogLock[] listLocks() throws LockException {
171: return new DatabaseChangeLogLock[0];
172: }
173:
174: public boolean doesChangeLogTableExist() {
175: return false;
176: }
177:
178: public boolean doesChangeLogLockTableExist() {
179: return false;
180: }
181:
182: public void checkDatabaseChangeLogTable(Liquibase liquibase)
183: throws JDBCException, IOException {
184: }
185:
186: public void checkDatabaseChangeLogLockTable(Liquibase liquibase)
187: throws JDBCException, IOException {
188: }
189:
190: public void dropDatabaseObjects(String schema) throws JDBCException {
191: }
192:
193: public void tag(String tagString) throws JDBCException {
194: }
195:
196: public boolean doesTagExist(String tag) throws JDBCException {
197: return false;
198: }
199:
200: public boolean isSystemTable(String catalogName, String schemaName,
201: String tableName) {
202: return false;
203: }
204:
205: public boolean isSystemView(String catalogName, String schemaName,
206: String name) {
207: return false;
208: }
209:
210: public boolean isLiquibaseTable(String tableName) {
211: return false;
212: }
213:
214: public SqlStatement createFindSequencesSQL(String schema)
215: throws JDBCException {
216: return null;
217: }
218:
219: public boolean shouldQuoteValue(String value) {
220: return true;
221: }
222:
223: public boolean supportsTablespaces() {
224: return false;
225: }
226:
227: public String getViewDefinition(String schemaName, String name)
228: throws JDBCException {
229: return null;
230: }
231:
232: public int getDatabaseType(int type) {
233: return type;
234: }
235:
236: public String getDatabaseProductName(Connection conn)
237: throws JDBCException {
238: return "Mock Database";
239: }
240:
241: public String getBooleanType() {
242: return "BOOLEAN";
243: }
244:
245: public String getCurrencyType() {
246: return "CURRENCY";
247: }
248:
249: public String getUUIDType() {
250: return "UUID";
251: }
252:
253: public String getClobType() {
254: return "CLOB";
255: }
256:
257: public String getBlobType() {
258: return "BLOB";
259: }
260:
261: public String getDateType() {
262: return "DATE";
263: }
264:
265: public String getDateTimeType() {
266: return "DATETIME";
267: }
268:
269: public String getTimeType() {
270: return "TIME";
271: }
272:
273: public Object convertDatabaseValueToJavaObject(Object defaultValue,
274: int dataType, int columnSize, int decimalDigits) {
275: return defaultValue;
276: }
277:
278: public String convertJavaObjectToString(Object value) {
279: return value.toString();
280: }
281:
282: public String getDateLiteral(Date defaultDateValue) {
283: return defaultDateValue.toString();
284: }
285:
286: public String escapeTableName(String schemaName, String tableName) {
287: if (schemaName == null) {
288: return tableName;
289: } else {
290: return schemaName + "." + tableName;
291: }
292: }
293:
294: public String escapeColumnName(String columnName) {
295: return columnName;
296: }
297:
298: public String escapeColumnNameList(String columnNames) {
299: return columnNames;
300: }
301:
302: public String escapeSequenceName(String schemaName,
303: String sequenceName) {
304: if (sequenceName == null) {
305: return sequenceName;
306: } else {
307: return schemaName + "." + sequenceName;
308: }
309: }
310:
311: public String convertRequestedSchemaToSchema(String requestedSchema)
312: throws JDBCException {
313: return requestedSchema;
314: }
315:
316: public String convertRequestedSchemaToCatalog(String requestedSchema)
317: throws JDBCException {
318: return null;
319: }
320:
321: public boolean supportsSchemas() {
322: return true;
323: }
324:
325: public String generatePrimaryKeyName(String tableName) {
326: return "PK_" + tableName;
327: }
328:
329: public String escapeViewName(String schemaName, String viewName) {
330: return escapeTableName(schemaName, viewName);
331: }
332:
333: public boolean isColumnAutoIncrement(String schemaName,
334: String tableName, String columnName) throws SQLException {
335: return false;
336: }
337:
338: public boolean acquireLock() throws LockException {
339: return false;
340: }
341:
342: public void checkDatabaseChangeLogTable() throws JDBCException {
343: ;
344: }
345:
346: public void checkDatabaseChangeLogLockTable() throws JDBCException {
347: ;
348: }
349:
350: public ChangeSet.RunStatus getRunStatus(ChangeSet changeSet)
351: throws JDBCException, DatabaseHistoryException {
352: return null;
353: }
354:
355: public RanChangeSet getRanChangeSet(ChangeSet changeSet)
356: throws JDBCException, DatabaseHistoryException {
357: return null;
358: }
359:
360: public void markChangeSetAsRan(ChangeSet changeSet)
361: throws JDBCException {
362: ;
363: }
364:
365: public void markChangeSetAsReRan(ChangeSet changeSet)
366: throws JDBCException {
367: ;
368: }
369:
370: public List<RanChangeSet> getRanChangeSetList()
371: throws JDBCException {
372: return null;
373: }
374:
375: public Date getRanDate(ChangeSet changeSet) throws JDBCException,
376: DatabaseHistoryException {
377: return null;
378: }
379:
380: public void removeRanStatus(ChangeSet changeSet)
381: throws JDBCException {
382: ;
383: }
384:
385: public void commit() {
386: ;
387: }
388:
389: public void rollback() {
390: ;
391: }
392:
393: public SqlStatement getSelectChangeLogLockSQL()
394: throws JDBCException {
395: return null;
396: }
397:
398: public JdbcTemplate getJdbcTemplate() {
399: return null;
400: }
401:
402: public void setJdbcTemplate(JdbcTemplate template) {
403: ;
404: }
405:
406: public String escapeStringForDatabase(String string) {
407: return string;
408: }
409:
410: public void close() throws JDBCException {
411: ;
412: }
413: }
|