From 5dbace4cc2e575b66cf0b8331f6590c84134ed34 Mon Sep 17 00:00:00 2001 From: bjorn Date: Wed, 22 Oct 2008 12:05:59 +0000 Subject: Rename the GWT Translate module to PGF. Rename the GF class to PGF. --- .../src/se/chalmers/cs/gf/gwt/PGF.gwt.xml | 8 + .../src/se/chalmers/cs/gf/gwt/Translate.gwt.xml | 8 - .../src/se/chalmers/cs/gf/gwt/TranslateApp.gwt.xml | 2 +- .../cs/gf/gwt/client/CompletionOracle.java | 22 +- .../src/se/chalmers/cs/gf/gwt/client/GF.java | 221 --------------------- .../se/chalmers/cs/gf/gwt/client/GFRequest.java | 19 -- .../src/se/chalmers/cs/gf/gwt/client/PGF.java | 221 +++++++++++++++++++++ .../se/chalmers/cs/gf/gwt/client/PGFRequest.java | 19 ++ .../se/chalmers/cs/gf/gwt/client/TranslateApp.java | 28 +-- 9 files changed, 274 insertions(+), 274 deletions(-) create mode 100644 src/server/gwt-client/src/se/chalmers/cs/gf/gwt/PGF.gwt.xml delete mode 100644 src/server/gwt-client/src/se/chalmers/cs/gf/gwt/Translate.gwt.xml delete mode 100644 src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/GF.java delete mode 100644 src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/GFRequest.java create mode 100644 src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/PGF.java create mode 100644 src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/PGFRequest.java (limited to 'src/server') diff --git a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/PGF.gwt.xml b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/PGF.gwt.xml new file mode 100644 index 000000000..959f16040 --- /dev/null +++ b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/PGF.gwt.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/Translate.gwt.xml b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/Translate.gwt.xml deleted file mode 100644 index 959f16040..000000000 --- a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/Translate.gwt.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/TranslateApp.gwt.xml b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/TranslateApp.gwt.xml index 717629e74..3f35d1bef 100644 --- a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/TranslateApp.gwt.xml +++ b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/TranslateApp.gwt.xml @@ -3,7 +3,7 @@ - + diff --git a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/CompletionOracle.java b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/CompletionOracle.java index 6fc8a930a..1073eed67 100644 --- a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/CompletionOracle.java +++ b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/CompletionOracle.java @@ -8,21 +8,21 @@ import java.util.*; public class CompletionOracle extends SuggestOracle { - private GF gf; + private PGF pgf; private ErrorHandler errorHandler; private List inputLangs = null; - private GFRequest gfRequest = null; + private PGFRequest pgfRequest = null; - public CompletionOracle (GF gf) { - this(gf, null); + public CompletionOracle (PGF pgf) { + this(pgf, null); } - public CompletionOracle (GF gf, ErrorHandler errorHandler) { - this.gf = gf; + public CompletionOracle (PGF pgf, ErrorHandler errorHandler) { + this.pgf = pgf; this.errorHandler = errorHandler; } @@ -60,12 +60,12 @@ public class CompletionOracle extends SuggestOracle { public void requestSuggestions(final SuggestOracle.Request request, final SuggestOracle.Callback callback) { // only allow a single completion request at a time - if (gfRequest != null) - gfRequest.cancel(); + if (pgfRequest != null) + pgfRequest.cancel(); - gfRequest = gf.complete(request.getQuery(), getInputLangs(), null, request.getLimit(), - new GF.CompleteCallback() { - public void onResult(GF.Completions completions) { + pgfRequest = pgf.complete(request.getQuery(), getInputLangs(), null, request.getLimit(), + new PGF.CompleteCallback() { + public void onResult(PGF.Completions completions) { Collection suggestions = new ArrayList(); for (int i = 0; i < completions.length(); i++) { String text = completions.get(i).getText(); diff --git a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/GF.java b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/GF.java deleted file mode 100644 index a8533406e..000000000 --- a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/GF.java +++ /dev/null @@ -1,221 +0,0 @@ -package se.chalmers.cs.gf.gwt.client; - -import com.google.gwt.http.client.*; -import com.google.gwt.core.client.GWT; -import com.google.gwt.core.client.JsArray; -import com.google.gwt.core.client.JavaScriptObject; - -import com.google.gwt.json.client.JSONValue; -import com.google.gwt.json.client.JSONObject; -import com.google.gwt.json.client.JSONParser; - -import java.util.Set; -import java.util.Iterator; -import java.util.List; -import java.util.NoSuchElementException; -import java.util.ArrayList; - -public class GF { - - private String baseURL; - private String pgfName; - - public GF (String baseURL, String pgfName) { - this.baseURL = baseURL; - this.pgfName = pgfName; - } - - public static interface GFCallback { - public void onResult (T result) ; - public void onError (Throwable e) ; - } - - public static class IterableJsArray extends JsArray { - protected IterableJsArray() {} - - public final Iterable iterable() { - return new Iterable() { - public Iterator iterator() { - return new Iterator() { - private int i = 0; - public boolean hasNext() { - return i < length(); - } - public T next() { - if (!hasNext()) { - throw new NoSuchElementException(); - } - return get(i++); - } - public void remove() { - throw new UnsupportedOperationException(); - } - }; - } - }; - } - } - - /* Grammar */ - - public GFRequest grammar (final GrammarCallback callback) { - return sendRequest("grammar", null, callback); - } - - public interface GrammarCallback extends GFCallback { } - - public static class Grammar extends JavaScriptObject { - protected Grammar() { } - - public final native String getName() /*-{ return this.name; }-*/; - - public final native String getUserLanguage() /*-{ return this.userLanguage; }-*/; - - public final native IterableJsArray getLanguages() /*-{ return this.languages; }-*/; - - public final Language getLanguage(String name) { - int c = getLanguages().length(); - for (int i = 0; i < c; i++) { - Language l = getLanguages().get(i); - if (l.getName().equals(name)) - return l; - } - return null; - } - } - - public static class Language extends JavaScriptObject { - protected Language() { } - - public final native String getName() /*-{ return this.name; }-*/; - public final native String getLanguageCode() /*-{ return this.languageCode; }-*/; - public final native boolean canParse() /*-{ return this.canParse; }-*/; - } - - /* Translation */ - - public GFRequest translate (String input, List fromLangs, String cat, List toLangs, - final TranslateCallback callback) { - List args = new ArrayList(); - args.add(new Arg("input", input)); - if (fromLangs != null) { - for (String from : fromLangs) { - args.add(new Arg("from", from)); - } - } - args.add(new Arg("cat", cat)); - if (toLangs != null) { - for (String to : toLangs) { - args.add(new Arg("to", to)); - } - } - return sendRequest("translate", args, callback); - } - - public interface TranslateCallback extends GFCallback { } - - public static class Translations extends IterableJsArray { - protected Translations() { } - } - - public static class Translation extends JavaScriptObject { - protected Translation() { } - - public final native String getFrom() /*-{ return this.from; }-*/; - public final native String getTo() /*-{ return this.to; }-*/; - public final native String getText() /*-{ return this.text; }-*/; - } - - /* Completion */ - - public GFRequest complete (String input, List fromLangs, String cat, int limit, final CompleteCallback callback) { - List args = new ArrayList(); - args.add(new Arg("input", input)); - if (fromLangs != null) { - for (String from : fromLangs) { - args.add(new Arg("from", from)); - } - } - args.add(new Arg("cat", cat)); - args.add(new Arg("limit", limit)); - return sendRequest("complete", args, callback); - } - - public interface CompleteCallback extends GFCallback { } - - public static class Completions extends IterableJsArray { - protected Completions() { } - } - - public static class Completion extends JavaScriptObject { - protected Completion() { } - - public final native String getFrom() /*-{ return this.from; }-*/; - public final native String getText() /*-{ return this.text; }-*/; - } - - /* Utilities */ - - private GFRequest sendRequest (String resource, List vars, final GFCallback callback) { - String url = baseURL + "/" + pgfName + "/" + resource + "?" + buildQueryString(vars); - RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, url); - builder.setTimeoutMillis(30000); - builder.setHeader("Accept","text/plain, text/html;q=0.5, */*;q=0.1"); - Request request = null; - - try { - request = builder.sendRequest(null, new RequestCallback() { - public void onError(Request request, Throwable e) { - callback.onError(e); - } - - public void onResponseReceived(Request request, Response response) { - if (200 == response.getStatusCode()) { - callback.onResult((T)eval(response.getText()).cast()); - } else { - RequestException e = new RequestException("Response not OK: " + response.getStatusCode() + ". " + response.getText()); - callback.onError(e); - } - } - }); - } catch (RequestException e) { - callback.onError(e); - } - - return new GFRequest(request); - } - - private static native JavaScriptObject eval(String json) /*-{ - return eval('(' + json + ')'); - }-*/; - - private static class Arg { - public final String name; - public final String value; - public Arg (String name, String value) { - this.name = name; - this.value = value; - } - public Arg (String name, int value) { - this(name, Integer.toString(value)); - } - } - - private static String buildQueryString(List args) { - StringBuffer sb = new StringBuffer(); - if (args != null) { - for (Arg arg : args) { - if (arg.value != null) { - if (sb.length() > 0) { - sb.append("&"); - } - sb.append(URL.encodeComponent(arg.name)); - sb.append("="); - sb.append(URL.encodeComponent(arg.value)); - } - } - } - return sb.toString(); - } - -} \ No newline at end of file diff --git a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/GFRequest.java b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/GFRequest.java deleted file mode 100644 index de30f803a..000000000 --- a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/GFRequest.java +++ /dev/null @@ -1,19 +0,0 @@ -package se.chalmers.cs.gf.gwt.client; - -import com.google.gwt.http.client.*; - -public class GFRequest { - - private Request httpRequest; - - GFRequest (Request httpRequest) { - this.httpRequest = httpRequest; - } - - public void cancel() { - if (httpRequest != null) { - httpRequest.cancel(); - } - } - -} \ No newline at end of file diff --git a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/PGF.java b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/PGF.java new file mode 100644 index 000000000..daf97c7ae --- /dev/null +++ b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/PGF.java @@ -0,0 +1,221 @@ +package se.chalmers.cs.gf.gwt.client; + +import com.google.gwt.http.client.*; +import com.google.gwt.core.client.GWT; +import com.google.gwt.core.client.JsArray; +import com.google.gwt.core.client.JavaScriptObject; + +import com.google.gwt.json.client.JSONValue; +import com.google.gwt.json.client.JSONObject; +import com.google.gwt.json.client.JSONParser; + +import java.util.Set; +import java.util.Iterator; +import java.util.List; +import java.util.NoSuchElementException; +import java.util.ArrayList; + +public class PGF { + + private String baseURL; + private String pgfName; + + public PGF (String baseURL, String pgfName) { + this.baseURL = baseURL; + this.pgfName = pgfName; + } + + public static interface GFCallback { + public void onResult (T result) ; + public void onError (Throwable e) ; + } + + public static class IterableJsArray extends JsArray { + protected IterableJsArray() {} + + public final Iterable iterable() { + return new Iterable() { + public Iterator iterator() { + return new Iterator() { + private int i = 0; + public boolean hasNext() { + return i < length(); + } + public T next() { + if (!hasNext()) { + throw new NoSuchElementException(); + } + return get(i++); + } + public void remove() { + throw new UnsupportedOperationException(); + } + }; + } + }; + } + } + + /* Grammar */ + + public PGFRequest grammar (final GrammarCallback callback) { + return sendRequest("grammar", null, callback); + } + + public interface GrammarCallback extends GFCallback { } + + public static class Grammar extends JavaScriptObject { + protected Grammar() { } + + public final native String getName() /*-{ return this.name; }-*/; + + public final native String getUserLanguage() /*-{ return this.userLanguage; }-*/; + + public final native IterableJsArray getLanguages() /*-{ return this.languages; }-*/; + + public final Language getLanguage(String name) { + int c = getLanguages().length(); + for (int i = 0; i < c; i++) { + Language l = getLanguages().get(i); + if (l.getName().equals(name)) + return l; + } + return null; + } + } + + public static class Language extends JavaScriptObject { + protected Language() { } + + public final native String getName() /*-{ return this.name; }-*/; + public final native String getLanguageCode() /*-{ return this.languageCode; }-*/; + public final native boolean canParse() /*-{ return this.canParse; }-*/; + } + + /* Translation */ + + public PGFRequest translate (String input, List fromLangs, String cat, List toLangs, + final TranslateCallback callback) { + List args = new ArrayList(); + args.add(new Arg("input", input)); + if (fromLangs != null) { + for (String from : fromLangs) { + args.add(new Arg("from", from)); + } + } + args.add(new Arg("cat", cat)); + if (toLangs != null) { + for (String to : toLangs) { + args.add(new Arg("to", to)); + } + } + return sendRequest("translate", args, callback); + } + + public interface TranslateCallback extends GFCallback { } + + public static class Translations extends IterableJsArray { + protected Translations() { } + } + + public static class Translation extends JavaScriptObject { + protected Translation() { } + + public final native String getFrom() /*-{ return this.from; }-*/; + public final native String getTo() /*-{ return this.to; }-*/; + public final native String getText() /*-{ return this.text; }-*/; + } + + /* Completion */ + + public PGFRequest complete (String input, List fromLangs, String cat, int limit, final CompleteCallback callback) { + List args = new ArrayList(); + args.add(new Arg("input", input)); + if (fromLangs != null) { + for (String from : fromLangs) { + args.add(new Arg("from", from)); + } + } + args.add(new Arg("cat", cat)); + args.add(new Arg("limit", limit)); + return sendRequest("complete", args, callback); + } + + public interface CompleteCallback extends GFCallback { } + + public static class Completions extends IterableJsArray { + protected Completions() { } + } + + public static class Completion extends JavaScriptObject { + protected Completion() { } + + public final native String getFrom() /*-{ return this.from; }-*/; + public final native String getText() /*-{ return this.text; }-*/; + } + + /* Utilities */ + + private PGFRequest sendRequest (String resource, List vars, final GFCallback callback) { + String url = baseURL + "/" + pgfName + "/" + resource + "?" + buildQueryString(vars); + RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, url); + builder.setTimeoutMillis(30000); + builder.setHeader("Accept","text/plain, text/html;q=0.5, */*;q=0.1"); + Request request = null; + + try { + request = builder.sendRequest(null, new RequestCallback() { + public void onError(Request request, Throwable e) { + callback.onError(e); + } + + public void onResponseReceived(Request request, Response response) { + if (200 == response.getStatusCode()) { + callback.onResult((T)eval(response.getText()).cast()); + } else { + RequestException e = new RequestException("Response not OK: " + response.getStatusCode() + ". " + response.getText()); + callback.onError(e); + } + } + }); + } catch (RequestException e) { + callback.onError(e); + } + + return new PGFRequest(request); + } + + private static native JavaScriptObject eval(String json) /*-{ + return eval('(' + json + ')'); + }-*/; + + private static class Arg { + public final String name; + public final String value; + public Arg (String name, String value) { + this.name = name; + this.value = value; + } + public Arg (String name, int value) { + this(name, Integer.toString(value)); + } + } + + private static String buildQueryString(List args) { + StringBuffer sb = new StringBuffer(); + if (args != null) { + for (Arg arg : args) { + if (arg.value != null) { + if (sb.length() > 0) { + sb.append("&"); + } + sb.append(URL.encodeComponent(arg.name)); + sb.append("="); + sb.append(URL.encodeComponent(arg.value)); + } + } + } + return sb.toString(); + } + +} \ No newline at end of file diff --git a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/PGFRequest.java b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/PGFRequest.java new file mode 100644 index 000000000..b46ad9382 --- /dev/null +++ b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/PGFRequest.java @@ -0,0 +1,19 @@ +package se.chalmers.cs.gf.gwt.client; + +import com.google.gwt.http.client.*; + +public class PGFRequest { + + private Request httpRequest; + + PGFRequest (Request httpRequest) { + this.httpRequest = httpRequest; + } + + public void cancel() { + if (httpRequest != null) { + httpRequest.cancel(); + } + } + +} \ No newline at end of file diff --git a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/TranslateApp.java b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/TranslateApp.java index d96db4365..fd92713c3 100644 --- a/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/TranslateApp.java +++ b/src/server/gwt-client/src/se/chalmers/cs/gf/gwt/client/TranslateApp.java @@ -30,14 +30,14 @@ import java.util.Set; public class TranslateApp implements EntryPoint { - private static final String gfBaseURL = "/pgf"; + private static final String pgfBaseURL = "/pgf"; private static final String pgfName = "grammar.pgf"; - private GF gf; + private PGF pgf; private CompletionOracle oracle; private SuggestBox suggest; - private GF.Grammar grammar; + private PGF.Grammar grammar; private ListBox fromLangBox; private ListBox toLangBox; private Button translateButton; @@ -48,7 +48,7 @@ public class TranslateApp implements EntryPoint { private void addTranslation(String text, String toLang) { Label l = new Label(text); l.addStyleName("my-translation"); - GF.Language lang = grammar.getLanguage(toLang); + PGF.Language lang = grammar.getLanguage(toLang); if (lang != null) { l.getElement().setLang(lang.getLanguageCode()); } @@ -58,10 +58,10 @@ public class TranslateApp implements EntryPoint { private void translate() { outputPanel.clear(); setStatus("Translating..."); - gf.translate(suggest.getText(), listBoxSelection(fromLangBox), null, - listBoxSelection(toLangBox), new GF.TranslateCallback() { - public void onResult (GF.Translations translations) { - for (GF.Translation t : translations.iterable()) { + pgf.translate(suggest.getText(), listBoxSelection(fromLangBox), null, + listBoxSelection(toLangBox), new PGF.TranslateCallback() { + public void onResult (PGF.Translations translations) { + for (PGF.Translation t : translations.iterable()) { addTranslation(t.getText(), t.getTo()); } clearStatus(); @@ -101,10 +101,10 @@ public class TranslateApp implements EntryPoint { statusPopup.hide(); } - private void setGrammar(GF.Grammar grammar) { + private void setGrammar(PGF.Grammar grammar) { this.grammar = grammar; - for (GF.Language l : grammar.getLanguages().iterable()) { + for (PGF.Language l : grammar.getLanguages().iterable()) { String name = l.getName(); if (l.canParse()) { fromLangBox.addItem(name); @@ -124,7 +124,7 @@ public class TranslateApp implements EntryPoint { private void createTranslationUI() { - oracle = new CompletionOracle(gf, new CompletionOracle.ErrorHandler() { + oracle = new CompletionOracle(pgf, new CompletionOracle.ErrorHandler() { public void onError(Throwable e) { showError("Completion failed", e); } @@ -196,12 +196,12 @@ public class TranslateApp implements EntryPoint { statusPopup.add(statusLabel); statusPopup.center(); - gf = new GF(gfBaseURL, pgfName); + pgf = new PGF(pgfBaseURL, pgfName); createTranslationUI(); - gf.grammar(new GF.GrammarCallback() { - public void onResult(GF.Grammar grammar) { + pgf.grammar(new PGF.GrammarCallback() { + public void onResult(PGF.Grammar grammar) { setGrammar(grammar); } -- cgit v1.2.3