You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@wookie.apache.org by sc...@apache.org on 2011/09/20 11:41:36 UTC

svn commit: r1173054 - in /incubator/wookie/trunk/connector/java: src-test/org/apache/wookie/tests/connector/framework/ src-test/org/apache/wookie/tests/connector/framework/impl/ src/org/apache/wookie/connector/framework/

Author: scottbw
Date: Tue Sep 20 09:41:35 2011
New Revision: 1173054

URL: http://svn.apache.org/viewvc?rev=1173054&view=rev
Log:
Implemented basic user thumbnail handling in Java connector framework (see WOOKIE-240)

Modified:
    incubator/wookie/trunk/connector/java/src-test/org/apache/wookie/tests/connector/framework/UserTest.java
    incubator/wookie/trunk/connector/java/src-test/org/apache/wookie/tests/connector/framework/impl/WookieConnectorService.java
    incubator/wookie/trunk/connector/java/src/org/apache/wookie/connector/framework/AbstractWookieConnectorService.java
    incubator/wookie/trunk/connector/java/src/org/apache/wookie/connector/framework/User.java

Modified: incubator/wookie/trunk/connector/java/src-test/org/apache/wookie/tests/connector/framework/UserTest.java
URL: http://svn.apache.org/viewvc/incubator/wookie/trunk/connector/java/src-test/org/apache/wookie/tests/connector/framework/UserTest.java?rev=1173054&r1=1173053&r2=1173054&view=diff
==============================================================================
--- incubator/wookie/trunk/connector/java/src-test/org/apache/wookie/tests/connector/framework/UserTest.java (original)
+++ incubator/wookie/trunk/connector/java/src-test/org/apache/wookie/tests/connector/framework/UserTest.java Tue Sep 20 09:41:35 2011
@@ -59,4 +59,16 @@ public class UserTest {
     assertEquals("Login name not correctly set", SCREEN_NAME, user.getScreenName());
   }
   
+  @Test
+  public void testSetThumbnailUrl(){
+    user.setThumbnailUrl(null);
+    assertEquals("Thumbnail URL not correctly set", "", user.getThumbnailUrl());
+    
+    user.setThumbnailUrl("http://foo.com/test.jpg");
+    assertEquals("Thumbnail URL not correctly set", "http://foo.com/test.jpg", user.getThumbnailUrl());
+    
+    user.setThumbnailUrl(null);
+    assertEquals("Thumbnail URL not correctly set", "", user.getThumbnailUrl());
+  }
+  
 }

Modified: incubator/wookie/trunk/connector/java/src-test/org/apache/wookie/tests/connector/framework/impl/WookieConnectorService.java
URL: http://svn.apache.org/viewvc/incubator/wookie/trunk/connector/java/src-test/org/apache/wookie/tests/connector/framework/impl/WookieConnectorService.java?rev=1173054&r1=1173053&r2=1173054&view=diff
==============================================================================
--- incubator/wookie/trunk/connector/java/src-test/org/apache/wookie/tests/connector/framework/impl/WookieConnectorService.java (original)
+++ incubator/wookie/trunk/connector/java/src-test/org/apache/wookie/tests/connector/framework/impl/WookieConnectorService.java Tue Sep 20 09:41:35 2011
@@ -72,4 +72,16 @@ public class WookieConnectorService {
     assertTrue("Wrong user returned", users[0].getLoginName().equals("testuser"));
     assertTrue("Wrong user returned", users[1].getLoginName().equals("test1"));
   }
+  
+  @Test
+  public void addParticipantWithThumbnailUrl() throws WookieConnectorException, IOException{
+    HashMap<String, Widget> widgets = service.getAvailableWidgets();
+    WidgetInstance instance = service.getOrCreateInstance((Widget)widgets.values().toArray()[0]);
+    assertNotNull("Retrieved widget instance is null", instance);    
+    User user = new User("thumbnailtestuser","thumbnail test user","http://bar.com/icon.png");
+    service.addParticipant(instance, user);
+    User[] users = service.getUsers(instance);
+    user = users[users.length-1];
+    assertTrue("Incorrect thumbnail", user.getThumbnailUrl().equals("http://bar.com/icon.png"));
+  }
 }

Modified: incubator/wookie/trunk/connector/java/src/org/apache/wookie/connector/framework/AbstractWookieConnectorService.java
URL: http://svn.apache.org/viewvc/incubator/wookie/trunk/connector/java/src/org/apache/wookie/connector/framework/AbstractWookieConnectorService.java?rev=1173054&r1=1173053&r2=1173054&view=diff
==============================================================================
--- incubator/wookie/trunk/connector/java/src/org/apache/wookie/connector/framework/AbstractWookieConnectorService.java (original)
+++ incubator/wookie/trunk/connector/java/src/org/apache/wookie/connector/framework/AbstractWookieConnectorService.java Tue Sep 20 09:41:35 2011
@@ -324,8 +324,8 @@ public abstract class AbstractWookieConn
 	        Element participantEl = (Element) participantsList.item(idx);
 	        String id = participantEl.getAttribute("id");
 	        String name = participantEl.getAttribute("display_name");
-	        //FIXME implement: String thumbnail = participantEl.getAttribute("thumbnail_url");
-	        User user = new User(id,name);
+	        String thumbnail = participantEl.getAttribute("thumbnail_url");
+	        User user = new User(id,name, thumbnail);
 	        users[idx] = user;
 	      }
 	      return users;

Modified: incubator/wookie/trunk/connector/java/src/org/apache/wookie/connector/framework/User.java
URL: http://svn.apache.org/viewvc/incubator/wookie/trunk/connector/java/src/org/apache/wookie/connector/framework/User.java?rev=1173054&r1=1173053&r2=1173054&view=diff
==============================================================================
--- incubator/wookie/trunk/connector/java/src/org/apache/wookie/connector/framework/User.java (original)
+++ incubator/wookie/trunk/connector/java/src/org/apache/wookie/connector/framework/User.java Tue Sep 20 09:41:35 2011
@@ -20,6 +20,7 @@ package org.apache.wookie.connector.fram
 public class User {
   private String loginName = "UNKNOWN";
   private String screenName = "UNKNOWN";
+  private String thumbnailUrl = "";
   
   /**
    * Create a new user.
@@ -31,6 +32,18 @@ public class User {
     setLoginName(loginName);
     setScreenName(screenName);
   }
+  
+  /**
+   * Create a new user.
+   * 
+   * @param loginName
+   * @param screenName
+   */
+  public User(String loginName, String screenName, String thumbnailUrl) {
+    setLoginName(loginName);
+    setScreenName(screenName);
+    setThumbnailUrl(thumbnailUrl);
+  }
 
   /**
    * Get the login name for this user.
@@ -66,13 +79,26 @@ public class User {
   public void setScreenName(String screenName) {
     this.screenName = screenName;
   }
+  
+  /**
+   * Set the thumbnail URL for this user. This is the src value for an image used to represent the user
+   * @param thumbnailUrl
+   * 
+   * TODO validate the URL
+   */
+  public void setThumbnailUrl(String thumbnailUrl){
+    //
+    // Never set to null, only to an empty string
+    //
+    if (thumbnailUrl == null) thumbnailUrl = "";
+    this.thumbnailUrl = thumbnailUrl;
+  }
 
   /**
    * Get the URL for a thumbnail representing this user.
    * @return
    */
   public String getThumbnailUrl() {
-    // FIXME: manage user thumbnails
-    return "http://fixme.org/thumbnail";
+    return this.thumbnailUrl;
   } 
 }