/** * Prints a VPF Library. * * @param request the HttpServletRequest. * @param response the HTTPServletResponse. * @param pathPrefix lines get printed with this prefix * @param cat the CoverageAttributeTable (Library) to print */ public void printLibrary( HttpServletRequest request, HttpServletResponse response, String pathPrefix, CoverageAttributeTable cat) throws ServletException, IOException { PrintWriter out = response.getWriter(); String libName = cat.getLibraryName(); String libpath = pathPrefix + "/" + libName; if (cat == null) { out.println("<H2>Library " + libName + " doesn't exist</H2>"); return; } out.println( "<H2>Library <A NAME=\"" + libName + "\"></A>" + buildURL(request, response, pathPrefix, libName, libName) + "</H2>"); String[] coverages = cat.getCoverageNames(); Arrays.sort(coverages); HtmlListElement list = new HtmlListElement(); list.addElement("Library uses " + (cat.isTiledData() ? "tiled" : "untiled") + " data"); HtmlListElement clist = new HtmlListElement( "Coverage names (from " + buildURL(request, response, libpath, "cat") + ")"); list.addElement(clist); for (int i = 0; i < coverages.length; i++) { clist.addElement( "<A HREF=\"#" + libName + "_" + coverages[i] + "\">" + coverages[i] + "</A>"); } list.addElement("Library Header Table: " + buildURL(request, response, libpath, "lht")); list.addElement("Geographic Reference Table: " + buildURL(request, response, libpath, "grt")); list.generate(out); for (int i = 0; i < coverages.length; i++) { printCoverage(request, response, libpath + "/" + coverages[i], libName, cat, coverages[i]); } }