Dear devs,

Regarding XWIKI-2784 (Create a {{map}} macro for XWiki Syntax 2.0), I'd 
like to discuss the way I should go to have several implementations 
available for the same macro.
The idea is for one to be able to chose a map provider (google, MS live, 
yahoo, etc.). From a syntax point of view, there are 2 possibilities :

1. Using a parameter : {{map service="google" .../}}
2. Using aliases for the macro {{livemap .../}}
(and 3. supporting both)

For 2. we could implement one macro per supported service, all of them 
using the same parameters bean. There might be some redundant code 
though, that would need to be extracted in a common class (for example 
the code to generate the proper JS call according to the parameters, as 
I plan to have a common JS interface for all services, and load the 
proper one according to the service requested).

For 1. (or for 3.) I guess it would mean a unique macro class entry 
point. Then a possibility I discussed with Thomas could be to have a 
component interface for generating blocks for a map (MapProvider, or 
something like this), and one implementation of that component per 
service. The macro would then lookup for the proper implementation 
according to the alias used or the parameters used.

WDYT ? Do I miss something there ?

Jerome.
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to