[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