X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.eclipse.ui.rap%2Fsrc%2Forg%2Fargeo%2Feclipse%2Fui%2Fspecific%2FUiContext.java;h=dac270026311815f71d8cd5b20c358c03546a310;hb=b837ab75edc9c3ce9bf0ce63ea44b0f41d6e1049;hp=ebececf154cae3d0bed8b6f2d209761cf56c5ad7;hpb=0af549d05ec45b5e31df9026b6627de9038d39eb;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.eclipse.ui.rap/src/org/argeo/eclipse/ui/specific/UiContext.java b/org.argeo.eclipse.ui.rap/src/org/argeo/eclipse/ui/specific/UiContext.java index ebececf15..dac270026 100644 --- a/org.argeo.eclipse.ui.rap/src/org/argeo/eclipse/ui/specific/UiContext.java +++ b/org.argeo.eclipse.ui.rap/src/org/argeo/eclipse/ui/specific/UiContext.java @@ -3,24 +3,34 @@ package org.argeo.eclipse.ui.specific; import java.util.Locale; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import org.eclipse.rap.rwt.RWT; import org.eclipse.swt.widgets.Display; /** Singleton class providing single sources infos about the UI context. */ public class UiContext { - + /** Can be null, thus indicating that we are not in a web context. */ public static HttpServletRequest getHttpRequest() { return RWT.getRequest(); } + public static HttpServletResponse getHttpResponse() { + return RWT.getResponse(); + } + public static Locale getLocale() { - return RWT.getUISession().getLocale(); + if (Display.getCurrent() != null) + return RWT.getUISession().getLocale(); + else + return Locale.getDefault(); } public static void setLocale(Locale locale) { if (Display.getCurrent() != null) RWT.getUISession().setLocale(locale); + else + Locale.setDefault(locale); } /** Can always be null */ @@ -35,8 +45,7 @@ public class UiContext { public static void setData(String key, Object value) { Display display = getDisplay(); if (display == null) - throw new SingleSourcingException( - "Not display available in RAP context"); + throw new SingleSourcingException("Not display available in RAP context"); display.setData(key, value); }