Android Open Source - links Bookmark Sharer From Project Back to project page links .
License The source code is released under:
MIT License
If you think the Android project links listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code package org.iiitb.se.links.utils.network.bookmarks;
/ * f r o m w w w . j a v a 2 s . c o m * /
import java.util.Set;
import org.iiitb.se.links.R;
import org.iiitb.se.links.home.cards.BookmarkCard;
import org.iiitb.se.links.utils.AppConstants;
import org.iiitb.se.links.utils.StringConstants;
import org.iiitb.se.links.utils.URLConstants;
import org.iiitb.se.links.utils.network.AbstractResourceDownloader;
import org.scribe.model.OAuthRequest;
import org.scribe.model.Response;
import org.scribe.model.Token;
import org.scribe.model.Verb;
import android.content.Context;
import android.os.AsyncTask;
import android.util.Log;
public class BookmarkSharer extends AbstractResourceDownloader {
private static final String TAG = "RequestsGroupsLoader" ;
private BookmarkCard bookmarkCard;
public BookmarkSharer(Context context, BookmarkCard bookmarkCard) {
super (context);
this.bookmarkCard = bookmarkCard;
}
@Override
public void fetchProtectedResource(Token accessToken) {
shareBookmark(accessToken);
}
public void shareBookmarkWithGroupsIamPartOf() {
String accessTokenKey = sharedPreferences.getString(
AppConstants.ACCESS_TOKEN_KEY, null);
String accessTokenSecret = sharedPreferences.getString(
AppConstants.ACCESS_TOKEN_SECRET, null);
if (null == accessTokenKey || null == accessTokenSecret) {
Log.i(TAG, "Token Key is not saved. Will start authorization." );
authDialog.show();
authDialog.setTitle(context.getString(R.string.authorize_links));
startAuthorize();
} else {
Log.i(TAG, "Token Key found. We're gonna share the bookmark with groups." );
Token accessToken = new Token(accessTokenKey, accessTokenSecret);
shareBookmark(accessToken);
}
}
private void shareBookmark(final Token accessToken) {
if (netAvailable()) {
(new AsyncTask<Void, Integer , String>() {
Response response;
int status;
@Override
protected void onPreExecute() {
mProgressDialog.show();
}
@Override
protected String doInBackground(Void... params) {
String resourceURL = URLConstants.SHARE_BOOKMARK;
OAuthRequest request = new OAuthRequest(Verb.POST, resourceURL);
request.addBodyParameter(StringConstants.BOOKMARK_ID, bookmarkCard.getBookmarkId());
Set<String> groupIds = bookmarkCard.getGroupsAdapter().getGroupIdsToShareWith();
for (String groupId : groupIds) {
Log.i(TAG, "Group ID: " + groupId);
request.addBodyParameter(StringConstants.GROUP_ID_ARRAY, groupId);
}
mOauthService.signRequest(accessToken, request);
response = request.send();
status = response.getCode();
return response.getBody();
}
@Override
protected void onPostExecute(String responseBody) {
mProgressDialog.hide();
if (null == responseBody || 401 == status) {
startAuthorize();
} else {
reloadFragment();
}
}
}).execute();
}
}
}
Java Source Code List org.iiitb.se.links.GroupActivity.java org.iiitb.se.links.MainActivity.java org.iiitb.se.links.custom.ExpandableHeightGridView.java org.iiitb.se.links.group.fragments.AddBookmarkInGroupFragment.java org.iiitb.se.links.group.fragments.BookmarkSearchInGroupsFragment.java org.iiitb.se.links.group.fragments.GroupLinkFragment.java org.iiitb.se.links.home.ResourceLoader.java org.iiitb.se.links.home.cards.AbstractGroupCard.java org.iiitb.se.links.home.cards.BookmarkCard.java org.iiitb.se.links.home.cards.RequestsGroupCard.java org.iiitb.se.links.home.cards.ShareGroupCard.java org.iiitb.se.links.home.cards.SubscribedGroupCard.java org.iiitb.se.links.home.cards.expand.BookmarkCardExpand.java org.iiitb.se.links.home.cards.expand.adapter.TagViewAdapter.java org.iiitb.se.links.home.fragments.AddBookmarkFragment.java org.iiitb.se.links.home.fragments.BookmarkSearchFragment.java org.iiitb.se.links.home.fragments.EditBookmarkFragment.java org.iiitb.se.links.home.fragments.LinkFragment.java org.iiitb.se.links.home.fragments.RequestsGroupFragment.java org.iiitb.se.links.home.fragments.SubscribedGroupFragment.java org.iiitb.se.links.home.fragments.adapter.AbstractGroupsAdapter.java org.iiitb.se.links.home.fragments.adapter.BookmarksAdapter.java org.iiitb.se.links.home.fragments.adapter.RequestsGroupsAdapter.java org.iiitb.se.links.home.fragments.adapter.ShareGroupsAdapter.java org.iiitb.se.links.home.fragments.adapter.SubscribedGroupsAdapter.java org.iiitb.se.links.utils.AuthorizationClient.java org.iiitb.se.links.utils.BookmarkLoadType.java org.iiitb.se.links.utils.BookmarkOperations.java org.iiitb.se.links.utils.DomainExtractor.java org.iiitb.se.links.utils.FragmentTypes.java org.iiitb.se.links.utils.StringConstants.java org.iiitb.se.links.utils.URLConstants.java org.iiitb.se.links.utils.network.AbstractResourceDownloader.java org.iiitb.se.links.utils.network.MyProperties.java org.iiitb.se.links.utils.network.WebpageLoader.java org.iiitb.se.links.utils.network.bookmarks.BookmarkAdder.java org.iiitb.se.links.utils.network.bookmarks.BookmarkDeleter.java org.iiitb.se.links.utils.network.bookmarks.BookmarkEditor.java org.iiitb.se.links.utils.network.bookmarks.BookmarkGroupAdder.java org.iiitb.se.links.utils.network.bookmarks.BookmarkSharer.java org.iiitb.se.links.utils.network.bookmarks.Logout.java org.iiitb.se.links.utils.network.bookmarks.TimelineLoader.java org.iiitb.se.links.utils.network.bookmarks.search.BookmarkInGroupsSearchLoader.java org.iiitb.se.links.utils.network.bookmarks.search.BookmarkSearchLoader.java org.iiitb.se.links.utils.network.groups.GroupTimelineLoader.java org.iiitb.se.links.utils.network.groups.requests.GroupRequestsDecider.java org.iiitb.se.links.utils.network.groups.requests.RequestsGroupsLoader.java org.iiitb.se.links.utils.network.groups.subscribed.GroupUnsubscriber.java org.iiitb.se.links.utils.network.groups.subscribed.SubscribedGroupsLoader.java