private bool saveServer() { database = dbhelper.WritableDatabase; bool result = false; try { URI uri = new URI(FindViewById<EditText>(Resource.Id.edit_server_host).Text); string name = FindViewById<EditText>(Resource.Id.edit_server_name).Text; string scheme = null; string host = uri.Host; string port = FindViewById<EditText>(Resource.Id.edit_server_port).Text; string user = FindViewById<EditText>(Resource.Id.edit_server_user).Text; string pass = FindViewById<EditText>(Resource.Id.edit_server_pass).Text; if (uri.Scheme == null) { scheme = "http"; host = uri.SchemeSpecificPart; } else { scheme = uri.Scheme; } if (name.Length == 0 || host.Length == 0 || port.Length == 0 || user.Length == 0) { Toast.MakeText(this, "One or more fields are empty", ToastLength.Short).Show(); return false; } ContentValues values = new ContentValues(); values.Put(YastroidOpenHelper.SERVERS_NAME, name); values.Put(YastroidOpenHelper.SERVERS_SCHEME, scheme); values.Put(YastroidOpenHelper.SERVERS_HOST, host); values.Put(YastroidOpenHelper.SERVERS_PORT, port); values.Put(YastroidOpenHelper.SERVERS_USER, user); if(pass.Length == 0 ) values.Put(YastroidOpenHelper.SERVERS_PASS, s.getPass()); else values.Put(YastroidOpenHelper.SERVERS_PASS, pass); values.Put(YastroidOpenHelper.SERVERS_GROUP, s.getGroupId()); database.Update(YastroidOpenHelper.SERVERS_TABLE_NAME, values, YastroidOpenHelper.SERVERS_ID + "=" + s.getId(), null); database.Close(); Log.Info("ARRAY", "WebYaST server " + name + " has been updated."); result = true; } catch (Exception e) { Log.Error("BACKGROUND_PROC", e.Message); } Toast.MakeText(this, "Server Updated", ToastLength.Short).Show(); return result; }
/** * Execute update using the current internal state as {@code WHERE} clause. */ public int Update(SQLiteDatabase db, ContentValues values) { AssertTable(); if (LOGV) Log.Verbose(TAG, "update() " + this); return db.Update(mTable, values, GetSelection(), GetSelectionArgs()); }