@Override
 public <T> List<T> getData(Class<T> returnTypeClass, String whereClause, String[] whereArgs) {
   List<T> data = new LinkedList<>();
   SQLiteDatabase db = null;
   Cursor cur = null;
   try {
     db = DB.getInstance(mContext).getDB(false);
     if (!isTableExists()) {
       db.execSQL(CREATE_TABLE);
     }
     String sql = "SELECT * FROM " + TABLE_NAME + " WHERE " + whereClause;
     cur = db.rawQuery(sql, whereArgs);
     if (cur != null) {
       TBIRIGATANGGULN tbirigatangguln = null;
       if (cur.moveToFirst()) {
         do {
           tbirigatangguln = new TBIRIGATANGGULN();
           // FCIRIGAPBWPRILN = new fcirigapbwpriln();
           // myLayer = new MyLayer();
           tbirigatangguln.setId(cur.getInt(0));
           tbirigatangguln.setKodeaset(cur.getInt(1));
           tbirigatangguln.setNama_Jaringan_Irigasi(cur.getInt(2));
           tbirigatangguln.setKondisi(cur.getString(3));
           tbirigatangguln.setInformasi_Tambahan(cur.getString(4));
           data.add(returnTypeClass.cast(tbirigatangguln));
         } while (cur.moveToNext());
       }
       cur.close();
     }
   } catch (Exception e) {
     Log.e(TAG, e.getMessage());
   } finally {
     if (db != null) {
       db.close();
     }
   }
   return data;
 }