Android Open Source - dandy Abstract Drupal Node List Activity From Project Back to project page dandy .
License The source code is released under:
GNU General Public License
If you think the Android project dandy listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code package com.workhabit.drupal.publisher;
/ * w w w . j a v a 2 s . c o m * /
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ListView;
import com.workhabit.drupal.publisher.support.DrupalDialogHandler;
import com.workhabit.drupal.publisher.support.DrupalNodeArrayAdapter;
import org.workhabit.drupal.api.entity.drupal7.DrupalNode;
import org.workhabit.drupal.api.site.Drupal7SiteContext;
import org.workhabit.drupal.api.site.exceptions.DrupalFetchException;
import org.workhabit.drupal.api.site.DrupalSiteContext;
import java.util.List;
/**
* Copyright 2009 - WorkHabit, Inc. - acs
* Date: 11/3/10, 8:45 PM
*/
public abstract class AbstractDrupalNodeListActivity extends AbstractDandyListActivity {
protected DrupalNodeArrayAdapter nodeAdapter;
protected Drupal7SiteContext drupalSiteContext;
protected String viewArguments;
protected String viewName;
protected void setViewName(String viewName) {
this.viewName = viewName;
}
protected void setViewArguments(String viewArguments) {
this.viewArguments = viewArguments;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
drupalSiteContext = DandyApplication.getDrupalSiteContext(savedInstanceState);
try {
if (viewName == null || "" .equals(viewName)) {
viewName = getIntent().getStringExtra("viewName" );
}
if (viewArguments == null) {
viewArguments = getIntent().getStringExtra("viewArguments" );
}
// fetch list of recent drupal nodes
//
List<DrupalNode> nodes = doGetNodes(viewArguments, this.viewName);
// we use a custom node adapter
if (nodeAdapter == null) {
nodeAdapter = new DrupalNodeArrayAdapter(this , R.layout.row, nodes);
}
setListAdapter(nodeAdapter);
nodeAdapter.notifyDataSetChanged();
} catch (DrupalFetchException e) {
DrupalDialogHandler.showMessageDialog(this , e.getMessage());
}
setContentView(R.layout.nodelist);
}
protected abstract List<DrupalNode> doGetNodes(String viewArguments, String viewName) throws DrupalFetchException;
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
Intent intent = new Intent(this.getApplicationContext(), DrupalNodeActivity.class);
intent.putExtra("nid" , nodeAdapter.getNodes().get(position).getNid());
this.startActivity(intent);
}
}
Java Source Code List com.workhabit.drupal.publisher.AbstractDandyActivity.java com.workhabit.drupal.publisher.AbstractDandyListActivity.java com.workhabit.drupal.publisher.AbstractDrupalNodeListActivity.java com.workhabit.drupal.publisher.DandyApplication.java com.workhabit.drupal.publisher.DrupalHeadlineNodeListActivity.java com.workhabit.drupal.publisher.DrupalLoginActivity.java com.workhabit.drupal.publisher.DrupalNodeActivity.java com.workhabit.drupal.publisher.DrupalNodeListViewActivity.java com.workhabit.drupal.publisher.DrupalTaxonomyListActivity.java com.workhabit.drupal.publisher.NewCommentActivity.java com.workhabit.drupal.publisher.support.BottomNavClickHandler.java com.workhabit.drupal.publisher.support.DrupalDialogHandler.java com.workhabit.drupal.publisher.support.DrupalNodeArrayAdapter.java com.workhabit.drupal.publisher.support.DrupalTaxonomyAdapter.java org.workhabit.drupal.api.annotations.IdFieldName.java org.workhabit.drupal.api.entity.drupal7.DrupalBody.java org.workhabit.drupal.api.entity.drupal7.DrupalComment.java org.workhabit.drupal.api.entity.drupal7.DrupalEntity.java org.workhabit.drupal.api.entity.drupal7.DrupalField.java org.workhabit.drupal.api.entity.drupal7.DrupalFile.java org.workhabit.drupal.api.entity.drupal7.DrupalNode.java org.workhabit.drupal.api.entity.drupal7.DrupalTaxonomyTerm.java org.workhabit.drupal.api.entity.drupal7.DrupalUser.java org.workhabit.drupal.api.entity.drupal7.ReadItLater.java org.workhabit.drupal.api.json.BooleanAdapter.java org.workhabit.drupal.api.json.DrupalFieldAdapter.java org.workhabit.drupal.api.json.DrupalJsonObjectSerializerFactory.java org.workhabit.drupal.api.json.DrupalJsonObjectSerializer.java org.workhabit.drupal.api.json.UnixTimeDateAdapter.java org.workhabit.drupal.api.site.CalendarFactory.java org.workhabit.drupal.api.site.Drupal7SiteContext.java org.workhabit.drupal.api.site.DrupalSiteContext.java org.workhabit.drupal.api.site.NonceFactory.java org.workhabit.drupal.api.site.exceptions.DrupalFetchException.java org.workhabit.drupal.api.site.exceptions.DrupalLoginException.java org.workhabit.drupal.api.site.exceptions.DrupalLogoutException.java org.workhabit.drupal.api.site.exceptions.DrupalSaveException.java org.workhabit.drupal.api.site.exceptions.DrupalServicesResponseException.java org.workhabit.drupal.api.site.impl.DrupalSiteContextInstanceStateImpl.java org.workhabit.drupal.api.site.impl.DrupalSiteContextInstanceState.java org.workhabit.drupal.api.site.impl.v3.Drupal6SiteContextImpl.java org.workhabit.drupal.api.site.impl.v3.Drupal7SiteContextImpl.java org.workhabit.drupal.api.site.impl.v3.DrupalSiteContextBridge.java org.workhabit.drupal.api.site.support.AndroidDrupalServicesRequestManagerImpl.java org.workhabit.drupal.api.site.support.GenericCookie.java org.workhabit.drupal.api.site.support.HttpUrlConnectionFactoryImpl.java org.workhabit.drupal.api.site.support.HttpUrlConnectionFactory.java org.workhabit.drupal.api.site.support.NonceFactoryImpl.java org.workhabit.drupal.http.DrupalServicesRequestManager.java org.workhabit.drupal.http.ServicesResponse.java