All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.incode.example.settings.dom.ApplicationSettingMenu Maven / Gradle / Ivy

package org.incode.example.settings.dom;

import org.apache.isis.applib.annotation.DomainService;
import org.apache.isis.applib.annotation.DomainServiceLayout;
import org.apache.isis.applib.annotation.NatureOfService;

import org.incode.example.settings.dom.jdo.ApplicationSettingsServiceJdo;

/**
 * An implementation of {@link ApplicationSettingsService} that persists settings
 * as entities into a JDO-backed database.
 *
 * 

* This service is automatically registered and provides UI-visible actions. If necessary these can be hidden * either using security or by writing a subscriber to veto their visibility: *

*
 * @DomainService(nature = NatureOfService.DOMAIN)
 * public class HideIsisModuleSettingsModuleMenus {
 *
 *   @Programmatic @PostConstruct
 *   public void postConstruct() { eventBusService.register(this); }
 *   @Programmatic @PostConstruct
 *   public void preDestroy() { eventBusService.unregister(this); }
 *
 *   @Programmatic @Subscribe
 *   public void on(final SettingsModule.ActionDomainEvent event) {
 *     event.hide();
 *   }
 *
 *   @Inject
 *   private EventBusService eventBusService;
 * }
 * 
*/ @DomainService( nature = NatureOfService.VIEW_MENU_ONLY ) @DomainServiceLayout( named = "Settings", menuOrder = "400.1", menuBar = DomainServiceLayout.MenuBar.SECONDARY ) public class ApplicationSettingMenu extends ApplicationSettingsServiceJdo implements ApplicationSettingsServiceRW { }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy