Introduction

Business

Development

Core

Entity Definitions

The definitions in this module have id discriminators in the range 10-20.

asciidoctor diagram NavigationBarWidgetEntityDefinition

Via the respective getter-setter pairs, the following information can be retrieved/stored in the database:

Property Description

wrapAfter

stores the amount of navigation nodes after which the navigation bar must be wrapped

links

stores a list of links for the navigation bar

navigationNode

stores the navigation bar for the widget

asciidoctor diagram NavigationNodeEntityDefinition

Via the respective getter-setter pairs, the following information can be retrieved/stored in the database:

Property Description

title

stores the title of the node

links

stores a list of LinkWidgetEntityDefinition -s for the node

paragraphs

stores a list of ParagraphWidgetEntityDefinition -s for the node.

children

stores a list of NavigationNodeEntityDefinition -s for the node

Spring Data JPA Repositories

NavigationBarWidgetRepository

The NavigationBarWidgetRepository extends the ActivatableRepository and the BaseCatalogableEntityRepository:

asciidoctor diagram NavigationBarWidgetRepository

This is the corresponding Spring Data JPA repository for the NavigationBarWidgetEntityDefinition.

NavigationNodeRepository

The NavigationNodeRepository extends the BaseCatalogableEntityRepository:

asciidoctor diagram NavigationNodeRepository

Facade

MapperFactoryConfigurers

NavigationBarWidgetMapperFactoryConfigurer

The NavigationBarWidgetMapperFactoryConfigurer implements the MapperFactoryConfigurer, converting the NavigationBarWidgetEntityDefinition to NavigationBarWidgetDtoDefinition:

asciidoctor diagram NavigationBarWidgetMapperFactoryConfigurer

The conversion is customized.

NavigationNodeMapperFactoryConfigurer

The NavigationNodeMapperFactoryConfigurer implements the MapperFactoryConfigurer, converting the NavigationNodeEntityDefinition to NavigationNodeDto:

asciidoctor diagram NavigationNodeMapperFactoryConfigurer

The conversion is customized.

Dto definitions

NavigationBarWidgetDtoDefinition

The NavigationBarWidgetDtoDefinition extends the WidgetDtoDefinition, going further to the AbstractEntityDtoDefinition:

asciidoctor diagram NavigationBarWidgetDtoDefinition

This is the corresponding Dto object for the NavigationBarWidgetEntityDefinition.

NavigationNodeDto

The NavigationNodeDto is the corresponding Dto object for the NavigationNodeEntityDefinition.

Integration

The integration with the Nemesis platform is pretty straight-forward - just need to add the widget in your classpath:

<dependency>
    <groupId>io.nemesis.platform.module.widget</groupId>
    <artifactId>nemesis-widget-navigation</artifactId>
</dependency>