📄 flickr.java
字号:
// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov Date: 2008-6-16 11:23:44
// Home Page : http://members.fortunecity.com/neshkov/dj.html - Check often for new version!
// Decompiler options: packimports(3)
// Source File Name: Flickr.java
package com.eightmotions.mm;
import com.eightmotions.util.*;
import java.io.PrintStream;
import java.util.Date;
import java.util.Random;
public class Flickr
{
public String getLastErrorMsg()
{
return lastErrorMsg;
}
public int getLastErrorCode()
{
return lastCode;
}
public Flickr(Settings inSettings, String key, String secret)
{
lastCode = -1;
settings = inSettings;
api_key = key;
secret_shared = secret;
auth_token = settings.getStringProperty("token", "");
}
public void clearToken()
{
settings.setStringProperty("token", "");
auth_token = "";
}
public boolean checkRegistration()
{
return !auth_token.equals("");
}
public boolean Registration(String minitoken)
{
try
{
mini_token = minitoken;
String resp_full_token;
signature = secret_shared + "api_key" + api_key + "methodflickr.auth.getFullTokenmini_token" + mini_token;
api_sig = MD5.getHashString(signature);
resp_full_token = "";
resp_full_token = HTTP.sendGetRequest("http://www.flickr.com/services/rest/?method=flickr.auth.getFullToken&api_key=" + api_key + "&mini_token=" + mini_token + "&api_sig=" + api_sig);
auth_token = GetParameter(resp_full_token, "token");
settings.setStringProperty("token", auth_token);
// if(auth_token == "")
// break MISSING_BLOCK_LABEL_158;
settings.save(false);
// return true;
lastErrorMsg = GetField(resp_full_token, "err", "msg");
lastCode = Integer.parseInt(GetField(resp_full_token, "err", "code"));
UtilMidp.addInfo("errMsg:" + lastErrorMsg);
UtilMidp.addInfo("code:" + lastCode);
return false;
}catch(Exception e)
{
return false;
}
}
public boolean sendLonLat(String photo_id, String lon, String lat)
{
String resp;
signature = secret_shared + "api_key" + api_key + "auth_token" + auth_token + "lat" + lat + "lon" + lon + "methodflickr.photos.geo.setLocationphoto_id" + photo_id;
api_sig = MD5.getHashString(signature);
resp = "";
resp = HTTP.sendGetRequest("http://www.flickr.com/services/rest/?method=flickr.photos.geo.setLocation&api_key=" + api_key + "&auth_token=" + auth_token + "&photo_id=" + photo_id + "&lat=" + lat + "&lon=" + lon + "&api_sig=" + api_sig);
resp = GetParameter(resp, "resp");
if(resp != "")
return true;
lastErrorMsg = GetField(resp, "err", "msg");
lastCode = Integer.parseInt(GetField(resp, "err", "code"));
UtilMidp.addInfo("errMsg:" + lastErrorMsg);
UtilMidp.addInfo("code:" + lastCode);
return false;
}
public String SendPhoto(byte photoData[], String photoTitle, String photoDesc, String _tags, boolean useFlickrAPI)
{
useFlickrAPI = true;
String title = photoTitle;
String description = photoDesc;
String tags = "j2memap cameraphone " + _tags;
String is_public = "1";
String is_friend = "1";
String is_family = "1";
signature = secret_shared + "api_key" + api_key + "auth_token" + auth_token;
if(description != "")
signature += "description" + description;
if(is_family != "")
signature += "is_family" + is_family;
if(is_friend != "")
signature += "is_friend" + is_friend;
if(is_public != "")
signature += "is_public" + is_public;
if(tags != "")
signature += "tags" + tags;
if(title != "")
signature += "title" + title;
api_sig = MD5.getHashString(signature);
String boundary = GenerateBoundary();
StringBuffer post = new StringBuffer();
if(useFlickrAPI)
{
post.append("--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"api_key\"\r\n" + "\r\n" + api_key + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"auth_token\"\r\n" + "\r\n" + auth_token + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"api_sig\"\r\n" + "\r\n" + api_sig + "\r\n");
if(title != "")
post.append("--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"title\"\r\n" + "\r\n" + title + "\r\n");
if(description != "")
post.append("--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"description\"\r\n" + "\r\n" + description + "\r\n");
if(tags != "")
post.append("--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"tags\"\r\n" + "\r\n" + tags + "\r\n");
if(is_public != "")
post.append("--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"is_public\"\r\n" + "\r\n" + is_public + "\r\n");
if(is_friend != "")
post.append("--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"is_friend\"\r\n" + "\r\n" + is_friend + "\r\n");
if(is_family != "")
post.append("--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"is_family\"\r\n" + "\r\n" + is_family + "\r\n");
} else
{
post.append("--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"email\"\r\n" + "\r\n" + "sushietsashimi" + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"password\"\r\n" + "\r\n" + "digiwiz" + "\r\n");
}
post.append("--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"photo\"; filename=\"test.jpg\"\r\n" + "Content-Type: image/jpeg\r\n" + "\r\n");
String imageString = new String(photoData);
post.append(imageString);
imageString = null;
post.append("\r\n--" + boundary + "--\r\n");
String url;
if(useFlickrAPI)
url = "http://www.flickr.com/services/upload/";
else
url = "http://www.flickr.com/tools/uploader_go.gne";
String Response = HTTP.sendPostRequest(post.toString(), url, boundary);
UtilMidp.addInfo(Response);
String idPhoto = GetParameter(Response, "photoid");
if(idPhoto.equals(""))
try
{
lastErrorMsg = GetField(Response, "err", "msg");
lastCode = Integer.parseInt(GetField(Response, "err", "code"));
UtilMidp.addInfo("errMsg:" + lastErrorMsg);
UtilMidp.addInfo("code:" + lastCode);
idPhoto = null;
}
catch(Exception e)
{
System.out.println("Errot while parsing result:");
e.printStackTrace();
UtilMidp.showException(e);
}
return idPhoto;
}
public boolean BlogPhoto(String photoid, String blogid, String title, String desc)
{
signature = secret_shared + "api_key" + api_key + "auth_token" + auth_token + "blog_id" + blogid + "description" + desc + "methodflickr.blogs.postPhoto" + "photo_id" + photoid + "title" + title;
api_sig = MD5.getHashString(signature);
String boundary = GenerateBoundary();
String post = "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"api_key\"\r\n" + "\r\n" + api_key + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"auth_token\"\r\n" + "\r\n" + auth_token + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"blog_id\"\r\n" + "\r\n" + blogid + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"description\"\r\n" + "\r\n" + desc + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"photo_id\"\r\n" + "\r\n" + photoid + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"title\"\r\n" + "\r\n" + title + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"api_sig\"\r\n" + "\r\n" + api_sig + "\r\n" + "--" + boundary + "--\r\n";
String resp = HTTP.sendPostRequest(post, "http://www.flickr.com/services/rest/?method=flickr.blogs.postPhoto", boundary);
return resp.indexOf("stat=\"ok\"") > -1;
}
public boolean AddToPhotoSet(String photoid, String setid)
{
signature = secret_shared + "api_key" + api_key + "auth_token" + auth_token + "methodflickr.photosets.addPhoto" + "photo_id" + photoid + "photoset_id" + setid;
api_sig = MD5.getHashString(signature);
String boundary = GenerateBoundary();
String post = "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"api_key\"\r\n" + "\r\n" + api_key + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"auth_token\"\r\n" + "\r\n" + auth_token + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"photo_id\"\r\n" + "\r\n" + photoid + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"photoset_id\"\r\n" + "\r\n" + setid + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"api_sig\"\r\n" + "\r\n" + api_sig + "\r\n" + "--" + boundary + "--\r\n";
String resp = HTTP.sendPostRequest(post, "http://www.flickr.com/services/rest/?method=flickr.photosets.addPhoto", boundary);
return resp.indexOf("stat=\"ok\"") > -1;
}
public boolean AddToGroup(String photoid, String groupid)
{
signature = secret_shared + "api_key" + api_key + "auth_token" + auth_token + "group_id" + groupid + "methodflickr.groups.pools.add" + "photo_id" + photoid;
api_sig = MD5.getHashString(signature);
String boundary = GenerateBoundary();
String post = "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"api_key\"\r\n" + "\r\n" + api_key + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"auth_token\"\r\n" + "\r\n" + auth_token + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"photo_id\"\r\n" + "\r\n" + photoid + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"group_id\"\r\n" + "\r\n" + groupid + "\r\n" + "--" + boundary + "\r\n" + "Content-Disposition: form-data; name=\"api_sig\"\r\n" + "\r\n" + api_sig + "\r\n" + "--" + boundary + "--\r\n";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -