this is my function which returns the arraylist of objects which are in database:-
public ArrayList<StoreInfo> get_not_synced()
{
not_synced_objects.clear();
String a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21;
Cursor cur=db.rawQuery("select * from store_info ",null);
if (cur.getCount() >0)
{
cur.moveToFirst();
do
{
a21=cur.getString(cur.getColumnIndex("store_type"));
if(a21.equals("old store"))
{
a1=cur.getString(cur.getColumnIndex("store_id"));
}
else
{
a1=cur.getString(cur.getColumnIndex("_id"));
}
a2=cur.getString(cur.getColumnIndex("name"));
a3=cur.getString(cur.getColumnIndex("address"));
a4=cur.getString(cur.getColumnIndex("landmark"));
a5=cur.getString(cur.getColumnIndex("pincode"));
a6=cur.getString(cur.getColumnIndex("city"));
a7=cur.getString(cur.getColumnIndex("state"));
a8=cur.getString(cur.getColumnIndex("phone_nos"));
a9=cur.getString(cur.getColumnIndex("sell_flipkart"));
a10=cur.getString(cur.getColumnIndex("sell_snapdeal"));
a11=cur.getString(cur.getColumnIndex("owner"));
a12=cur.getString(cur.getColumnIndex("days"));
a13=cur.getString(cur.getColumnIndex("timings"));
a14=cur.getString(cur.getColumnIndex("contact_person"));
a15=cur.getString(cur.getColumnIndex("brands"));
a16=cur.getString(cur.getColumnIndex("categories"));
a17=cur.getString(cur.getColumnIndex("latitude"));
a18=cur.getString(cur.getColumnIndex("longitude"));
a19=cur.getString(cur.getColumnIndex("store_type"));
a20=cur.getString(cur.getColumnIndex("locality"));
a21=cur.getString(cur.getColumnIndex("id_value"));
not_synced_objects.add(new StoreInfo(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,
a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21));
}
while (cur.moveToNext());
cur.close();
}
return not_synced_objects;}
now i am receiving this arraylist in an intent service and sending this to my server using this code:-
for(int i=0;i<10;i++)
{
if(cc.isConnectingToInternet())
{
send_data(store_info.get(i));
}}
my send_data function is :-
public void send_data(StoreInfo sinfo)
{
String json_subct="",status="",id;
JSONObject json_object,json_object1, json_object2;
HttpParams httpParameters = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParameters,10000);
HttpConnectionParams.setSoTimeout(httpParameters, 10000);
HttpClient httpclient = new DefaultHttpClient(httpParameters);
HttpPost httppost = new HttpPost(
"http://hannah.reviews42.co/api/stores/create/");
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(
18);
nameValuePairs.add(new BasicNameValuePair("appversion","1.4"));
nameValuePairs.add(new BasicNameValuePair("name",sinfo.getName()));
nameValuePairs.add(new BasicNameValuePair("address",sinfo.getAddress()));
nameValuePairs.add(new BasicNameValuePair("landmark",sinfo.getLandark()));
nameValuePairs.add(new BasicNameValuePair("pincode",sinfo.getPincode()));
nameValuePairs.add(new BasicNameValuePair("city",sinfo.getCity()));
nameValuePairs.add(new BasicNameValuePair("state",sinfo.getState()));
nameValuePairs.add(new BasicNameValuePair("phone_nos",sinfo.getPhone_no()));
nameValuePairs.add(new BasicNameValuePair("days",sinfo.getDays()));
nameValuePairs.add(new BasicNameValuePair("owner",sinfo.getOwner()));
nameValuePairs.add(new BasicNameValuePair("timings",sinfo.getTimings())); nameValuePairs.add(newBasicNameValuePair("contact_person",sinfo.getContact_person()));
nameValuePairs.add(new BasicNameValuePair("flipkart",sinfo.getSell_flipkart()));
nameValuePairs.add(new BasicNameValuePair("brand_list",sinfo.getBrands()));
nameValuePairs.add(new BasicNameValuePair("category",sinfo.getCategories()));
nameValuePairs.add(new BasicNameValuePair("latitude",sinfo.getLatitude()));
nameValuePairs.add(new BasicNameValuePair("longitude",sinfo.getLongitude()));
nameValuePairs.add(new BasicNameValuePair("locality",sinfo.getLocality()));
nameValuePairs.add(new BasicNameValuePair("snapdeal",sinfo.getSell_snapdeal()));
try {
httppost.addHeader("x-auth-token",token);
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
json_subct = EntityUtils.toString(entity);
json_object = new JSONObject(json_subct);
Log.i("json",json_subct);
status = json_object.getString("status");
if(status.equals("success"))
{
json_object1=json_object.getJSONObject("resp_id");
json_object2=json_object1.getJSONObject("_id");
id=json_object2.getString("$oid");
Log.i("id for photo",id);
imb.remove_row(sinfo.getId_value());
Rename_pic(sinfo.getId_value(),id);
status="";
}
//imb.remove_row(sinfo.getId_value());
//Rename_pic(sinfo.getId_value(),id);
//}
}
catch (SocketTimeoutException e)
{
e.printStackTrace();
}
catch (ConnectTimeoutException e)
{
e.printStackTrace();
}catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO -generated catch block
e.printStackTrace();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Log.i("data sent",String.valueOf(imb.get_unsync_count()));
}
}
now my problem is at the end of this function if i check the values in database using the same function get_not_synced() is returns 0 but i haven't deleted the values from database i remove the values in send_data() method but if the loop runs just for 1 time the values returned from the database becomes 0 and i am unable to understand this can somebody please guide me what i am doing wrong here.
0 comments:
Post a Comment