[jboss-svn-commits] JBL Code SVN: r5015 - in labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme: . gwt/client services

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Jul 11 16:33:44 EDT 2006


Author: szimano
Date: 2006-07-11 16:33:35 -0400 (Tue, 11 Jul 2006)
New Revision: 5015

Modified:
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/TagMeServlet.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/SearchListener.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeClickListener.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeShowPopupListener.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingService.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingServiceAsync.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/ShotokuTaggingService.java
   labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/TagMeTagger.java
Log:
JBLAB-704
tags search, description


Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/TagMeServlet.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/TagMeServlet.java	2006-07-11 20:07:32 UTC (rev 5014)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/TagMeServlet.java	2006-07-11 20:33:35 UTC (rev 5015)
@@ -62,7 +62,7 @@
 		return vect;
 	}
 
-	public boolean addTag(String user, String path, String clas, String tags) {
+	public boolean addTag(String user, String path, String clas, String tags, String descriptions) {
 		try {
 			TagMeTagger tagger = (TagMeTagger) Class.forName(clas)
 					.newInstance();
@@ -70,9 +70,10 @@
 			log.info("tags: " + tags + "\nspliter: "
 					+ TagMeClickListener.TAG_SEP);
 			String[] tagsTable = tags.split(TagMeClickListener.TAG_SEP);
+			String[] descTable = descriptions.split(TagMeClickListener.TAG_SEP);
 
 			for (int i = 0; i < tagsTable.length; i++) {
-				tagger.addTag(user, path, tagsTable[i]);
+				tagger.addTag(user, path, tagsTable[i], descTable[i]);
 			}
 
 			return true;

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/SearchListener.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/SearchListener.java	2006-07-11 20:07:32 UTC (rev 5014)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/SearchListener.java	2006-07-11 20:33:35 UTC (rev 5015)
@@ -7,16 +7,18 @@
 import com.google.gwt.user.client.rpc.AsyncCallback;
 import com.google.gwt.user.client.rpc.ServiceDefTarget;
 import com.google.gwt.user.client.ui.ClickListener;
+import com.google.gwt.user.client.ui.HTML;
 import com.google.gwt.user.client.ui.HorizontalPanel;
 import com.google.gwt.user.client.ui.Label;
 import com.google.gwt.user.client.ui.TextBox;
+import com.google.gwt.user.client.ui.VerticalPanel;
 import com.google.gwt.user.client.ui.Widget;
 
 public class SearchListener implements ClickListener {
 
 	private String clas;
 
-	private HorizontalPanel results;
+	private VerticalPanel results;
 
 	private TextBox tags;
 
@@ -24,7 +26,7 @@
 
 	private TextBox keyword;
 
-	public SearchListener(HorizontalPanel results, TextBox tags,
+	public SearchListener(VerticalPanel results, TextBox tags,
 			TextBox author, TextBox keyword, String clas) {
 		this.results = results;
 		this.clas = clas;
@@ -46,8 +48,10 @@
 			public void onSuccess(Object result) {
 				Vector res = (Vector) result;
 
-				for (int i = 0; i < res.size(); i++) {
-					results.add(new Label(res.get(i).toString()));
+				for (int i = 0; i < res.size(); i += 2) {
+					results.add(new HTML("<a href=\""
+							+ res.get(i + 1).toString() + "\">"
+							+ res.get(i).toString() + "</a>"));
 				}
 			}
 
@@ -57,14 +61,14 @@
 			}
 		};
 
-		Window.alert("'" + tags.getText() + "' '" + author.getText() + "' '"
-				+ keyword.getText() + "'");
+		//Window.alert("'" + tags.getText() + "' '" + author.getText() + "' '"
+		//		+ keyword.getText() + "'");
 
 		// call AJAX methos, after that callback is going to be executed
-		tagging.search((tags.getText() == null) ? "" : tags.getText(), (author
-				.getText() == null) ? "" : author.getText(),
-				(keyword.getText() == null) ? "" : keyword.getText(), clas,
-				callback);
+		tagging.search((tags.getText().length() == 0) ? " " : tags.getText(),
+				(author.getText().length() == 0) ? " " : author.getText(),
+				(keyword.getText().length() == 0) ? " " : keyword.getText(),
+				clas, callback);
 	}
 
 }

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeClickListener.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeClickListener.java	2006-07-11 20:07:32 UTC (rev 5014)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeClickListener.java	2006-07-11 20:33:35 UTC (rev 5015)
@@ -44,6 +44,8 @@
 	private String user;
 
 	private Vector textBoxes;
+	
+	private Vector descBoxes;
 
 	private String clas;
 
@@ -56,7 +58,7 @@
 	private Vector suggestionCheckboxes;
 
 	public TagMeClickListener(String path, String user, String clas,
-			Vector textBoxes, Label info, Vector suggestionCheckboxes, TagMeShowPopupListener parent) {
+			Vector textBoxes, Vector descBoxes, Label info, Vector suggestionCheckboxes, TagMeShowPopupListener parent) {
 		this.path = path;
 		this.user = user;
 		this.textBoxes = textBoxes;
@@ -64,6 +66,7 @@
 		this.info = info;
 		this.parent = parent;
 		this.suggestionCheckboxes = suggestionCheckboxes;
+		this.descBoxes = descBoxes;
 	}
 
 	public void onClick(Widget sender) {
@@ -93,18 +96,23 @@
 		button.setEnabled(false);
 
 		String tags = "";
+		String descs = "";
 
 		for (int i = 0; i < textBoxes.size(); i++) {
 			String tag = ((TextBox) textBoxes.get(i)).getText();
+			String desc = ((TextBox)descBoxes.get(i)).getText();
 			if (tag != null && tag.length() > 0) {
 				if (tags.length() == 0) {
 					tags = tag;
+					descs = desc;
 				} else {
 					tags += TAG_SEP + tag;
+					descs += TAG_SEP + desc;
 				}
 			}
 		}
 		
+		//TODO desc in suggestions
 		for (int i = 0; i < suggestionCheckboxes.size(); i++) {
 			CheckBox chBox = (CheckBox)suggestionCheckboxes.get(i);
 			
@@ -117,7 +125,7 @@
 			}
 		}
 
-		tagging.addTag(user, path, clas, tags, callback);
+		tagging.addTag(user, path, clas, tags, descs, callback);
 
 	}
 

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeShowPopupListener.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeShowPopupListener.java	2006-07-11 20:07:32 UTC (rev 5014)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeShowPopupListener.java	2006-07-11 20:33:35 UTC (rev 5015)
@@ -240,6 +240,12 @@
 		HorizontalPanel hPanel = new HorizontalPanel();
 		VerticalPanel input = new VerticalPanel();
 		input.add(new Label("Add a Tag:"));
+		HorizontalPanel customs = new HorizontalPanel();
+		VerticalPanel boxes = new VerticalPanel();
+		VerticalPanel descriptions = new VerticalPanel();
+		
+		customs.add(boxes); customs.add(descriptions);
+		input.add(customs);
 
 		VerticalPanel suggestions = new VerticalPanel();
 		suggTable = new FlexTable();
@@ -254,11 +260,20 @@
 		panel.add(hPanel);
 
 		Vector textBoxes = new Vector();
-
+		Vector descBoxes = new Vector();
+		
 		for (int i = 0; i < 3; i++) {
 			TextBox box = new TextBox();
+			TextBox desc = new TextBox();
+			
 			textBoxes.add(box);
-			input.add(box);
+			descBoxes.add(desc);
+			
+			boxes.add(new Label("Name"));
+			boxes.add(box);
+			
+			descriptions.add(new Label("Description"));
+			descriptions.add(desc);
 		}
 
 		panel.add(input);
@@ -269,7 +284,7 @@
 
 		HorizontalPanel btnPanel = new HorizontalPanel();
 		this.saveBtn = new Button("Save", new TagMeClickListener(path,
-				currentUser, clas, textBoxes, info, suggestionCheckboxes, this));
+				currentUser, clas, textBoxes, descBoxes, info, suggestionCheckboxes, this));
 		btnPanel.add(saveBtn);
 		btnPanel.add(new Button("Close", new ClickListener() {
 
@@ -314,11 +329,11 @@
 
 		searchPanel.add(new Label("Search results"));
 		
-		HorizontalPanel results = new HorizontalPanel();
+		VerticalPanel results = new VerticalPanel();
 		
 		searchPanel.add(results);
 		
-		VerticalPanel buttons = new VerticalPanel();
+		HorizontalPanel buttons = new HorizontalPanel();
 		
 		buttons.add(new Button("Search", new SearchListener(results, tags, author, keyword, clas)));
 		

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingService.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingService.java	2006-07-11 20:07:32 UTC (rev 5014)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingService.java	2006-07-11 20:33:35 UTC (rev 5015)
@@ -41,7 +41,7 @@
 	 */
 	public Vector getTags(String path, String clas);
 
-	public boolean addTag(String user, String path, String clas, String tags);
+	public boolean addTag(String user, String path, String clas, String tags, String descriptions);
 	
 	public boolean deleteTag(String user, String path, String clas, String tag);
 	

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingServiceAsync.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingServiceAsync.java	2006-07-11 20:07:32 UTC (rev 5014)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingServiceAsync.java	2006-07-11 20:33:35 UTC (rev 5015)
@@ -33,7 +33,7 @@
 public interface TaggingServiceAsync {
 	public void getTags(String path, String clas, AsyncCallback callback);
 
-	public void addTag(String user, String path, String clas, String tags,
+	public void addTag(String user, String path, String clas, String tags, String descriptions,
 			AsyncCallback callback);
 
 	public void deleteTag(String user, String path, String clas, String tag,

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/ShotokuTaggingService.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/ShotokuTaggingService.java	2006-07-11 20:07:32 UTC (rev 5014)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/ShotokuTaggingService.java	2006-07-11 20:33:35 UTC (rev 5015)
@@ -21,6 +21,8 @@
  */
 package org.jboss.labs.tagme.services;
 
+import java.util.Collections;
+import java.util.Comparator;
 import java.util.Date;
 import java.util.List;
 import java.util.Vector;
@@ -55,9 +57,8 @@
 				for (Tag tag : tags) {
 					sugg.add(tag.getName());
 				}
-			}
-			else {
-				//test data
+			} else {
+				// test data
 				sugg.add("Tag");
 				sugg.add("Number");
 				sugg.add("One");
@@ -127,10 +128,10 @@
 		return tags;
 	}
 
-	public void addTag(String user, String path, String tag) {
+	public void addTag(String user, String path, String tag, String desc) {
 		log.info("Adding tag: " + tag + " for node: " + path);
 		try {
-			service.addTag(new ShotokuTag(tag, user, path, null, new Date()));
+			service.addTag(new ShotokuTag(tag, user, path, desc, new Date()));
 		} catch (TagAddException e) {
 			throw new RuntimeException(e);
 		}
@@ -201,7 +202,7 @@
 		Vector<String> ret = new Vector<String>();
 		try {
 			List<String> tags = service.getAllTagsNames();
-			
+
 			for (String tag : tags) {
 				ret.add(tag);
 			}
@@ -209,21 +210,34 @@
 			// TODO Auto-generated catch block
 			e.printStackTrace();
 		}
-		
+
 		return ret;
 	}
 
 	public Vector search(String tags, String author, String keyword) {
 		log.info("Search started");
 		List<Tag> allTags = service.searchTags(tags, author, keyword);
-		
+
+		Collections.sort(allTags, new Comparator<Tag>() {
+
+			public int compare(Tag o1, Tag o2) {
+				if (o1.getFeedCounter().compareTo(o2.getFeedCounter()) == 0) {
+					return o1.getName().compareTo(o2.getName());
+				} else {
+					return o1.getFeedCounter().compareTo(o2.getFeedCounter());
+				}
+			}
+
+		});
+
 		Vector result = new Vector();
-		
+
 		for (Tag tag : allTags) {
 			result.add(tag.getName());
+			result.add(service
+					.getFeedLink(FeedType.TAGS, tag.getName(), "rss2"));
 		}
-		
+
 		return result;
 	}
-
 }

Modified: labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/TagMeTagger.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/TagMeTagger.java	2006-07-11 20:07:32 UTC (rev 5014)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/TagMeTagger.java	2006-07-11 20:33:35 UTC (rev 5015)
@@ -26,7 +26,7 @@
 public interface TagMeTagger {
 	public Vector getTags(String path);
 
-	public void addTag(String user, String path, String tag);
+	public void addTag(String user, String path, String tag, String desc);
 	
 	public void deleteTag(String user, String path, String tag);
 	




More information about the jboss-svn-commits mailing list