/
GetAccessTokenJob.java
56 lines (48 loc) · 1.42 KB
/
GetAccessTokenJob.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
package org.nguyenhuy.buffer.job;
import com.path.android.jobqueue.Params;
import org.nguyenhuy.buffer.event.FailedToGetAccessTokenEvent;
import org.nguyenhuy.buffer.event.GotAccessTokenEvent;
import org.nguyenhuy.buffer.util.LogUtils;
import org.scribe.model.Token;
import org.scribe.model.Verifier;
import org.scribe.oauth.OAuthService;
import javax.inject.Inject;
/**
* Created by nguyenthanhhuy on 1/14/14.
*/
public class GetAccessTokenJob extends Job {
private Verifier verifier;
@Inject
transient OAuthService oAuthService;
public GetAccessTokenJob(Verifier verifier) {
super(new Params(JobPriority.UI).requireNetwork());
this.verifier = verifier;
}
@Override
public void onAdded() {
}
@Override
public void onRun() throws Throwable {
final Token accessToken = oAuthService.getAccessToken(null, verifier);
mainHandler.post(new Runnable() {
@Override
public void run() {
bus.post(new GotAccessTokenEvent(accessToken));
}
});
}
@Override
protected void onCancel() {
mainHandler.post(new Runnable() {
@Override
public void run() {
bus.post(new FailedToGetAccessTokenEvent());
}
});
}
@Override
protected boolean shouldReRunOnThrowable(Throwable throwable) {
LogUtils.e(throwable);
return false;
}
}