Package org.apache.jsp.WEB_002dINF.aggregation

Source Code of org.apache.jsp.WEB_002dINF.aggregation.TabNavigation_jsp

package org.apache.jsp.WEB_002dINF.aggregation;

import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import org.apache.pluto.portalImpl.core.PortalURL;
import org.apache.pluto.portalImpl.core.PortalEnvironment;
import org.apache.pluto.portalImpl.aggregation.navigation.Navigation;
import org.apache.pluto.portalImpl.aggregation.navigation.NavigationTreeBean;

public final class TabNavigation_jsp extends org.apache.jasper.runtime.HttpJspBase
    implements org.apache.jasper.runtime.JspSourceDependent {

  private static java.util.Vector _jspx_dependants;

  public java.util.List getDependants() {
    return _jspx_dependants;
  }

  public void _jspService(HttpServletRequest request, HttpServletResponse response)
        throws java.io.IOException, ServletException {

    JspFactory _jspxFactory = null;
    PageContext pageContext = null;
    ServletContext application = null;
    ServletConfig config = null;
    JspWriter out = null;
    Object page = this;
    JspWriter _jspx_out = null;
    PageContext _jspx_page_context = null;


    try {
      _jspxFactory = JspFactory.getDefaultFactory();
      response.setContentType("text/html");
      pageContext = _jspxFactory.getPageContext(this, request, response,
            null, false, 0, true);
      _jspx_page_context = pageContext;
      application = pageContext.getServletContext();
      config = pageContext.getServletConfig();
      out = pageContext.getOut();
      _jspx_out = out;

      out.write("\n\n\n\n\n\n");
      org.apache.pluto.portalImpl.aggregation.navigation.TabNavigation fragment = null;
      synchronized (request) {
        fragment = (org.apache.pluto.portalImpl.aggregation.navigation.TabNavigation) _jspx_page_context.getAttribute("fragment", PageContext.REQUEST_SCOPE);
        if (fragment == null){
          throw new java.lang.InstantiationException("bean fragment not found within scope");
        }
      }
      out.write("\n<table width=\"200px\"  border=\"0\" cellpadding=\"0\" cellspacing=\"0\"> \n  \t\t\t\t <tr><td><div class=\"Selection\"><table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n              <tr>\n\t\t\t\t\t\t\t  <td class=\"CollapsedLeft\"><img src=\"");
      out.print(request.getContextPath());
      out.write("/images/spacer.gif\" width=\"1\" height=\"1\"></td>\n\t\t\t\t\t\t\t\t<td class=\"Indent\"><img src=\"");
      out.print(request.getContextPath());
      out.write("/images/spacer.gif\" width=\"1\" height=\"1\"></td>\n\t\t\t\t\t\t\t  <td class=\"TopMiddle\"><img src=\"");
      out.print(request.getContextPath());
      out.write("/images/spacer.gif\" width=\"1\" height=\"1\"></td>\n                <td class=\"CollapsedRight\"><img src=\"");
      out.print(request.getContextPath());
      out.write("/images/spacer.gif\" width=\"1\" height=\"1\"></td> \n              </tr>\n\t\t\t\t\t\t</table></div></td></tr>\n");

    PortalURL url = PortalEnvironment.getPortalEnvironment(request).getRequestedPortalURL();
    NavigationTreeBean[] tree = fragment.getNavigationView(url);

    // Aaron's code -- to force the navigation tree to render fully expanded, and not offer links to non-leaf nodes
    //                 todo this is pretty bad and should be replaced by a subclass of TabNavigation
    //                 see http://svn.apache.org/repos/asf/portals/pluto/trunk/portal/src/java/org/apache/pluto/portalImpl/aggregation/navigation/
    java.util.List list = new java.util.ArrayList();
    java.util.Stack stack = new java.util.Stack();
    Navigation root = fragment.getRootNavigation();
    java.util.List childList = (java.util.List)root.getChildren();
    java.util.Map map = new java.util.HashMap();
    for(int i=childList.size()-1; i>=0; i--) {
        stack.push(childList.get(i));
        map.put(stack.peek(), new Integer(0));
    }
    while(!stack.isEmpty()) {
        Navigation nav = (Navigation) stack.pop();
        Integer depth = (Integer) map.get(nav);
        list.add(new NavigationTreeBean(nav, nav.getChildren().size() > 0 || url.isPartOfGlobalNavigation(nav.getLinkedFragment().getId()), depth.intValue()));
        childList = (java.util.List)nav.getChildren();
        for(int i=childList.size()-1; i>=0; i--) {
            stack.push(childList.get(i));
            map.put(stack.peek(), new Integer(depth.intValue()+1));
        }
    }
    tree = (NavigationTreeBean[]) list.toArray(new NavigationTreeBean[list.size()]);
    // End Aaron's Code

    for (int i=0; i<tree.length; i++) {

      out.write('\n');

            Navigation nav = tree[i].navigation;
            boolean partOfNav = tree[i].partOfGlobalNav;

            if (tree[i].depth>0)
            {

      out.write("\n\t\t\t\t\t\t\t\t<tr><td><div class=\"Subselection\"><table width=\"100%\" border=\"0\" cellpadding=\"1\" cellspacing=\"0\"> \n                <tr>\n                  <td class=\"Left\">&nbsp;</td> \n                  <td class=\"Indent\">&nbsp;</td> \n                  <td class=\"Middle\">\n");

              for (int k=0; k<tree[i].depth; k++)
              {

      out.write("\n  \t\t\t\t\t\t\t&nbsp;&nbsp;&nbsp;\n");

              }
                if (!partOfNav)
                {

      out.write("\n                    <a href=\"");
      out.print(new PortalURL(request, nav.getLinkedFragment()).toString());
      out.write('"');
      out.write('>');
      out.print(nav.getTitle());
      out.write("</a>\n");

                }
                else
                {

      out.write("                  ");
      out.print(nav.getTitle());
      out.write('\n');

                }

      out.write("\n                  </td> \n                  <td class=\"Right\">&nbsp;</td> \n                </tr> \n\t\t\t\t\t\t\t\t</table></div></td></tr>\n");

            }
            else
            {

      out.write("\t\t\t\t\t\t\n\t\t\n  \t\t\t\t\t\t<tr><td><div class=\"Selection\"><table width=\"100%\" border=\"0\" cellpadding=\"1\" cellspacing=\"0\">\n              <tr>\n\t\t\t\t\t\t\t  <td class=\"CollapsedLeft\">&nbsp;</td>\n\t\t\t\t\t\t\t\t<td class=\"Indent\">&nbsp;</td>\n\t\t\t\t\t\t\t  <td class=\"TopMiddle\">\n");

                if (!partOfNav)
                {

      out.write("                  <a href=\"");
      out.print(new PortalURL(request, nav.getLinkedFragment()).toString());
      out.write('"');
      out.write('>');
      out.print(nav.getTitle());
      out.write("</a>\n");

                }
                else
                {

      out.write("                  ");
      out.print(nav.getTitle());
      out.write('\n');

                }

      out.write("\n\n \t\t\t\t\t\t\t      \n\t \t\t\t\t\t\t  </td>\n                <td class=\"CollapsedRight\">&nbsp;</td> \n              </tr>\n\t\t\t\t\t\t</table></div></td></tr>\n");

            }
    }

      out.write("\n  \t\t\t\t <tr><td><div class=\"Selection\"><table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n              <tr>\n\t\t\t\t\t\t\t  <td class=\"CollapsedLeft\"><img src=\"");
      out.print(request.getContextPath());
      out.write("/images/spacer.gif\" width=\"1\" height=\"1\"></td>\n\t\t\t\t\t\t\t\t<td class=\"Indent\"><img src=\"");
      out.print(request.getContextPath());
      out.write("/images/spacer.gif\" width=\"1\" height=\"1\"></td>\n\t\t\t\t\t\t\t  <td class=\"TopMiddle\"><img src=\"");
      out.print(request.getContextPath());
      out.write("/images/spacer.gif\" width=\"1\" height=\"1\"></td>\n                <td class=\"CollapsedRight\"><img src=\"");
      out.print(request.getContextPath());
      out.write("/images/spacer.gif\" width=\"1\" height=\"1\"></td> \n              </tr>\n\t\t\t\t\t\t</table></div></td></tr>\n  </table>\n\n\n");
    } catch (Throwable t) {
      if (!(t instanceof SkipPageException)){
        out = _jspx_out;
        if (out != null && out.getBufferSize() != 0)
          out.clearBuffer();
        if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);
      }
    } finally {
      if (_jspxFactory != null) _jspxFactory.releasePageContext(_jspx_page_context);
    }
  }
}
TOP

Related Classes of org.apache.jsp.WEB_002dINF.aggregation.TabNavigation_jsp

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.