package com.iteedu.www;
import java.util.ArrayList;
import android.content.ContentResolver;
import android.content.Intent;
import android.database.Cursor;
import android.os.Build;
public abstract class ContactAPI {
private static ContactAPI api;
public static ContactAPI getAPI() {
if (api == null) {
String apiClass;
if (Integer.parseInt(Build.VERSION.SDK) >= Build.VERSION_CODES.ECLAIR) {
apiClass = "com.iteedu.www.ContactAPISdk5";
} else {
apiClass = "com.iteedu.www.ContactAPISdk3";
}
try {
Class<? extends ContactAPI> realClass = Class.forName(apiClass)
.asSubclass(ContactAPI.class);
api = realClass.newInstance();
} catch (Exception e) {
throw new IllegalStateException(e);
}
}
return api;
}
public abstract Intent getContactIntent();
public abstract ContactList newContactList();
public abstract ContactNameList newContactNameList();
public abstract Cursor getCur();
public abstract void setCur(Cursor cur);
public abstract ContentResolver getCr();
public abstract void setCr(ContentResolver cr);
public abstract ArrayList<Phone> getPhoneNumbers(String id);
public abstract ArrayList<Email> getEmailAddresses(String id);
public abstract ArrayList<Address> getContactAddresses(String id);
public abstract ArrayList<String> getContactNotes(String id);
public abstract Organization getContactOrg(String id);
public abstract ArrayList<IM> getIM(String id);
public abstract Contact getContactByID(String id);
public abstract ContactName getContactNameByID(String id);
}