Initial commit
[mustard2:mustard2.git] / src / org / mustard2 / provider / CommonMicroBlogProvider.java
1 /**
2  * MUSTARD: Android's Client for StatusNet
3  * 
4  * Copyright (C) 2009-2010 macno.org, Michele Azzolari
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful, but
12  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13  * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14  * for more details.
15  *
16  * You should have received a copy of the GNU General Public License along
17  * with this program; if not, write to the Free Software Foundation, Inc.,
18  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19  * 
20  */
21 package org.mustard2.provider;
22
23 import java.net.URL;
24
25 import oauth.signpost.commonshttp.CommonsHttpOAuthConsumer;
26
27 import org.mustard2.android.MustardException;
28 import org.mustard2.util.HttpManager;
29
30 import android.content.Context;
31
32 /**
33  * @author macno
34  *
35  */
36 public abstract class CommonMicroBlogProvider implements MicroBlogProvider {
37
38         protected HttpManager mHttpManager = null;
39         protected URL mURL;
40         protected String mUsername;
41         protected Context mContext;
42         
43         public void setContext(Context context) {
44                 mContext=context;
45         }
46         
47         public void setURL(URL url) {
48                 mURL = url;
49                 String host = url.getHost();
50                 mHttpManager = new HttpManager(mContext,host);
51         }
52
53         public URL getURL() {
54                 return mURL;
55         }
56         
57         public void setCredentials(String username, String password) throws MustardException {
58                 if (mHttpManager == null) {
59                         throw new MustardException("You must call setURL prior"); 
60                 }
61                 mHttpManager.setCredentials(username, password);
62                 mUsername=username;
63                 return ;
64         }
65
66         public void setCredentials(CommonsHttpOAuthConsumer consumer,String username) throws MustardException {
67                 if (mHttpManager == null) {
68                         throw new MustardException("You must call setURL prior"); 
69                 }
70                 mHttpManager.setOAuthConsumer(consumer);
71                 mUsername=username;
72         }
73         
74         public String getUsername() {
75                 return mUsername;
76         }
77 }