/** Returns the component definition of the specified class in all * language of the specified device, or null if not found * * @param deviceType the device type ({@link org.zkoss.zk.device.Device}), * such as ajax. It cannot be null. * @param cls the implementation class of the component. * @since 5.0.0 */ public static final ComponentDefinition getDefinitionByDeviceType(String deviceType, Class cls) { for (LanguageDefinition ld : LanguageDefinition.getByDeviceType(deviceType)) { try { return ld.getComponentDefinition(cls); } catch (DefinitionNotFoundException ex) { //ignore } } return null; }
private boolean isWpdContentRequired(String pkg, Element root) { for (LanguageDefinition langdef : LanguageDefinition.getByDeviceType(getDeviceType())) if (langdef.getJavaScriptPackagesWithMerges().contains(pkg)) return true; for (Iterator it = root.getElements("script").iterator(); it.hasNext();) { final Element el = (Element) it.next(); if (el.getAttributeValue("browser") != null) return true; } return false; }
/*package*/ static ComponentDefinition getDefinitionByDeviceType(Component comp, String deviceType, String name) { for (LanguageDefinition ld : LanguageDefinition.getByDeviceType(deviceType)) { try { final ComponentDefinition def = ld.getComponentDefinition(name); if (def.isInstance(comp)) return def; } catch (DefinitionNotFoundException ex) { //ignore } } return null; }
/** Generates and returns the complete CSS content of all components in the * specified device. * <p>Notice that it generates the content, while * {@link #outDeviceStyleSheets} generates the HTML tag that * will include the content. * @since 5.0.0 */ public static String outDeviceCSSContent(ServletContext ctx, HttpServletRequest request, HttpServletResponse response, String deviceType) { final StringWriter sw = new StringWriter(); for (Iterator it = LanguageDefinition.getByDeviceType(deviceType).iterator(); it.hasNext();) { final LanguageDefinition langdef = (LanguageDefinition) it.next(); for (Iterator it2 = langdef.getCSSURIs().iterator(); it2.hasNext();) { final String uri = (String) it2.next(); try { Servlets.include(ctx, request, HttpBufferedResponse.getInstance(response, sw), uri, null, 0); } catch (Throwable ex) { log.error("Unable to load " + uri, ex); } } } return sw.getBuffer().toString(); }
final String deviceType = getDeviceType(); SourceMapManager sourceMapManagerPkgTo = (SourceMapManager) request.getAttribute(SOURCE_MAP_PREFIX + pkgTo); for (LanguageDefinition langdef : LanguageDefinition.getByDeviceType(deviceType)) { for (String pkg : langdef.getMergedJavaScriptPackages(pkgTo)) { if (out == null) {
/** * Generates Locale-dependent strings in JavaScript syntax. * @since 6.5.1 */ public static final String outLocaleJavaScript(ServletRequest request, ServletResponse response) throws IOException { final StringBuffer result = new StringBuffer(4096); final WebApp webApp = WebApps.getCurrent(); final Execution exec = new FakeExecution(webApp.getServletContext(), request, response, null, null); //the same as AjaxDevice.reloadMessages() result.append(Devices.loadJavaScript(exec, "~./js/zk/lang/msgzk*.js")); result.append(Wpds.outLocaleJavaScript()); for (LanguageDefinition langdef : LanguageDefinition.getByDeviceType("ajax")) //WpdExtendlet.getDeviceType() also return "ajax" directly... for (MessageLoader loader : langdef.getMessageLoaders()) loader.load(result, exec); return result.toString(); }
for (Iterator it = LanguageDefinition.getByDeviceType(getDeviceType()).iterator(); it.hasNext();) { final LanguageDefinition langdef = (LanguageDefinition) it.next(); for (Iterator e = langdef.getJavaScriptModules().entrySet().iterator(); e.hasNext();) {
public void reloadMessages(Locale locale) throws IOException { if (locale == null) locale = Locales.getCurrent(); final StringBuffer sb = new StringBuffer(4096); final Locale oldl = Locales.setThreadLocal(locale); try { final Execution exec = Executions.getCurrent(); sb.append(Devices.loadJavaScript(exec, "~./js/zk/lang/msgzk*.js")); sb.append(Wpds.outLocaleJavaScript()); for (LanguageDefinition langdef : LanguageDefinition.getByDeviceType(getType())) for (MessageLoader loader : langdef.getMessageLoaders()) loader.load(sb, exec); } finally { Locales.setThreadLocal(oldl); } Clients.response("zk.reload", new AuScript(null, sb.toString())); } }
final Set<String> disabled = config.getDisabledThemeURIs(); final List<StyleSheet> sses = new LinkedList<StyleSheet>(); //a list of StyleSheet for (LanguageDefinition langdef : LanguageDefinition.getByDeviceType(deviceType)) { for (StyleSheet ss : langdef.getStyleSheets()) { if (!disabled.contains(ss.getHref()))
for (LanguageDefinition langdef : LanguageDefinition.getByDeviceType(deviceType)) jses.addAll(langdef.getJavaScripts()); for (JavaScript js : jses)