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
> >
>

Reply via email to