commit 7dd73c9c072c9cc6a9c11a4c5253792f822d9d2e
parent 2e2d08184ea28cba00df4abfc19224ce13e19934
Author: dankert <devnull@localhost>
Date: Thu, 20 Oct 2011 22:13:22 +0200
Überall OpenratClientTask verwenden...
Diffstat:
5 files changed, 68 insertions(+), 151 deletions(-)
diff --git a/src/de/openrat/android/blog/FolderActivity.java b/src/de/openrat/android/blog/FolderActivity.java
@@ -3,29 +3,17 @@
*/
package de.openrat.android.blog;
-import java.io.File;
import java.io.IOException;
-import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
import android.app.AlertDialog;
import android.app.ListActivity;
-import android.app.Notification;
-import android.app.NotificationManager;
-import android.app.PendingIntent;
-import android.app.ProgressDialog;
-import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.DialogInterface.OnClickListener;
import android.database.Cursor;
import android.net.Uri;
-import android.os.AsyncTask;
import android.os.Bundle;
import android.provider.MediaStore;
import android.util.Log;
@@ -41,12 +29,10 @@ import android.widget.ListView;
import android.widget.Toast;
import android.widget.AdapterView.AdapterContextMenuInfo;
import android.widget.AdapterView.OnItemClickListener;
-import de.openrat.android.blog.FolderEntry.FType;
import de.openrat.android.blog.adapter.FolderContentAdapter;
import de.openrat.android.blog.service.PublishIntentService;
import de.openrat.android.blog.service.UploadIntentService;
import de.openrat.android.blog.util.OpenRatClientAsyncTask;
-import de.openrat.client.CMSRequest;
import de.openrat.client.OpenRatClient;
/**
@@ -77,55 +63,36 @@ public class FolderActivity extends ListActivity
data = new ArrayList<FolderEntry>();
client = (OpenRatClient) getIntent().getSerializableExtra(CLIENT);
- AsyncTask<String, Void, List<FolderEntry>> loadTask = new AsyncTask<String, Void, List<FolderEntry>>()
+ new OpenRatClientAsyncTask(this, R.string.waitingforcontent)
{
-
- ProgressDialog dialog = new ProgressDialog(FolderActivity.this);
-
@Override
- protected void onPreExecute()
- {
- dialog.setTitle(getResources().getString(R.string.loading));
- dialog.setMessage(getResources().getString(
- R.string.waitingforcontent));
- dialog.show();
- }
-
- protected void onPostExecute(List<FolderEntry> result)
+ protected void callServer() throws IOException
{
- dialog.dismiss();
-
- final ListAdapter adapter = new FolderContentAdapter(
- FolderActivity.this, data);
- setListAdapter(adapter);
- };
-
- @Override
- protected List<FolderEntry> doInBackground(String... params)
- {
- //
folderid = getIntent().getStringExtra("folderid");
try
{
- if ( folderid == null )
+ if (folderid == null)
folderid = client.getRootFolder();
-
+
data = client.getFolderEntries(folderid);
}
catch (IOException e)
{
- Log.e(this.getClass().getName(),e.getMessage(),e);
- Toast.makeText(FolderActivity.this,e.getMessage(),Toast.LENGTH_SHORT);
+ Log.e(this.getClass().getName(), e.getMessage(), e);
+ Toast.makeText(FolderActivity.this, e.getMessage(),
+ Toast.LENGTH_SHORT);
}
-
- return data;
}
- };
- loadTask.execute();
- // final ListAdapter adapter = new SimpleAdapter(this, data,
- // R.layout.listing_entry, from, to);
+ protected void doOnSuccess()
+ {
+ final ListAdapter adapter = new FolderContentAdapter(
+ FolderActivity.this, data);
+ setListAdapter(adapter);
+ };
+ }.execute();
+
ListView list = getListView();
list.setOnItemClickListener(new OnItemClickListener()
@@ -226,8 +193,9 @@ public class FolderActivity extends ListActivity
.getMenuInfo();
AlertDialog.Builder builder = new AlertDialog.Builder(this);
- builder.setMessage( getResources().getString(R.string.areyousure)).setCancelable(false)
- .setPositiveButton(
+ builder.setMessage(
+ getResources().getString(R.string.areyousure))
+ .setCancelable(false).setPositiveButton(
getResources().getString(R.string.delete),
new DialogInterface.OnClickListener()
{
@@ -236,11 +204,14 @@ public class FolderActivity extends ListActivity
{
final FolderEntry en = data
.get(mInfo.position);
-
- new OpenRatClientAsyncTask(FolderActivity.this,R.string.waitingfordelete)
+
+ new OpenRatClientAsyncTask(
+ FolderActivity.this,
+ R.string.waitingfordelete)
{
@Override
- protected void callServer() throws IOException
+ protected void callServer()
+ throws IOException
{
client.delete(folderid, en.id);
}
@@ -329,14 +300,16 @@ public class FolderActivity extends ListActivity
Intent intent;
chooseFile = new Intent(Intent.ACTION_GET_CONTENT);
chooseFile.setType("file/*");
- intent = Intent.createChooser(chooseFile, getResources().getString(R.string.choosefile));
+ intent = Intent.createChooser(chooseFile, getResources()
+ .getString(R.string.choosefile));
startActivityForResult(intent, ACTIVITY_CHOOSE_FILE);
return true;
case R.id.menu_upload_image:
chooseFile = new Intent(Intent.ACTION_GET_CONTENT);
chooseFile.setType("image/*");
- intent = Intent.createChooser(chooseFile,getResources().getString(R.string.chooseimage));
+ intent = Intent.createChooser(chooseFile, getResources()
+ .getString(R.string.chooseimage));
startActivityForResult(intent, ACTIVITY_CHOOSE_IMAGE);
return true;
diff --git a/src/de/openrat/android/blog/FolderEntry.java b/src/de/openrat/android/blog/FolderEntry.java
@@ -1,17 +1,27 @@
package de.openrat.android.blog;
-
public class FolderEntry
{
public FType type;
public String id;
public String name;
public String description;
-
public enum FType
{
FOLDER, PAGE, FILE, LINK, PROJECT;
}
+ /**
+ * {@inheritDoc}
+ *
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString()
+ {
+ return "FolderEntry [id=" + id + ", name=" + name + ", type=" + type
+ + "]";
+ }
+
}
diff --git a/src/de/openrat/android/blog/OpenRatBlog.java b/src/de/openrat/android/blog/OpenRatBlog.java
@@ -29,6 +29,7 @@ import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.text.TextUtils;
+import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
@@ -111,8 +112,10 @@ public class OpenRatBlog extends ListActivity
client = new OpenRatClient(host, path, port);
- client.login(prefs.getString("username", ""), prefs
+ final String username = prefs.getString("username", "");
+ client.login(username, prefs
.getString("password", ""),dbid);
+ Log.d(OpenRatBlog.this.getClass().getSimpleName(), "User login: "+username );
}
diff --git a/src/de/openrat/android/blog/ProjectActivity.java b/src/de/openrat/android/blog/ProjectActivity.java
@@ -8,18 +8,16 @@ import java.util.ArrayList;
import java.util.List;
import android.app.ListActivity;
-import android.app.ProgressDialog;
import android.content.Intent;
-import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListAdapter;
import android.widget.ListView;
-import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;
import de.openrat.android.blog.adapter.FolderContentAdapter;
+import de.openrat.android.blog.util.OpenRatClientAsyncTask;
import de.openrat.client.OpenRatClient;
/**
@@ -28,13 +26,15 @@ import de.openrat.client.OpenRatClient;
*/
public class ProjectActivity extends ListActivity
{
- private static final String ID2 = "id";
public static final String CLIENT = "client";
- private static final String NAME = "name";
- private static final String DESCRIPTION = "description";
private OpenRatClient client;
- private List<FolderEntry> data;
+ private List<FolderEntry> data = new ArrayList<FolderEntry>();
+ /**
+ * {@inheritDoc}
+ *
+ * @see android.app.Activity#onCreate(android.os.Bundle)
+ */
@Override
protected void onCreate(Bundle savedInstanceState)
{
@@ -42,64 +42,25 @@ public class ProjectActivity extends ListActivity
super.onCreate(savedInstanceState);
- int[] to = new int[] { R.id.listentry_name, R.id.listentry_description };
- ;
- String[] from = new String[] { NAME, DESCRIPTION };
- ;
-
client = (OpenRatClient) getIntent().getSerializableExtra(CLIENT);
- AsyncTask<String, Void, List<FolderEntry>> loadProjectsTask = new AsyncTask<String, Void, List<FolderEntry>>()
+ new OpenRatClientAsyncTask(this, R.string.waitingforprojects)
{
- ProgressDialog dialog = new ProgressDialog(ProjectActivity.this);
-
- @Override
- protected void onPreExecute()
+ protected void doOnSuccess()
{
- dialog.setTitle(getResources().getString(R.string.loading));
- dialog.setMessage(getResources().getString(
- R.string.waitingforprojects));
- dialog.show();
- }
-
- protected void onPostExecute(List<FolderEntry> result)
- {
- dialog.dismiss();
-
final ListAdapter adapter = new FolderContentAdapter(
ProjectActivity.this, data);
setListAdapter(adapter);
- };
+ }
- @Override
- protected List<FolderEntry> doInBackground(String... params)
+ protected void callServer() throws IOException
{
- //
- try
- {
- data = client.loadProjects();
- }
- catch (final IOException e)
- {
- Log.e(this.getClass().getName(), e.getMessage(), e);
- runOnUiThread(new Runnable()
- {
- @Override
- public void run()
- {
- Toast.makeText(ProjectActivity.this,
- e.getMessage(), Toast.LENGTH_SHORT);
- }
- });
- data = new ArrayList<FolderEntry>();
- }
-
- return data;
+ data = client.loadProjects();
+ Log.d(ProjectActivity.this.getClass().getSimpleName(), "Lade Projekte: "+data.toString() );
}
- };
- loadProjectsTask.execute();
+ }.execute();
ListView list = getListView();
@@ -113,59 +74,28 @@ public class ProjectActivity extends ListActivity
// Projekt auswählen
final String projectid = data.get(position).id;
- AsyncTask<String, Void, Void> startProjectTask = /**
- * Starten des
- * ausgewählten Projektes.
- *
- * @author dankert
- *
- */
- new AsyncTask<String, Void, Void>()
+ new OpenRatClientAsyncTask(ProjectActivity.this,
+ R.string.waitingforselectproject)
{
- ProgressDialog dialog = new ProgressDialog(
- ProjectActivity.this);
-
@Override
- protected void onPreExecute()
+ protected void callServer() throws IOException
{
- dialog.setTitle(R.string.loading);
- dialog.setMessage(getResources().getString(
- R.string.waitingforselectproject));
- dialog.show();
+ client.selectProject(projectid);
+ Log.d(ProjectActivity.this.getClass().getSimpleName(), "Waehle Projekt: "+projectid );
}
- protected void onPostExecute(Void result)
- {
- dialog.dismiss();
- };
-
@Override
- protected Void doInBackground(String... params)
+ protected void doOnSuccess()
{
- //
- try
- {
- client.selectProject(projectid);
- }
- catch (IOException e)
- {
- Log.e(this.getClass().getName(), e.getMessage(), e);
- Toast.makeText(ProjectActivity.this,
- e.getMessage(), Toast.LENGTH_SHORT);
- }
-
final Intent i = new Intent(ProjectActivity.this,
FolderActivity.class);
i.putExtra(CLIENT, client);
startActivity(i);
- return null;
}
- };
-
- startProjectTask.execute();
+ }.execute();
}
});
diff --git a/src/de/openrat/client/OpenRatClient.java b/src/de/openrat/client/OpenRatClient.java
@@ -392,9 +392,10 @@ public class OpenRatClient extends CMSRequest
{
super.clearParameters();
- super.setParameter("action", "index");
- super.setParameter("subaction", "project");
+ super.setAction("index");
+ super.setActionMethod("project");
super.setParameter("id", projectid);
+ super.setMethod("POST");
readJSON();
}