src/main/java/cz/xelfi/feedbook/Main.java
author Jaroslav Tulach <jtulach@netbeans.org>
Tue, 09 Nov 2010 21:01:16 +0100
changeset 0 258dc96b1636
child 1 93c350696ff6
permissions -rw-r--r--
Initial version of a project that can copy my RSS feed to facebook
     1 package cz.xelfi.feedbook;
     2 
     3 import com.google.code.facebookapi.FacebookJaxbRestClient;
     4 import com.google.code.facebookapi.Permission;
     5 import com.google.code.facebookapi.schema.FriendsGetResponse;
     6 import com.google.code.facebookapi.schema.User;
     7 import com.google.code.facebookapi.schema.UsersGetInfoResponse;
     8 import java.net.URI;
     9 import java.util.Collections;
    10 import java.util.List;
    11 
    12 public class Main {
    13     private static final String APP_KEY = "ecdbd5dbacc168f9edfe470ccd7e401b";
    14     private static final String APP_SEC = "22e3165366e958a6e049e1e0c1d30105";
    15     
    16     public static void main( String[] args) throws Exception {
    17         FacebookJaxbRestClient login = new FacebookJaxbRestClient(APP_KEY, APP_SEC);
    18         final String token = login.auth_createToken();
    19         URI u = new URI("http://www.facebook.com/login.php?api_key=" + APP_KEY + "&auth_token=" + token);
    20         Runtime.getRuntime().exec("xdg-open " + u);
    21         /*
    22         InputStream is = u.toURL().openStream();
    23         for (;;) {
    24             int ch = is.read();
    25             if (ch == -1) {
    26                 break;
    27             }
    28             System.out.write(ch);
    29         }
    30          */
    31         //Desktop.getDesktop().browse(u);
    32         System.out.println("Visit the browser and press enter...");
    33         System.in.read();
    34         
    35         final String session = login.auth_getSession(token, true); 
    36         
    37         FacebookJaxbRestClient fb = new FacebookJaxbRestClient(APP_KEY, APP_SEC, session);
    38         Long user = fb.users_getLoggedInUser();
    39         final FriendsGetResponse ret = fb.friends_get(user);
    40         final UsersGetInfoResponse info = fb.users_getInfo(ret.getUid(), Collections.<CharSequence>singleton("last_name"));
    41         final List<User> arr = info.getUser();
    42         System.out.println("friends: " + arr.size());
    43         for (int i = 0; i < arr.size(); i++) {
    44             System.out.println("  " + i + ". = " + arr.get(i).getLastName());
    45         }
    46         
    47         String url = "http://apidesign.org";
    48         String cmd = "Testing new application";
    49 
    50         if (fb.users_hasAppPermission(Permission.SHARE_ITEM)) {
    51             Long ok = fb.links_post(user, url, cmd);
    52             System.out.println("posted as " + ok);
    53         } else {
    54             System.out.println("No permission to share links");
    55         }
    56     }
    57 }