protected List<Resource> retrieveResources(WebResourceManager wrm, String bundle, ResourceType type) { return wrm.getResources(new ResourceContextImpl(), bundle, type.name()); }
@Override public void encodeEnd(FacesContext context, UIComponent component) throws IOException { Map<String, Object> attributes = component.getAttributes(); String name = (String) attributes.get("name"); String type = (String) attributes.get("type"); WebResourceManager wrm = Framework.getService(WebResourceManager.class); if (StringUtils.isBlank(type)) { log.error("Cannot encode bundle with empty type at %s" + component.getClientId()); return; } if (!ResourceType.css.equals(type) && !ResourceType.js.equals(type) && !ResourceType.html.equals(type)) { log.error("Unsupported type '" + type + "' to encode page '" + name + "' at " + component.getClientId()); return; } List<Resource> rs = wrm.getResources(new ResourceContextImpl(), name, type); if (rs != null && !rs.isEmpty()) { if (ResourceType.css.equals(type)) { encodeEnd(context, component, ResourceType.css, BUNDLE_ENDPOINT_PATH + name + ".css"); } else if (ResourceType.js.equals(type)) { encodeEnd(context, component, ResourceType.js, BUNDLE_ENDPOINT_PATH + name + ".js"); } else if (ResourceType.html.equals(type)) { for (Resource r : rs) { encodeEnd(context, component, ResourceType.html, COMPONENTS_PATH + r.getPath()); } } } super.encodeEnd(context, component); }
@Override public WroModel create() { WroModel model = new WroModel(); WebResourceManager service = Framework.getService(WebResourceManager.class); ResourceContextImpl rcontext = new ResourceContextImpl(); List<ResourceBundle> bundles = service.getResourceBundles(); for (ResourceBundle bundle : bundles) { String groupName = bundle.getName(); Group group = new Group(groupName); List<Resource> resources = service.getResources(rcontext, groupName, ResourceType.any.name()); if (resources != null) { for (Resource resource : resources) { ro.isdc.wro.model.resource.Resource wr = toWroResource(groupName, resource); if (wr != null) { group.addResource(wr); } } } model.addGroup(group); } return model; }
@Override public WroModel create() { WroModel model = new WroModel(); ThemeStylingService ts = Framework.getService(ThemeStylingService.class); WebResourceManager ws = Framework.getService(WebResourceManager.class); ResourceContextImpl rcontext = new ResourceContextImpl(); List<PageDescriptor> pages = ts.getPages(); for (PageDescriptor page : pages) { String groupName = page.getName(); Group group = new Group(groupName); List<String> bundleNames = page.getResourceBundles(); for (String bundleName : bundleNames) { List<Resource> resources = ws.getResources(rcontext, bundleName, ResourceType.any.name()); if (resources != null) { for (Resource resource : resources) { ro.isdc.wro.model.resource.Resource wr = toWroResource(bundleName, resource); if (wr != null) { group.addResource(wr); } } } } model.addGroup(group); } return model; }