public static CubaAmchartsIntegration get(UI ui) { CubaAmchartsIntegration optioner = null; // Search singleton optioner for (Extension extension : ui.getExtensions()) { if (extension instanceof CubaAmchartsIntegration) { optioner = (CubaAmchartsIntegration) extension; break; } } // Create new optioner if not found if (optioner == null) { optioner = new CubaAmchartsIntegration(); optioner.extend(ui); } return optioner; }
public void setSettings(Settings settings) { this.settings = settings; applySettings(); }
public void applySettings() { getState().version++; }
protected void initLocale() { CubaAmchartsIntegration amchartsIntegration = CubaAmchartsIntegration.get(); if (amchartsIntegration.getSettings() == null || !Objects.equals(userSessionSource.getLocale(), amchartsIntegration.getLocale())) { Settings settings = new Settings(); Locale locale = userSessionSource.getLocale(); // chart String localeString = messages.getTools().localeToString(locale); amchartsIntegration.setChartMessages(localeString, ChartLocaleHelper.getChartLocaleMap(locale)); // export amchartsIntegration.setExportMessages(localeString, ChartLocaleHelper.getExportLocaleMap(locale)); amchartsIntegration.setSettings(settings); amchartsIntegration.setLocale(userSessionSource.getLocale()); } }
public static CubaAmchartsIntegration get() { UI ui = UI.getCurrent(); if (ui == null) { throw new IllegalStateException( "This method must be used from UI thread"); } return get(ui); } }
protected void initLocale() { CubaAmchartsIntegration amchartsIntegration = CubaAmchartsIntegration.get(); if (amchartsIntegration.getSettings() == null || !Objects.equals(userSessionSource.getLocale(), amchartsIntegration.getLocale())) { Settings settings = new Settings(); Locale locale = userSessionSource.getLocale(); // chart String localeString = messages.getTools().localeToString(locale); amchartsIntegration.setChartMessages(localeString, ChartLocaleHelper.getChartLocaleMap(locale)); // export amchartsIntegration.setExportMessages(localeString, ChartLocaleHelper.getExportLocaleMap(locale)); amchartsIntegration.setSettings(settings); amchartsIntegration.setLocale(userSessionSource.getLocale()); } }
public CubaAmchartsScene(ChartSerializer chartSerializer) { // enable amcharts integration CubaAmchartsIntegration.get(); dataItemKeyMapper = item -> { if (item instanceof DataItem.HasId) { return dataItemKeys.key(((DataItem.HasId) item).getId()); } return null; }; this.chartSerializer = chartSerializer; this.chartSerializer.setDataItemKeyMapper(dataItemKeyMapper); registerRpc(new CubaAmchartsServerRpcImpl(), CubaAmchartsServerRpc.class); }
protected void initLocale() { UserSessionSource userSessionSource = AppBeans.get(UserSessionSource.class); CubaAmchartsIntegration amchartsIntegration = CubaAmchartsIntegration.get(); if (amchartsIntegration.getSettings() == null || !Objects.equals(userSessionSource.getLocale(), amchartsIntegration.getLocale())) { Settings settings = new Settings(); Locale locale = userSessionSource.getLocale(); // chart String localeString = messages.getTools().localeToString(locale); amchartsIntegration.setChartMessages(localeString, ChartLocaleHelper.getChartLocaleMap(locale)); // export amchartsIntegration.setExportMessages(localeString, ChartLocaleHelper.getExportLocaleMap(locale)); amchartsIntegration.setSettings(settings); amchartsIntegration.setLocale(userSessionSource.getLocale()); } }
public CubaAmStockChartScene(StockChartSerializer chartSerializer) { // enable amcharts integration CubaAmchartsIntegration.get(); dataItemKeyMapper = item -> { if (item instanceof DataItem.HasId) { return dataItemKeys.key(((DataItem.HasId) item).getId()); } return null; }; this.chartSerializer = chartSerializer; this.chartSerializer.setDataItemKeyMapper(dataItemKeyMapper); registerRpc(new CubaAmStockChartServerRpcImpl(), CubaAmStockChartServerRpc.class); }
public Map<String, String> getChartMessages(String localeCode) { if (getState(false).chartMessages == null) { return Collections.emptyMap(); } String jsonLocaleMap = getState(false).chartMessages.get(localeCode); //noinspection unchecked Map<String, String> localeMap = gson.fromJson(jsonLocaleMap, Map.class); return Collections.unmodifiableMap(localeMap); }
public Map<String, String> getExportMessages(String localeCode) { if (getState(false).exportMessages == null) { return Collections.emptyMap(); } String jsonLocaleMap = getState(false).exportMessages.get(localeCode); //noinspection unchecked Map<String, String> localeMap = new Gson().fromJson(jsonLocaleMap, Map.class); return Collections.unmodifiableMap(localeMap); }
public void setExportMessages(String localeCode, Map<String, String> localeMap) { if (getState(false).exportMessages == null) { getState().exportMessages = new HashMap<>(); } JsonObject jsonLocaleMap = new JsonObject(); for (Map.Entry<String, String> localeEntry : localeMap.entrySet()) { jsonLocaleMap.addProperty(localeEntry.getKey(), localeEntry.getValue()); } getState().exportMessages.put(localeCode, gson.toJson(jsonLocaleMap)); }
public void setChartMessages(String localeCode, Map<String, Object> localeMap) { if (getState(false).chartMessages == null) { getState().chartMessages = new HashMap<>(); } JsonObject jsonLocaleMap = new JsonObject(); for (Map.Entry<String, Object> localeEntry : localeMap.entrySet()) { JsonElement element; if (localeEntry.getValue() instanceof List) { List list = (List) localeEntry.getValue(); JsonArray array = new JsonArray(); for (Object value : list) { array.add(new JsonPrimitive((String) value)); } element = array; } else { element = new JsonPrimitive((String) localeEntry.getValue()); } jsonLocaleMap.add(localeEntry.getKey(), element); } getState().chartMessages.put(localeCode, gson.toJson(jsonLocaleMap)); }
@Override public void beforeClientResponse(boolean initial) { super.beforeClientResponse(initial); if (settings != null) { getState().json = serializer.serialize(settings); } }