use of android.database.SQLException in project aware-client by denzilferreira.
the class Barometer_Provider method bulkInsert.
/**
* Batch insert for high performance sensors (e.g., accelerometer, etc)
*
* @param uri
* @param values
* @return values.length
*/
@Override
public synchronized int bulkInsert(Uri uri, ContentValues[] values) {
initialiseDatabase();
database.beginTransaction();
int count = 0;
switch(sUriMatcher.match(uri)) {
case SENSOR_DEV:
for (ContentValues v : values) {
long id;
try {
id = database.insertOrThrow(DATABASE_TABLES[0], Barometer_Sensor.DEVICE_ID, v);
} catch (SQLException e) {
id = database.replace(DATABASE_TABLES[0], Barometer_Sensor.DEVICE_ID, v);
}
if (id <= 0) {
Log.w(Barometer.TAG, "Failed to insert/replace row into " + uri);
} else {
count++;
}
}
break;
case SENSOR_DATA:
for (ContentValues v : values) {
long id;
try {
id = database.insertOrThrow(DATABASE_TABLES[1], Barometer_Data.DEVICE_ID, v);
} catch (SQLException e) {
id = database.replace(DATABASE_TABLES[1], Barometer_Data.DEVICE_ID, v);
}
if (id <= 0) {
Log.w(Barometer.TAG, "Failed to insert/replace row into " + uri);
} else {
count++;
}
}
break;
default:
database.endTransaction();
throw new IllegalArgumentException("Unknown URI " + uri);
}
database.setTransactionSuccessful();
database.endTransaction();
getContext().getContentResolver().notifyChange(uri, null, false);
return count;
}
use of android.database.SQLException in project aware-client by denzilferreira.
the class ESM_Provider method insert.
/**
* Insert entry to the database
*/
@Override
public synchronized Uri insert(Uri uri, ContentValues initialValues) {
initialiseDatabase();
ContentValues values = (initialValues != null) ? new ContentValues(initialValues) : new ContentValues();
database.beginTransaction();
switch(sUriMatcher.match(uri)) {
case ESMS_QUEUE:
long quest_id = database.insertWithOnConflict(DATABASE_TABLES[0], ESM_Data.DEVICE_ID, values, SQLiteDatabase.CONFLICT_IGNORE);
database.setTransactionSuccessful();
database.endTransaction();
if (quest_id > 0) {
Uri questUri = ContentUris.withAppendedId(ESM_Data.CONTENT_URI, quest_id);
getContext().getContentResolver().notifyChange(questUri, null, false);
return questUri;
}
database.endTransaction();
throw new SQLException("Failed to insert row into " + uri);
default:
database.endTransaction();
throw new IllegalArgumentException("Unknown URI " + uri);
}
}
use of android.database.SQLException in project aware-client by denzilferreira.
the class Gravity_Provider method bulkInsert.
/**
* Batch insert for high performance sensors (e.g., accelerometer, etc)
*
* @param uri
* @param values
* @return values.length
*/
@Override
public synchronized int bulkInsert(Uri uri, ContentValues[] values) {
initialiseDatabase();
database.beginTransaction();
int count = 0;
switch(sUriMatcher.match(uri)) {
case SENSOR_DEV:
for (ContentValues v : values) {
long id;
try {
id = database.insertOrThrow(DATABASE_TABLES[0], Gravity_Sensor.DEVICE_ID, v);
} catch (SQLException e) {
id = database.replace(DATABASE_TABLES[0], Gravity_Sensor.DEVICE_ID, v);
}
if (id <= 0) {
Log.w(Barometer.TAG, "Failed to insert/replace row into " + uri);
} else {
count++;
}
}
break;
case SENSOR_DATA:
for (ContentValues v : values) {
long id;
try {
id = database.insertOrThrow(DATABASE_TABLES[1], Gravity_Data.DEVICE_ID, v);
} catch (SQLException e) {
id = database.replace(DATABASE_TABLES[1], Gravity_Data.DEVICE_ID, v);
}
if (id <= 0) {
Log.w(Barometer.TAG, "Failed to insert/replace row into " + uri);
} else {
count++;
}
}
break;
default:
database.endTransaction();
throw new IllegalArgumentException("Unknown URI " + uri);
}
database.setTransactionSuccessful();
database.endTransaction();
getContext().getContentResolver().notifyChange(uri, null, false);
return count;
}
use of android.database.SQLException in project aware-client by denzilferreira.
the class Gyroscope_Provider method bulkInsert.
/**
* Batch insert for high performance sensors (e.g., accelerometer, etc)
*
* @param uri
* @param values
* @return values.length
*/
@Override
public synchronized int bulkInsert(Uri uri, ContentValues[] values) {
initialiseDatabase();
database.beginTransaction();
int count = 0;
switch(sUriMatcher.match(uri)) {
case GYRO_DEV:
for (ContentValues v : values) {
long id;
try {
id = database.insertOrThrow(DATABASE_TABLES[0], Gyroscope_Sensor.DEVICE_ID, v);
} catch (SQLException e) {
id = database.replace(DATABASE_TABLES[0], Gyroscope_Sensor.DEVICE_ID, v);
}
if (id <= 0) {
Log.w(Barometer.TAG, "Failed to insert/replace row into " + uri);
} else {
count++;
}
}
break;
case GYRO_DATA:
for (ContentValues v : values) {
long id;
try {
id = database.insertOrThrow(DATABASE_TABLES[1], Gyroscope_Data.DEVICE_ID, v);
} catch (SQLException e) {
id = database.replace(DATABASE_TABLES[1], Gyroscope_Data.DEVICE_ID, v);
}
if (id <= 0) {
Log.w(Barometer.TAG, "Failed to insert/replace row into " + uri);
} else {
count++;
}
}
break;
default:
database.endTransaction();
throw new IllegalArgumentException("Unknown URI " + uri);
}
database.setTransactionSuccessful();
database.endTransaction();
getContext().getContentResolver().notifyChange(uri, null, false);
return count;
}
use of android.database.SQLException in project aware-client by denzilferreira.
the class Installations_Provider method insert.
/**
* Insert entry to the database
*/
@Override
public synchronized Uri insert(Uri uri, ContentValues initialValues) {
initialiseDatabase();
ContentValues values = (initialValues != null) ? new ContentValues(initialValues) : new ContentValues();
database.beginTransaction();
switch(sUriMatcher.match(uri)) {
case INSTALLATIONS:
long installations_id = database.insertWithOnConflict(DATABASE_TABLES[0], Installations_Data.PACKAGE_NAME, values, SQLiteDatabase.CONFLICT_IGNORE);
database.setTransactionSuccessful();
database.endTransaction();
if (installations_id > 0) {
Uri installationsUri = ContentUris.withAppendedId(Installations_Data.CONTENT_URI, installations_id);
getContext().getContentResolver().notifyChange(installationsUri, null, false);
return installationsUri;
}
database.endTransaction();
throw new SQLException("Failed to insert row into " + uri);
default:
database.endTransaction();
throw new IllegalArgumentException("Unknown URI " + uri);
}
}
Aggregations