|
From: <jbo...@li...> - 2006-07-10 19:51:31
|
Author: szimano
Date: 2006-07-10 15:51:28 -0400 (Mon, 10 Jul 2006)
New Revision: 4985
Added:
labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/SearchListener.java
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/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:
tagging service JBLAB-704
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-10 19:39:28 UTC (rev 4984)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/TagMeServlet.java 2006-07-10 19:51:28 UTC (rev 4985)
@@ -160,4 +160,26 @@
}
+ public Vector search(String tags, String author, String keyword, String clas) {
+ Vector vect = null;
+
+ try {
+ TagMeTagger tagger = (TagMeTagger) Class.forName(clas)
+ .newInstance();
+
+ vect = tagger.search(tags, author, keyword);
+ } catch (InstantiationException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (IllegalAccessException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (ClassNotFoundException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ return vect;
+ }
+
}
Added: 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-10 19:39:28 UTC (rev 4984)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/SearchListener.java 2006-07-10 19:51:28 UTC (rev 4985)
@@ -0,0 +1,70 @@
+package org.jboss.labs.tagme.gwt.client;
+
+import java.util.Vector;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.user.client.Window;
+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.HorizontalPanel;
+import com.google.gwt.user.client.ui.Label;
+import com.google.gwt.user.client.ui.TextBox;
+import com.google.gwt.user.client.ui.Widget;
+
+public class SearchListener implements ClickListener {
+
+ private String clas;
+
+ private HorizontalPanel results;
+
+ private TextBox tags;
+
+ private TextBox author;
+
+ private TextBox keyword;
+
+ public SearchListener(HorizontalPanel results, TextBox tags,
+ TextBox author, TextBox keyword, String clas) {
+ this.results = results;
+ this.clas = clas;
+ this.tags = tags;
+ this.keyword = keyword;
+ this.author = author;
+ }
+
+ public void onClick(Widget sender) {
+ results.clear();
+
+ TaggingServiceAsync tagging = (TaggingServiceAsync) GWT
+ .create(TaggingService.class);
+
+ ServiceDefTarget endpoint = (ServiceDefTarget) tagging;
+ endpoint.setServiceEntryPoint("/tagme-servlet/tag/");
+
+ AsyncCallback callback = new AsyncCallback() {
+ 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()));
+ }
+ }
+
+ public void onFailure(Throwable caught) {
+ Window.alert("Error ! " + caught.getMessage() + " Throwable: "
+ + caught);
+ }
+ };
+
+ 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);
+ }
+
+}
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-10 19:39:28 UTC (rev 4984)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TagMeShowPopupListener.java 2006-07-10 19:51:28 UTC (rev 4985)
@@ -33,7 +33,6 @@
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.CheckBox;
import com.google.gwt.user.client.ui.ClickListener;
-import com.google.gwt.user.client.ui.DialogBox;
import com.google.gwt.user.client.ui.FlexTable;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.HorizontalPanel;
@@ -301,20 +300,39 @@
.add(new Label(
"Search for tagged content by tag name, author or keyword search of the description"));
searchPanel.add(new Label("Tag"));
- searchPanel.add(new TextBox());
+ TextBox tags = new TextBox();
+ tags.setText("");
+ searchPanel.add(tags);
searchPanel.add(new Label("Author"));
- searchPanel.add(new TextBox());
+ TextBox author = new TextBox();
+ author.setText("");
+ searchPanel.add(author);
searchPanel.add(new Label("Keyword"));
- searchPanel.add(new TextBox());
+ TextBox keyword = new TextBox();
+ keyword.setText("");
+ searchPanel.add(keyword);
searchPanel.add(new Label("Search results"));
- searchPanel.add(new Button("Close", new ClickListener() {
+
+ HorizontalPanel results = new HorizontalPanel();
+
+ searchPanel.add(results);
+
+ VerticalPanel buttons = new VerticalPanel();
+
+ buttons.add(new Button("Search", new SearchListener(results, tags, author, keyword, clas)));
+
+ searchPanel.add(buttons);
+
+ buttons.add(new Button("Close", new ClickListener() {
public void onClick(Widget sender) {
dialog.hide();
}
}));
+
+ searchPanel.add(buttons);
tabs.add(searchPanel, "Tag Search");
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-10 19:39:28 UTC (rev 4984)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingService.java 2006-07-10 19:51:28 UTC (rev 4985)
@@ -48,4 +48,6 @@
public Vector getSugestions(String path, String clas);
public Vector getAllTags(String clas);
+
+ public Vector search(String tags, String author, String keyword, String clas);
}
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-10 19:39:28 UTC (rev 4984)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/gwt/client/TaggingServiceAsync.java 2006-07-10 19:51:28 UTC (rev 4985)
@@ -42,4 +42,6 @@
public void getSugestions(String path, String clas, AsyncCallback callback);
public void getAllTags(String clas, AsyncCallback callback);
+
+ public void search(String tags, String author, String keyword, String clas, AsyncCallback callback);
}
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-10 19:39:28 UTC (rev 4984)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/ShotokuTaggingService.java 2006-07-10 19:51:28 UTC (rev 4985)
@@ -200,7 +200,7 @@
public Vector getAllTags() {
Vector<String> ret = new Vector<String>();
try {
- List<String> tags = service.getAllTags();
+ List<String> tags = service.getAllTagsNames();
for (String tag : tags) {
ret.add(tag);
@@ -213,4 +213,17 @@
return ret;
}
+ public Vector search(String tags, String author, String keyword) {
+ log.info("Search started");
+ List<Tag> allTags = service.searchTags(tags, author, keyword);
+
+ Vector result = new Vector();
+
+ for (Tag tag : allTags) {
+ result.add(tag.getName());
+ }
+
+ 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-10 19:39:28 UTC (rev 4984)
+++ labs/jbosslabs/trunk/portal-extensions/forge-tagme/src/java/org/jboss/labs/tagme/services/TagMeTagger.java 2006-07-10 19:51:28 UTC (rev 4985)
@@ -33,4 +33,6 @@
public Vector getSuggestions(String path);
public Vector getAllTags();
+
+ public Vector search(String tags, String author, String keyword);
}
|