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

com.alogient.cameleon.sdk.content.service.MenuService Maven / Gradle / Ivy

The newest version!
package com.alogient.cameleon.sdk.content.service;

import com.alogient.cameleon.sdk.content.util.exception.UnknownMenuException;
import com.alogient.cameleon.sdk.content.vo.CultureVo;
import com.alogient.cameleon.sdk.content.vo.menu.MenuVo;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

/**
 * User: J?r?me Mirc Date: 7-Aug-2009 Time: 9:39:58 AM This interface defines a
 * list of methods to manage a page
 */
@Transactional(propagation = Propagation.REQUIRES_NEW, readOnly = true)
public interface MenuService {

    /**
     * Get the root menu
     * 
     * @param cultureVo culture of the page
     * @param isLiveMode true if the user is viewing the site in live mode
     * @param isSecurityAware Should the security information be embeded into
     *            the menu
     * @return the root menu and the list of sub page
     * @throws com.alogient.cameleon.sdk.content.util.exception.UnknownMenuException
     *             if the menu doesn't exist
     */
    MenuVo getRootMenu(CultureVo cultureVo, Boolean isLiveMode,
            Boolean isSecurityAware) throws UnknownMenuException;

    /**
     * Get the menu
     * 
     * @param name name of the menu
     * @param cultureVo culture of the page
     * @param isLiveMode true if the user is viewing the site in live mode
     * @param isSecurityAware Should the security information be embeded into
     *            the menu
     * @return the root menu and the list of sub page
     * @throws com.alogient.cameleon.sdk.content.util.exception.UnknownMenuException
     *             if the menu doesn't exist
     */
    MenuVo getMenu(String name, CultureVo cultureVo, Boolean isLiveMode,
            Boolean isSecurityAware) throws UnknownMenuException;

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy