package com.nostra13.socialsharing.twitter; import android.content.Context; import com.nostra13.socialsharing.common.AuthListener; /** * @author Sergey Tarasevich (nostra13[at]gmail[dot]com) */ public class TwitterFacade { private Context context; private AsyncTwitter asyncTwitter; private CallbackTwitterDialog dialog; private String consumerKey; private String consumerSecret; public TwitterFacade(Context context, String consumerKey, String consumerSecret) { this.context = context; this.consumerKey = consumerKey; this.consumerSecret = consumerSecret; initTwitter(); } private void initTwitter() { asyncTwitter = new AsyncTwitter(consumerKey, consumerSecret); dialog = new CallbackTwitterDialog(context, asyncTwitter); TwitterSessionStore.restore(asyncTwitter, context); } public boolean isAuthorized() { return TwitterSessionStore.isValidSession(context); } public void authorize() { authorize(null); } public void authorize(AuthListener authListener) { dialog.setAuthListener(authListener); dialog.show(); } public void logout() { TwitterSessionStore.clear(context); initTwitter(); TwitterEvents.onLogoutComplete(); } public void publishMessage(String message) { asyncTwitter.updateStatus(message, new TwitterPostListener()); } }