/** * */ package com.gmail.charleszq.picorner.task.flickr; import android.content.Context; import android.util.Log; import com.gmail.charleszq.picorner.task.AbstractContextAwareTask; import com.gmail.charleszq.picorner.utils.FlickrHelper; import com.googlecode.flickrjandroid.Flickr; import com.googlecode.flickrjandroid.photos.Permissions; /** * @author charles(charleszq@gmail.com) * */ public class SetPhotoMetaPermissionTask extends AbstractContextAwareTask<String, Integer, Boolean> { public SetPhotoMetaPermissionTask(Context ctx) { super(ctx); } @Override protected Boolean doInBackground(String... params) { String photoId = params[0]; String title = params[1]; String desc = params[2]; Flickr f = FlickrHelper.getInstance().getFlickrAuthed(mContext); boolean success = true; // set photo meta try { f.getPhotosInterface().setMeta(photoId, title, desc); } catch (Exception e) { success = false; Log.w(TAG, "failed to set photo meta info: " + e.getMessage()); //$NON-NLS-1$ } // try set permission if (params.length == 6) { boolean isFriend = Boolean.parseBoolean(params[3]); boolean isFamily = Boolean.parseBoolean(params[4]); boolean isPublic = Boolean.parseBoolean(params[5]); f = FlickrHelper.getInstance().getFlickrAuthed(mContext); Permissions permissions = new Permissions(); permissions.setFamilyFlag(isFamily); permissions.setPublicFlag(isPublic); permissions.setFriendFlag(isFriend); try { f.getPhotosInterface().setPerms(photoId, permissions); } catch (Exception e) { success = false; Log.w(TAG, "failed to set photo visibility: " + e.getMessage()); //$NON-NLS-1$ } } return success; } }