Package net.sf.jportlet.portlets.menu

Source Code of net.sf.jportlet.portlets.menu.MenuPortlet

/*
* Created on 12-May-2003
*/
package net.sf.jportlet.portlets.menu;

import java.io.IOException;
import java.io.InputStream;

import java.util.HashMap;
import java.util.Map;

import net.sf.jportlet.portlet.Portlet;
import net.sf.jportlet.portlet.PortletException;
import net.sf.jportlet.portlet.PortletLog;
import net.sf.jportlet.portlet.PortletRequest;
import net.sf.jportlet.portlet.PortletResponse;
import net.sf.jportlet.portlets.AbstractXslPortlet;


/**
* @author <a href="mailto:tchbansi@sourceforge.net">Herve Tchepannou</a>
*/
public class MenuPortlet
    extends AbstractXslPortlet
{
    //~ Static fields/initializers ---------------------------------------------

    public static final String XSL_ACTION = "action";
    public static final String XSL_CONTEXT_PATH = "contextPath";

    //~ Methods ----------------------------------------------------------------

    /**
     * @see net.sf.jportlet.portlets.AbstractXslPortlet#openXmlInputStream(net.sf.jportlet.portlet.PortletRequest)
     */
    protected InputStream openXmlInputStream( PortletRequest request )
        throws PortletException,
                   IOException
    {
        return findInputStream( "menu", request );
    }

    /**
     * @see net.sf.jportlet.portlets.AbstractXslPortlet#openXslInputStream(net.sf.jportlet.portlet.PortletRequest)
     */
    protected InputStream openXslInputStream( PortletRequest request )
        throws PortletException,
                   IOException
    {
        Portlet.Markup markup = request.getClient(  ).getMarkup(  );
        InputStream    in = findInputStream( "xsl." + markup, request );

        if ( in == null )
        {
            /* Default stream */
            PortletLog log = getLog(  );
            String     path = "net/sf/jportlet/portlets/menu/" + markup + ".xsl";
            if ( log.isDebugEnabled(  ) )
            {
                log.debug( "Using default XSL: " + path );
            }

            in = getClass(  ).getClassLoader(  ).getResourceAsStream( path );
            if ( in == null )
            {
                throw new PortletException( "Markup not supported: " + markup );
            }
        }

        return in;
    }

    /**
     * @see net.sf.jportlet.portlets.AbstractXslPortlet#getParameters()
     */
    public Map getXslParameters( PortletRequest  request,
                                 PortletResponse response )
    {
        HashMap params = new HashMap(  );
        params.put( XSL_ACTION, response.createURI( request.getMode(  ).toString(  ) ) );
        params.put( XSL_CONTEXT_PATH, request.getContextPath(  ) );

        return params;
    }
}
TOP

Related Classes of net.sf.jportlet.portlets.menu.MenuPortlet

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.