| Summary: | Revise branding-to-entrypoint binding | ||
|---|---|---|---|
| Product: | [RT] RAP | Reporter: | Ralf Sternberg <rsternberg> |
| Component: | RWT | Assignee: | Project Inbox <rap-inbox> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | enhancement | ||
| Priority: | P3 | CC: | holger.staudacher |
| Version: | 1.5 | ||
| Target Milestone: | 1.5 M6 | ||
| Hardware: | PC | ||
| OS: | Linux | ||
| Whiteboard: | |||
|
Description
Ralf Sternberg
I'd like to go the suggested path of accepting a third parameter in the addEntryPoint() methods. Instead of calling it "branding" I'd prefer something more generic like "properties" or "parameters", because not all of the possible parameters are related to a brand. Since the framework should be flexible enough to support alternative clients, I think of a java.util.Map<String, Object> as parameter type. Example: Map map = new HashMap<String, Object>(); map.put( DefaultClient.THEME_ID, "my.custom.theme" ); map.put( AndroidClient.USE_COOL_EFFECTS, Boolean.TRUE ); ... config.addEntryPoint( "/myapp", MyEntryPoint.class, map ); We could also specify a map-like type of our own, but I'm not sure if this would add any value. Thoughts? The ApplicationConfiguration#addEntryPoint() methods now accept a third parameter called properties to configure those "branding" aspects for every entrypoint. The properties are a String-to-String Map. Property keys are defined in the new class WebClient. Alternative clients can define their own properties. ApplicationConfiguration#addBranding() has been removed. IExitConfirmation is not part of the WebClient's properties, I've opened bug 374478 for an API to add exit confirmations programmatically. I've decided to also remove the two-parameter addEntryPoint methods. I think it feels simpler to add a null as last parameter than having to select from four different addEntryPoint() methods. Moreover, there will hardly be any productive application that doesn't at least set the browser title. |