import org.argeo.cms.ui.CmsTheme;
import org.argeo.util.LangUtils;
import org.eclipse.rap.rwt.RWT;
-import org.eclipse.rap.rwt.application.AbstractEntryPoint;
import org.eclipse.rap.rwt.application.Application;
import org.eclipse.rap.rwt.application.ApplicationConfiguration;
import org.eclipse.rap.rwt.client.WebClient;
-import org.eclipse.swt.widgets.Composite;
import org.osgi.framework.BundleContext;
import org.osgi.framework.ServiceRegistration;
public void init(BundleContext bundleContext, Map<String, String> properties) {
this.bundleContext = bundleContext;
contextName = properties.get(CONTEXT_NAME);
+ if (cmsApp != null)
+ themingUpdated();
// registerIfAllThemesAvailable();
}
public void destroy(BundleContext bundleContext, Map<String, String> properties) {
-
+ if (cmsApp != null)
+ cmsApp.removeCmsAppListener(this);
}
@Override
// log.warn("Theme id " + themeId + " was specified but it was not found, using default RWT theme.");
}
application.addEntryPoint("/" + uiName, () -> {
- return new AbstractEntryPoint() {
- private static final long serialVersionUID = -9153259126766694485L;
-
- @Override
- protected void createContents(Composite parent) {
- cmsApp.initUi(uiName, parent);
-
- }
- };
+ return new CmsWebEntryPoint(this, uiName);
}, properties);
+ if (log.isDebugEnabled())
+ log.info("Added web entry point /" + (contextName != null ? contextName : "") + "/" + uiName);
}
+ log.debug("Published CMS web app /" + (contextName != null ? contextName : ""));
}
// private void registerIfAllThemesAvailable() {
// }
// }
- public CmsApp getCmsApp() {
+ CmsApp getCmsApp() {
return cmsApp;
}
rwtAppReg.unregister();
if (bundleContext != null) {
rwtAppReg = bundleContext.registerService(ApplicationConfiguration.class, this, regProps);
- log.info("Published CMS web app /" + (contextName != null ? contextName : ""));
+ if (log.isDebugEnabled())
+ log.debug("Publishing CMS web app /" + (contextName != null ? contextName : "") + " ...");
}
}