Changeset 15153

Show
Ignore:
Timestamp:
07/04/08 16:46:07 (3 months ago)
Author:
yamashiro
Message:

ふぁぼると、友達のホームを開くをマルチサービス対応に

Location:
platform/eclipse/sabotter/trunk
Files:
7 modified

Legend:

Unmodified
Added
Removed
  • platform/eclipse/sabotter/trunk/jp.xet.sabotter.core/src/jp/xet/sabotter/core/MiniblogService.java

    r15114 r15153  
    8080        MiniblogUser getUser(String userId); 
    8181         
     82        /** 
     83         * 指定されたユーザーのホームを返します 
     84         *  
     85         * @param user ユーザ 
     86         */ 
     87        public String getUserHome(MiniblogUser user); 
     88         
    8289} 
  • platform/eclipse/sabotter/trunk/jp.xet.sabotter.core/src/jp/xet/sabotter/core/mock/MockService.java

    r15143 r15153  
    253253                } 
    254254        } 
     255         
     256        /** 
     257         * {@inheritDoc} 
     258         */ 
     259        public String getUserHome(MiniblogUser user) { 
     260                return "http://www.google.com/"; 
     261        } 
    255262} 
  • platform/eclipse/sabotter/trunk/jp.xet.sabotter.core/src/jp/xet/sabotter/core/twitter/TwitterService.java

    r15143 r15153  
    141141                twitter.verifyCredentials(); 
    142142        } 
     143         
     144        /** 
     145         * {@inheritDoc} 
     146         */ 
     147        public String getUserHome(MiniblogUser user) { 
     148                return "http://twitter.com/" + user.getUserId(); 
     149        } 
    143150} 
  • platform/eclipse/sabotter/trunk/jp.xet.sabotter.core/src/jp/xet/sabotter/core/wassr/WassrService.java

    r15149 r15153  
    165165        } 
    166166         
     167        /** 
     168         * {@inheritDoc} 
     169         */ 
     170        public String getUserHome(MiniblogUser user) { 
     171                return "http://wassr.jp/user/" + user.getUserId(); 
     172        } 
     173         
    167174} 
  • platform/eclipse/sabotter/trunk/jp.xet.sabotter.eclipse/src/jp/xet/sabotter/eclipse/action/CreateFavoriteAction.java

    r15143 r15153  
    4646                for (Object entryObj : selection.toList()) { 
    4747                        if (entryObj instanceof MiniblogEntry) { 
    48                                 String targetEntryId = ((MiniblogEntry) entryObj).getId(); 
    49                                 MiniblogServiceManager.getInstance().createFavorite(targetEntryId); 
     48                                MiniblogServiceManager.getInstance().createFavorite((MiniblogEntry) entryObj); 
    5049                        } 
    5150                } 
  • platform/eclipse/sabotter/trunk/jp.xet.sabotter.eclipse/src/jp/xet/sabotter/eclipse/action/OpenUsersHomeAction.java

    r15108 r15153  
    11package jp.xet.sabotter.eclipse.action; 
     2 
     3import java.net.MalformedURLException; 
    24 
    35import jp.xet.sabotter.core.MiniblogEntry; 
    46import jp.xet.sabotter.eclipse.SabotterPlugin; 
    57import jp.xet.sabotter.eclipse.manager.BrowserManager; 
     8import jp.xet.sabotter.eclipse.manager.MiniblogServiceManager; 
    69import jp.xet.sabotter.eclipse.views.SabotterView; 
    710 
     
    4851                        MiniblogEntry miniblogEntry = (MiniblogEntry) entryObj; 
    4952                        try { 
    50                                 BrowserManager.openPage("http://twitter.com/{screenName}", // $NON-NLS-1$ 
    51                                                 miniblogEntry); 
     53                                String url = MiniblogServiceManager.getInstance().getUserHome(miniblogEntry); 
     54                                BrowserManager.openBrowser(url); 
    5255                        } catch (PartInitException e) { 
     56                                SabotterPlugin.handleException(e); 
     57                        } catch (MalformedURLException e) { 
    5358                                SabotterPlugin.handleException(e); 
    5459                        } 
  • platform/eclipse/sabotter/trunk/jp.xet.sabotter.eclipse/src/jp/xet/sabotter/eclipse/manager/MiniblogServiceManager.java

    r15145 r15153  
    8989                                        final MiniblogService service = (MiniblogService) factory.createExecutableExtension("class"); 
    9090                                         
    91                                         // String userId = ps.getString(service.getServiceId() + PreferenceKeys.USERID); 
    92                                         // String password = ps.getString(service.getServiceId() + PreferenceKeys.PASSWORD); 
    93                                         String userId = ps.getString(PreferenceKeys.USERID); 
    94                                         String password = ps.getString(PreferenceKeys.PASSWORD); 
     91                                        String userId = ps.getString(service.getServiceId() + PreferenceKeys.USERID); 
     92                                        String password = ps.getString(service.getServiceId() + PreferenceKeys.PASSWORD); 
    9593                                         
    9694                                        service.setAccount(userId, password); 
     
    322320         * ふぁぼる。 
    323321         *  
    324          * @param id ふぁぼ対象ステータスのID 
    325          */ 
    326         public void createFavorite(String id) { 
    327                 for (MiniblogService service : miniblogServices) { 
    328                         service.createFavorite(id, responceListener); 
    329                 } 
     322         * @param entry ふぁぼ対象のエントリー 
     323         */ 
     324        public void createFavorite(MiniblogEntry entry) { 
     325                getService(entry).createFavorite(entry.getId(), responceListener); 
     326        } 
     327         
     328        private MiniblogService getService(MiniblogEntry entry) { 
     329                for (MiniblogService service : miniblogServices) { 
     330                        if (service.getServiceId().equals(entry.getServiceId())) { 
     331                                return service; 
     332                        } 
     333                } 
     334                throw new IllegalStateException("ここまできたらバグ"); 
    330335        } 
    331336         
     
    354359                return miniblogServices; 
    355360        } 
     361         
     362        /** 
     363         * 指定されたエントリーを投稿したユーザのホームを返します 
     364         *  
     365         * @param entry エントリー 
     366         * @return エントリーを投稿したユーザのホーム 
     367         */ 
     368        public String getUserHome(MiniblogEntry entry) { 
     369                return getService(entry).getUserHome(entry.getUser()); 
     370        } 
     371         
    356372}