/*
* Do a put or an update, according to the configuration. For a put (not
* the default), we need to munge the data type.
*/
if ( config.getSaveBehavior() == SaveBehavior.CLOBBER || forcePut ) {
db.putItem(applyUserAgent(new PutItemRequest().withTableName(tableName).withItem(convertToItem(updateValues))
.withExpected(expectedValues)));
} else if ( !nonKeyAttributePresent ) {
keyOnlyPut(tableName, objectKey, hashKeyGetter, rangeKeyGetter);
} else {
db.updateItem(applyUserAgent(new UpdateItemRequest().withTableName(tableName).withKey(objectKey)