⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cobrowse.java

📁 一个同步浏览的源码,还需要一些配置,需要的可以大家交流哟.
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
        String s4 = (String)cnf.get("proxyhost");
        String s5 = (String)cnf.get("proxyport");
        String s6 = getId();
        s = s.trim();
        if(s.length() == 0)
        {
            getControlMasterHtml(httpsession, httpservletrequest, httpservletresponse);
        } else
        {
            if(!s.toUpperCase().startsWith("HTTP"))
                s = "http://" + s;
            if(CoRequest.GetSite(s, s4, s5, null, s3, s6))
            {
                CoRequest.modifyFile(s3, s6, s, s1, httpservletresponse);
                Hashtable hashtable;
                if(s2 != null && (hashtable = (Hashtable)browsers.get(s2)) != null)
                    hashtable.put("rlnm", s6);
            }
            httpservletresponse.setContentType("text/html");
            PrintWriter printwriter = httpservletresponse.getWriter();
            printwriter.println("<html>");
            printwriter.println("<br> change location to " + s);
            printwriter.println("<script language=\"JavaScript\">");
            printwriter.println("parent.mnmstr.location.href=\"" + httpservletresponse.encodeURL(s1 + "?" + "a" + "=" + "pnst" + "&" + "id" + "=" + s6) + "\";");
            printwriter.println("</script>");
            printwriter.println("</html>");
            printwriter.flush();
            printwriter.close();
        }
    }

    private String prepareMsg(String s)
    {
        String s1 = s.trim();
        StringBuffer stringbuffer = new StringBuffer("");
        for(int i = 0; i < s1.length(); i++)
        {
            char c = s1.charAt(i);
            if(c == '<')
                stringbuffer.append("&lt;");
            else
            if(c == '>')
                stringbuffer.append("&gt;");
            else
            if(c == '"')
                stringbuffer.append("&quot;");
            else
            if(c == '&')
                stringbuffer.append("&amp;");
            else
                stringbuffer.append(c);
        }

        return stringbuffer.toString();
    }

    private boolean readConfig(String s, Hashtable hashtable)
    {
        boolean flag = true;
        try
        {
            BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(new FileInputStream(s)));
            String s1;
            while((s1 = bufferedreader.readLine()) != null) 
            {
                s1 = s1.trim();
                if(s1.length() > 0)
                {
                    int i = s1.indexOf("=");
                    if(i > 0 && i < s1.length() - 1 && s1.charAt(0) != '#' && !s1.startsWith("//"))
                        hashtable.put(s1.substring(0, i).trim(), s1.substring(i + 1).trim());
                }
            }
            bufferedreader.close();
            hashtable.put("initok", "yes");
        }
        catch(Exception _ex)
        {
            flag = false;
        }
        return flag;
    }

    private String readTextFile(String s)
    {
        StringBuffer stringbuffer = new StringBuffer("");
        try
        {
            BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(new FileInputStream(s)));
            String s1;
            while((s1 = bufferedreader.readLine()) != null) 
            {
                stringbuffer.append(s1);
                stringbuffer.append(NEWLINE);
            }
            bufferedreader.close();
        }
        catch(Exception _ex) { }
        return stringbuffer.toString();
    }

    private void setDefaults(Hashtable hashtable)
    {
        if(hashtable.get("title") == null)
            hashtable.put("title", "Coldjava's co-browsing");
        if(hashtable.get("bgcolor") == null)
            hashtable.put("bgcolor", "#FFFFFF");
        if(hashtable.get("bgcolor1") == null)
            hashtable.put("bgcolor1", "#FFFFF");
        if(hashtable.get("bgcolor2") == null)
            hashtable.put("bgcolor2", "#D3D3D3");
        if(hashtable.get("fgcolor") == null)
            hashtable.put("fgcolor", "#000000");
        if(hashtable.get("fgcolor1") == null)
            hashtable.put("fgcolor1", "#000000");
        if(hashtable.get("fgcolor2") == null)
            hashtable.put("fgcolor2", "#000000");
        if(hashtable.get("encoding") == null)
            hashtable.put("encoding", "ISO-8859-1");
        if(hashtable.get("dhtml") == null)
            hashtable.put("dhtml", "1");
        if(hashtable.get("chatwindow") == null)
            hashtable.put("chatwindow", "width=400,height=420,location=no,toolbar=no,menubar=no,scrollbars=yes,resize=yes");
    }

    private void showFile(String s, HttpServletResponse httpservletresponse)
        throws ServletException, IOException
    {
        String s1 = (String)cnf.get("dir");
        String s2 = readTextFile(s1 + "__" + s);
        String s3 = "";
        if(s2.endsWith(NEWLINE))
            s2 = s2.substring(0, s2.length() - NEWLINE.length());
        if(s2.length() == 0)
            s2 = "text/html";
        httpservletresponse.setContentType(s2);
        javax.servlet.ServletOutputStream servletoutputstream = httpservletresponse.getOutputStream();
        s3 = "_";
        if(!CoRequest.rewriteFile(s1 + s3 + s, servletoutputstream))
            servletoutputstream.write("<html><p>Could not open requested site</html>".getBytes());
        servletoutputstream.flush();
        servletoutputstream.close();
    }

    private void showSite(HttpSession httpsession, HttpServletRequest httpservletrequest, HttpServletResponse httpservletresponse)
        throws ServletException, IOException
    {
        String s = httpservletrequest.getQueryString();
        String s1 = getFromQuery(s, "id=");
        showFile(s1, httpservletresponse);
    }

    private void slaveScreen(HttpSession httpsession, HttpServletRequest httpservletrequest, HttpServletResponse httpservletresponse)
        throws ServletException, IOException
    {
        String s = httpservletrequest.getParameter("a");
        String s1 = httpservletrequest.getQueryString();
        if(s1 == null)
            s1 = "";
        if(s == null)
            s = getFromQuery(s1, "a=");
        if(s.length() == 0)
        {
            if(s1.length() == 0)
                getInitSlaveHtml(httpservletrequest, httpservletresponse);
            else
                errorMessage2(httpservletrequest, httpservletresponse);
        } else
        if(s.equals("mnslv"))
            getMainSlaveHtml(httpsession, httpservletrequest, httpservletresponse);
        else
        if(s.equals("sbslv"))
            getSubSlaveHtml(httpsession, httpservletrequest, httpservletresponse);
        else
        if(s.equals("cntrlslv"))
            getControlSlaveHtml(httpsession, httpservletrequest, httpservletresponse);
        else
        if(s.equals("mpt"))
            emptyScreen(httpservletresponse);
        else
        if(s.equals("cht"))
            getChatHtml(httpsession, httpservletrequest, httpservletresponse);
        else
        if(s.equals("ext"))
            closeSession(httpsession, httpservletrequest, httpservletresponse);
        else
        if(s.equals("mncht"))
            getMainChat(httpsession, httpservletrequest, httpservletresponse);
        else
        if(s.equals("nptcht"))
            getInputChat(httpsession, httpservletrequest, httpservletresponse);
        else
        if(s.equals("rfrshcht"))
            getRefreshChat(httpsession, httpservletrequest, httpservletresponse);
        else
        if(s.equals("cht1"))
            addChatMessage(httpsession, httpservletrequest, httpservletresponse);
        else
        if(s.equals("pnst"))
            showSite(httpsession, httpservletrequest, httpservletresponse);
        else
        if(s.equals("gtst"))
            getSite(httpsession, httpservletrequest, httpservletresponse);
        else
            getInitSlaveHtml(httpservletrequest, httpservletresponse);
    }

    private void startSession(HttpSession httpsession, HttpServletRequest httpservletrequest, HttpServletResponse httpservletresponse)
        throws ServletException, IOException
    {
        String s = httpservletrequest.getQueryString();
        String s1 = getFromQuery(s, "a=");
        if(s1.equals("nw"))
        {
            String s2;
            if((s2 = httpservletrequest.getParameter("ssnm")) == null)
                s2 = "";
            else
                s2 = s2.trim();
            if(s2.length() == 0)
                initScreen(httpservletrequest, httpservletresponse);
            else
            if(browsers.get(s2) != null)
            {
                initScreen(httpservletrequest, httpservletresponse);
            } else
            {
                httpsession.removeValue("rl");
                httpsession.putValue("rl", "m");
                httpsession.putValue("ssnm", s2);
                Hashtable hashtable1 = new Hashtable();
                hashtable1.put("id", httpsession.getId());
                hashtable1.put("ssnm", s2);
                hashtable1.put("clnts", new Hashtable());
                hashtable1.put("cnt", new Long(0L));
                hashtable1.put("cht", new Vector());
                hashtable1.put("lck", new Object());
                hashtable1.put("sbfrms", new Hashtable());
                browsers.put(s2, hashtable1);
                masterScreen(httpsession, httpservletrequest, httpservletresponse);
            }
        } else
        if(s1.equals("jn"))
        {
            String s3 = httpservletrequest.getParameter("ssnm");
            String s4 = httpservletrequest.getParameter("un");
            s4 = s4.trim();
            if(s4.length() == 0)
                s4 = "anonimous";
            Hashtable hashtable;
            if((hashtable = (Hashtable)browsers.get(s3)) == null)
            {
                initScreen(httpservletrequest, httpservletresponse);
            } else
            {
                hashtable = (Hashtable)hashtable.get("clnts");
                Hashtable hashtable2 = new Hashtable();
                hashtable2.put("un", s4);
                hashtable2.put("crtd", new Long(System.currentTimeMillis()));
                hashtable.put(httpsession.getId(), hashtable2);
                httpsession.removeValue("rl");
                httpsession.putValue("rl", "s");
                httpsession.putValue("ssnm", s3);
                httpsession.putValue("un", s4);
                slaveScreen(httpsession, httpservletrequest, httpservletresponse);
            }
        } else
        {
            initScreen(httpservletrequest, httpservletresponse);
        }
    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -