Thanks, Dan! On Thu, Feb 12, 2015 at 12:27 PM, Dan Haywood <[email protected]> wrote:
> Hi Martin, > > you are correct... there is no very satisfactory way to do this at the > moment; instead is necessary to suppress the service and add a replacement. > > The .layout.json isn't appropriate here... that deals only with the layout > of an entity. > > I'm currently working through the addon modules to make sure that they all > group "sensibly"... I have sessionlogger/command/auditing/publishing under > "Activity", and all the security services under "Security". Haven't yet > decided where to put devutils or settings... was thinking perhaps > "Prototyping" and the tertiary menu respectively? > At the moment when grouped in a single menu item the services' actions are separated by a divider. I think this is a good use case for the multi level support for the menu items. Do you like the idea ? I can take a look into it. > > Also, I'm ensuring that all properties/collections/actions emit an > appropriate domain event, making it easy for subscribers to easily suppress > actions visibility by vetoing on the hide phase. > > But what is needed here is some sort of menu.json file that has an > equivalent role. I think there's a ticket on JIRA for this, but it's just > a placeholder, no real thinking been done on it. > > As for the schema of .layout.json, at some point was thinking we should > define a json-schema for it; some IDEs support that (though not IntelliJ, > surprisingly). And/or, might be worthwhile supporting .layout.xml and > writing a new implementation that reads from XML with corresponding XSD > (since much more widely supported in editors). > LayoutMetadataReaderFromJson uses Google Gson for the JSON layout parser, I guess because it is very easy. RO functionality uses Jackson for its needs. This adds to the final size of the .war archive. I guess it would be OK to replace Gson with Jackson. It supports POJO <-> XML as well via https://github.com/FasterXML/jackson-dataformat-xml. But I am not sure this will reduce the final footprint because we replace Gson with a new jar. > > Cheers > Dan > > > > > > On 12 February 2015 at 09:47, Martin Grigorov <[email protected]> > wrote: > > > Hi, > > > > I need to put several domain services into a single menu item to save > some > > space in the navigation bar (the header). > > So I use the same value for @DomainServiceLayout#named attribute. > > This is easy for services defined in my app, but not so obvious how to do > > for services contributed by 3rd party modules (e.g. security, > > sessionlogger, etc.). > > The only way I see is to suppress the service from the modules and add my > > own one that just delegates. > > Maybe .layout.json will do the job too ?! But I still find its schema > > confusing :-/ > > > > Martin Grigorov > > Wicket Training and Consulting > > https://twitter.com/mtgrigorov > > >
