} else if (dataSet.equalsIgnoreCase("/help") || dataSet.equalsIgnoreCase("/help/")) {
} else if ( dataSet.equalsIgnoreCase("/help")             || dataSet.equalsIgnoreCase("/help/")            || dataSet.equalsIgnoreCase("/" + requestSuffix) || requestSuffix.equalsIgnoreCase("help") ) {
    public void doGet(HttpServletRequest request,                      HttpServletResponse response)            throws IOException, ServletException {        // response.setHeader("Last-Modified", (new Date()).toString() );        boolean isDebug = false;        ReqState rs = null;        RequestDebug reqD = null;        try {            if (Debug.isSet("probeRequest"))                Util.probeRequest(System.out, request, getServletContext(), getServletConfig());            rs = getRequestState(request);            if (rs != null) {                String ds = rs.getDataset();                String suff = rs.getRequestSuffix();                isDebug = ((ds != null) && ds.equals("debug") && (suff != null) && suff.equals(""));            }            synchronized (syncLock) {                if (!isDebug) {                    long reqno = HitCounter++;                    if (track) {                        reqD = new RequestDebug(reqno, Thread.currentThread().toString());                        rs.setUserObject(reqD);                        if (prArr == null) prArr = new ArrayList(10000);                        prArr.add((int) reqno, rs);                    }                    if (Debug.isSet("showRequest")) {                        System.out.println("-------------------------------------------");                        System.out.println("Server: " + getServerName() + "   Request #" + reqno);                        System.out.println("Client: " + request.getRemoteHost());                        System.out.println(rs.toString());                        Log.println("Request dataset: '" + rs.getDataset() + "' suffix: '" + rs.getRequestSuffix() +                                "' CE: '" + rs.getConstraintExpression() + "'");                    }                }            } // synch            if (rs != null) {                String dataSet = rs.getDataset();                String requestSuffix = rs.getRequestSuffix();                if (dataSet == null) {                    doGetDIR(request, response, rs);                } else if (dataSet.equals("/")) {                    doGetDIR(request, response, rs);                } else if (dataSet.equals("")) {                    doGetDIR(request, response, rs);                } else if (dataSet.endsWith("/")) {                    doGetDIR(request, response, rs);                } else if (requestSuffix.equals("")) {                    doGetDIR(request, response, rs);                } else if (dataSet.equalsIgnoreCase("/version") || dataSet.equalsIgnoreCase("/version/")) {                    doGetVER(request, response, rs);                } else if (dataSet.equalsIgnoreCase("/help") || dataSet.equalsIgnoreCase("/help/")) {                    doGetHELP(request, response, rs);                } else if (dataSet.equalsIgnoreCase("/" + requestSuffix)) {                    doGetHELP(request, response, rs);                } else if (requestSuffix.equalsIgnoreCase("dds")) {                    doGetDDS(request, response, rs);                } else if (requestSuffix.equalsIgnoreCase("das")) {                    doGetDAS(request, response, rs);                } else if (requestSuffix.equalsIgnoreCase("ddx")) {                    //doGetDDX(request, response, rs);                    badURL(request, response, rs);                } else if (requestSuffix.equalsIgnoreCase("blob")) {                    //doGetBLOB(request, response, rs);                    badURL(request, response, rs);                } else if (requestSuffix.equalsIgnoreCase("dods")) {                    doGetDODS(request, response, rs);                } else if (requestSuffix.equalsIgnoreCase("asc") ||                        requestSuffix.equalsIgnoreCase("ascii")) {                    doGetASC(request, response, rs);                } else if (requestSuffix.equalsIgnoreCase("info")) {                    doGetINFO(request, response, rs);                } else if (requestSuffix.equalsIgnoreCase("html") || requestSuffix.equalsIgnoreCase("htm")) {                    doGetHTML(request, response, rs);                } else if (requestSuffix.equalsIgnoreCase("ver") || requestSuffix.equalsIgnoreCase("version")) {                    doGetVER(request, response, rs);                } else if (requestSuffix.equalsIgnoreCase("help")) {                    doGetHELP(request, response, rs);                }                // JC added                //else if (dataSet.equalsIgnoreCase("catalog") && requestSuffix.equalsIgnoreCase("xml")) {                else if (dataSet.endsWith("catalog") && requestSuffix.equalsIgnoreCase("xml")) {                    doGetCatalog(request, response, rs);                } else if (dataSet.equalsIgnoreCase("status")) {                    doGetStatus(request, response, rs);                } else if (dataSet.equalsIgnoreCase("systemproperties")) {                    doGetSystemProps(request, response, rs);                } else if (isDebug) {                    doDebug(request, response, rs);                } else if (requestSuffix.equals("")) {                    badURL(request, response, rs);                } else {                    badURL(request, response, rs);                }            } else {                badURL(request, response, rs);            }            if (reqD != null) reqD.done = true;        } catch (Throwable e) {            Util.anyExceptionHandler(e, response, rs);        }    }