MCPcopy Create free account
hub / github.com/Odoo-mobile/framework / handleResultArray

Method handleResultArray

src/com/odoo/orm/OEHelper.java:294–346  ·  view source on GitHub ↗
(OEFieldsHelper fields, JSONArray results,
			boolean removeLocalIfNotExists)

Source from the content-addressed store, hash-verified

292 }
293
294 private boolean handleResultArray(OEFieldsHelper fields, JSONArray results,
295 boolean removeLocalIfNotExists) {
296 boolean flag = false;
297 try {
298 fields.addAll(results);
299 List<OERelationData> rel_models = fields.getRelationData();
300 for (OERelationData rel : rel_models) {
301 // Handling many2many records
302 if (rel.getDb() instanceof OEManyToMany) {
303 Log.v(TAG, "Syncing ManyToMany Records");
304 OEManyToMany m2mObj = (OEManyToMany) rel.getDb();
305 OEHelper oe = ((OEDatabase) m2mObj.getDBHelper())
306 .getOEInstance();
307 oe.syncWithServer(false, null, rel.getIds(), false, 0,
308 false);
309
310 } else if (rel.getDb() instanceof OEManyToOne) {
311 // Handling many2One records
312 Log.v(TAG, "Syncing ManyToOne Records");
313 OEManyToOne m2oObj = (OEManyToOne) rel.getDb();
314 OEHelper oe = ((OEDatabase) m2oObj.getDBHelper())
315 .getOEInstance();
316 oe.syncWithServer(false, null, rel.getIds(), false, 0,
317 false);
318 } else if (rel.getDb() instanceof OEOneToMany) {
319 Log.v(TAG, "Syncing OneToMany Records");
320 OEOneToMany o2mObj = (OEOneToMany) rel.getDb();
321 OEHelper oe = ((OEDatabase) o2mObj.getDBHelper())
322 .getOEInstance();
323 oe.setOne2ManyCol(o2mObj.getColumnName());
324 oe.syncWithServer(false, null, rel.getIds(), false, 0,
325 false);
326 } else {
327 Log.v(TAG, "Syncing "
328 + rel.getDb().getClass().getSimpleName()
329 + " Records");
330 OEHelper oe = ((OEDatabase) rel.getDb()).getOEInstance();
331 oe.syncWithServer(false, null, rel.getIds(), false, 0,
332 false);
333 }
334 }
335 List<Long> result_ids = mDatabase.createORReplace(
336 fields.getValues(), removeLocalIfNotExists);
337 mResultIds.addAll(result_ids);
338 mRemovedRecordss.addAll(mDatabase.getRemovedRecords());
339 if (result_ids.size() > 0) {
340 flag = true;
341 }
342 } catch (Exception e) {
343 e.printStackTrace();
344 }
345 return flag;
346 }
347
348 public boolean isModelInstalled(String model) {
349 boolean installed = true;

Callers 2

syncWithMethodMethod · 0.95
syncWithServerMethod · 0.95

Calls 15

getDBHelperMethod · 0.95
syncWithServerMethod · 0.95
getDBHelperMethod · 0.95
getDBHelperMethod · 0.95
setOne2ManyColMethod · 0.95
getColumnNameMethod · 0.95
addAllMethod · 0.80
getRelationDataMethod · 0.80
getDbMethod · 0.80
createORReplaceMethod · 0.80
getValuesMethod · 0.80
sizeMethod · 0.80

Tested by

no test coverage detected