code: package de.itemis.itemisapp;
  
  import java.io.Serializable;
  import java.util.ArrayList;
  import java.util.List;
  
  import android.content.Intent;
  import android.net.Uri;
  import android.os.Bundle;
  import de.itemis.base.AbstractRowAdapter;
  import de.itemis.base.GenericItemAdapter;
  import de.itemis.base.GenericListActivity;
  import de.itemis.base.DetailsActivity;
  import de.itemis.base.RowAdapter;
  import de.itemis.base.SimpleItemContentProvider;
  import de.itemis.base.LabeledIntent;
  
  import com.google.common.base.Splitter;
  import static de.itemis.base.StringUtils.*;
  
  public class CareerView extends DetailsActivity<Career> {
  
  	Career career;
  
  	@Override
  	public void onCreate(Bundle savedInstanceState) {
  		super.onCreate(savedInstanceState);
  
  		setTitle("Carreer");
  
  		career = getItemFromProvider();
  
  		setHeaderDetails(career.getDescription());
  
  		ArrayList<AbstractRowAdapter> rowAdapters = new ArrayList<AbstractRowAdapter>();
  
  		Iterable<Link> items1 = career.getLink();
  		if (items1 != null)
  			for (Link i : items1)
  				rowAdapters.add(new Cell1(i));
  
  		Iterable<JobOffer> items2 = career.getJob();
  		if (items2 != null)
  			for (JobOffer i : items2)
  				rowAdapters.add(new Cell2(i));
  
  		setListAdapter(new GenericItemAdapter(this, rowAdapters));
  		finishCreation();
  
  	}
  
  	private class Cell1 extends RowAdapter.Default<Link> {
  
  		public Cell1(Link item) {
  			super(item);
  		}
  
  		@Override
  		public void populateRowView() {
  			Link l = getItem();
  			setText(l.getTitle());
  
  		}
  
  		@Override
  		public void handleClick() {
  			Link l = getItem();
  
  			Intent intent = new LabeledIntent(Intent.ACTION_VIEW, Uri.parse(l
  					.getUrl()));
  			startActivity(intent);
  
  		}
  
  	}
  
  	private class Cell2 extends RowAdapter.Subtitle<JobOffer> {
  
  		public Cell2(JobOffer item) {
  			super(item);
  		}
  
  		@Override
  		public void populateRowView() {
  			JobOffer j = getItem();
  			setText(j.getLocation());
  			setDetails(j.getTitle());
  
  		}
  
  		@Override
  		public void handleClick() {
  			JobOffer j = getItem();
  
  			Intent intent = new Intent(CareerView.this, JobOfferDetails.class);
  			Serializable contentProvider = ProviderFactory.getJobByIdProvider(j
  					.getId());
  			intent.putExtra("provider", contentProvider);
  			startActivity(intent);
  
  		}
  
  	}
  
  }
  