X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=workspace%2F.metadata%2F.plugins%2Forg.eclipse.core.resources%2F.history%2F8b%2F50ef23a9eb6500111e5bcf098ae37dc9;fp=workspace%2F.metadata%2F.plugins%2Forg.eclipse.core.resources%2F.history%2F8b%2F50ef23a9eb6500111e5bcf098ae37dc9;h=043d8cdd1c256100b368da3b50ad8f2651de269c;hb=000b64772b5174b32cbb1cfecc79fcea54f590b1;hp=0000000000000000000000000000000000000000;hpb=72eb0ffc94cf46f1bd91fb55c4af86baec1e7cc5;p=traindelaybot%2Fsource.git
diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/50ef23a9eb6500111e5bcf098ae37dc9 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/50ef23a9eb6500111e5bcf098ae37dc9
new file mode 100644
index 0000000..043d8cd
--- /dev/null
+++ b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/8b/50ef23a9eb6500111e5bcf098ae37dc9
@@ -0,0 +1,131 @@
+package com.yuji.tdb;
+
+import java.io.IOException;
+import java.util.logging.Logger;
+
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import twitter4j.Twitter;
+import twitter4j.TwitterException;
+import twitter4j.TwitterFactory;
+import twitter4j.auth.AccessToken;
+import twitter4j.auth.OAuthAuthorization;
+import twitter4j.auth.RequestToken;
+import twitter4j.conf.Configuration;
+import twitter4j.conf.ConfigurationBuilder;
+
+import com.yuji.tdb.common.CommonUtil;
+import com.yuji.tdb.twitter.TwitterUtil;
+
+@SuppressWarnings("serial")
+public class TrainDelayBotServlet extends HttpServlet {
+ private static final Logger log = Logger
+ .getLogger(TrainDelayBotServlet.class.getName());
+ private static RequestToken requestToken = null;
+ private static AccessToken accessToken = null;
+ private static String consumerKey = null;
+ private static String consumerSecret = null;
+
+ public void doGet(HttpServletRequest req, HttpServletResponse resp)
+ throws IOException {
+ try {
+ log.info("start");
+
+ resp.setContentType("text/plain");
+ resp.getWriter().println("
traindelaybot Hello, world
");
+
+ String parmConsumerKey = req.getParameter("key");
+ String parmConsumerSecret = req.getParameter("secret");
+ String parmResult = req.getParameter("result");
+ if (!CommonUtil.isNull(parmConsumerKey)
+ && !CommonUtil.isNull(parmConsumerSecret)) {
+ setOAuthAuthorization(req, resp, parmConsumerKey,
+ parmConsumerSecret);
+ return;
+ }
+
+ if (requestToken == null || CommonUtil.isNull(consumerKey)
+ || CommonUtil.isNull(consumerSecret)) {
+ log.warning("001");
+ return;
+ }
+
+ if (!CommonUtil.isNull(parmResult)) {
+ resultOAuthAuthorization();
+ return;
+ }
+
+ if (accessToken == null) {
+ log.warning("002");
+ return;
+ }
+
+ TwitterUtil util = TwitterUtil.getInstance();
+ util.main(consumerKey, consumerSecret, accessToken);
+ } finally {
+ log.info("end");
+ }
+
+ }
+
+ private void setOAuthAuthorization(HttpServletRequest req,
+ HttpServletResponse resp, String parmConsumerKey,
+ String parmConsumerSecret) {
+ try {
+ ConfigurationBuilder confBuilder = new ConfigurationBuilder();
+
+ confBuilder.setDebugEnabled(true);
+ confBuilder.setOAuthConsumerKey(parmConsumerKey);
+ confBuilder.setOAuthConsumerSecret(parmConsumerSecret);
+ Configuration conf = confBuilder.build();
+
+ String url = req.getRequestURL().toString();
+
+ OAuthAuthorization oauth = new OAuthAuthorization(conf);
+ // TwitterÌFØæÊ©çÌßèæðwèµÜ·B
+ // AccessTokenRg[ðwèµÜ·B
+ String callbackURL = url + "?result=yes";
+ // RequestToken requestToken =
+ // oauth.getOAuthRequestToken(callbackURL);
+ requestToken = oauth.getOAuthRequestToken(callbackURL);
+ // RequestTokenðZbVÉÛ¶µÄ¨«Ü·B
+ // sessionScope("RequestToken", requestToken);
+ // TwitterÌFØæÊÖ_CNgµÜ·B
+
+ consumerKey = parmConsumerKey;
+ consumerSecret = parmConsumerSecret;
+
+ resp.sendRedirect(requestToken.getAuthenticationURL());
+ } catch (TwitterException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ log.severe(e.toString());
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ log.severe(e.toString());
+ }
+ }
+
+ private void resultOAuthAuthorization() {
+ try {
+ // Twitter twitter = new TwitterFactory().getInstance();
+ // String tokenKey = requestToken.getToken();
+ // String tokenSecret = requestToken.getTokenSecret();
+
+ ConfigurationBuilder confBuilder = new ConfigurationBuilder();
+ confBuilder.setDebugEnabled(true).setOAuthConsumerKey(consumerKey)
+ .setOAuthConsumerSecret(consumerSecret);
+ TwitterFactory factory = new TwitterFactory(confBuilder.build());
+ Twitter twitter = factory.getInstance();
+
+ accessToken = twitter.getOAuthAccessToken(requestToken);
+ } catch (TwitterException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ log.severe(e.toString());
+ }
+ }
+}