Package org.apache.portals.bridges.frameworks

Source Code of org.apache.portals.bridges.frameworks.ForwardTag

/*
* Copyright 2000-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*      http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.portals.bridges.frameworks;

import java.io.IOException;

import javax.portlet.RenderRequest;
import javax.portlet.RenderResponse;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;

import org.apache.portals.bridges.frameworks.model.PortletApplicationModel;


/**
* ForwardTag
*
* @author <a href="mailto:taylor@apache.org">David Sean Taylor</a>
* @version $Id: ForwardTag.java 187900 2004-11-05 23:34:23 +0100 (Fri, 05 Nov 2004) taylor $
*/
public class ForwardTag extends TagSupport
{
    private String view = null;
    private String action = null;
    private String forward = null;
   
    public int doStartTag()
    {
        String content;
        try
        {
            RenderRequest request = (RenderRequest)
                pageContext.getRequest().getAttribute("javax.portlet.request");
            RenderResponse response = (RenderResponse)
                pageContext.getRequest().getAttribute("javax.portlet.response");
           
            if (request == null || response == null)
            {
                JspWriter out = pageContext.getOut();
                out.print("request response not found");
                return SKIP_BODY;
            }
            PortletApplicationModel model = (PortletApplicationModel)request.getAttribute(FrameworkConstants.MODEL_TOOL);
            if (model == null)
            {
                JspWriter out = pageContext.getOut();
                out.print("model not found");
                return SKIP_BODY;
            }
                                               
            Forwarder forwarder = new Forwarder(model, request, response);
            if (view != null)
            {
                content = forwarder.getView(view).toString();
            }
            else if (forward != null)
            {
                if (action != null)
                {
                    content = forwarder.getLink(forward, action).toString();
                }
                else
                {
                    content = forwarder.getLink(forward).toString();                   
                }
            }
            else
            {
                content = forwarder.toString();
            }
            JspWriter out = pageContext.getOut();
            out.print(content);           
        }
        catch (IOException e)
        {
            System.err.println("Error printing tag: " + e);
        }
        return SKIP_BODY;
    }
   
   
    /**
     * @return Returns the action.
     */
    public String getAction()
    {
        return action;
    }
    /**
     * @param action The action to set.
     */
    public void setAction(String action)
    {
        this.action = action;
    }
    /**
     * @return Returns the view.
     */
    public String getView()
    {
        return view;
    }
    /**
     * @param view The view to set.
     */
    public void setView(String view)
    {
        this.view = view;
    }
    /**
     * @return Returns the forward.
     */
    public String getForward()
    {
        return forward;
    }
    /**
     * @param forward The forward to set.
     */
    public void setForward(String forward)
    {
        this.forward = forward;
    }
}
TOP

Related Classes of org.apache.portals.bridges.frameworks.ForwardTag

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.