2015-01-03 16:34:32 +01:00
|
|
|
package com.minres.scviewer.database.sqlite;
|
|
|
|
|
|
|
|
import java.io.File;
|
|
|
|
import java.io.FileInputStream;
|
|
|
|
|
2015-01-06 17:14:16 +01:00
|
|
|
import com.minres.scviewer.database.IWaveformDb;
|
|
|
|
import com.minres.scviewer.database.IWaveformDbFactory;
|
2015-01-03 16:34:32 +01:00
|
|
|
|
2015-01-06 17:14:16 +01:00
|
|
|
public class SQLiteDbFactory implements IWaveformDbFactory {
|
2015-01-03 16:34:32 +01:00
|
|
|
|
|
|
|
private byte[] x = "SQLite format 3".getBytes();
|
|
|
|
|
|
|
|
public SQLiteDbFactory() {
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2015-01-06 17:14:16 +01:00
|
|
|
public IWaveformDb createDatabase(File file) {
|
2015-01-03 16:34:32 +01:00
|
|
|
try {
|
|
|
|
FileInputStream fis = new FileInputStream(file);
|
|
|
|
byte[] buffer = new byte[x.length];
|
|
|
|
int read = fis.read(buffer, 0, x.length);
|
|
|
|
fis.close();
|
|
|
|
if (read == x.length)
|
|
|
|
for (int i = 0; i < x.length; i++)
|
|
|
|
if (buffer[i] != x[i])
|
|
|
|
return null;
|
|
|
|
SQLiteDb db = new SQLiteDb();
|
|
|
|
db.load(file);
|
|
|
|
return db;
|
|
|
|
} catch (Exception e) {
|
|
|
|
e.printStackTrace();
|
|
|
|
}
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|