Avatar billede oliverg Nybegynder
24. juni 2003 - 21:30 Der er 10 kommentarer og
1 løsning

java 3dchat

Jeg har snakket med mine venner om at lave en online 3dchat, en af dem programmere selv i java, og lavede en class fil til mig (Ses nederst på siden) Men han er desværre rejst til afrika, og kommer først hjem om et halvt år, jeg er ikke selv den store java-nørd, så jeg beder jer sende en mail til mig, hvor i har vedhæftet, en java fil, der kan bruge denne Class fil:

import java.applet.Applet;
import java.awt.Color;
import java.awt.Component;
import java.io.*;
import java.net.*;

public class Measure extends Applet
{

    long ONE_SECOND;
    String docBaseStr;
    String cgiRecord;
    String siteParam;
    String otherParam;
    String durationParam;
    String allocateIDParam;
    long startTime;
    boolean recordTime;
    boolean timeout;
    boolean fromSleepThread;
    boolean appleJvProblem;
    boolean initCalled;
    SleepThread sleepThread;

    public void init()
    {
        startTime = System.currentTimeMillis();
        recordTime = true;
        if(!initCalled)
        {
            URL url = getCodeBase();
            String s = new String(url.toString());
            cgiRecord = s + "cgi-bin/demorecord";
            System.out.println("----------- RedSheriff  Measurement -----------");
            String s1 = getParameter("ref");
            String s2;
            if(s1 == null)
            {
                s2 = "\tRP";
            } else
            {
                s2 = "\tRP" + s1;
            }
            String s3 = getParameter("url");
            String s4;
            if(s3 == null)
            {
                URL url1 = getDocumentBase();
                s4 = new String(url1.toString());
            } else
            {
                s4 = s3;
            }
            int i;
            if((i = s4.indexOf("http")) > 0)
            {
                docBaseStr = s4.substring(i);
            } else
            {
                docBaseStr = s4;
            }
            if(docBaseStr.length() > 256)
            {
                docBaseStr = docBaseStr.substring(0, 256);
            }
            String s5 = getParameter("cid");
            String s6 = "";
            if(s5 != null)
            {
                s6 = "|" + s5 + "|";
            }
            siteParam = "&site=" + s6 + URLEncoder.encode(docBaseStr);
            String s7 = "OV" + System.getProperty("os.name") + ":" + System.getProperty("os.version") + ":" + System.getProperty("os.arch");
            s4 = System.getProperty("java.vendor");
            if(s4.startsWith("Netscape"))
            {
                s4 = "NS";
            } else
            if(s4.startsWith("Microsoft"))
            {
                s4 = "MS";
            }
            String s8 = getParameter("sr");
            String s9;
            if(s8 == null)
            {
                s9 = "\tEX";
            } else
            {
                s9 = "\tEX" + s8;
            }
            String s10 = System.getProperty("java.version");
            if(s10.startsWith("1.0.") && s4.startsWith("Apple"))
            {
                appleJvProblem = true;
            }
            if(s4.startsWith("Apple") && s10.startsWith("1.1.") && !s10.startsWith("1.1.7") && !s10.startsWith("1.1.8") && !s10.startsWith("1.1.9"))
            {
                appleJvProblem = true;
            }
            if(appleJvProblem)
            {
                return;
            }
            String s11 = "\tJV" + s4 + ":" + s10;
            String s12 = "\tLI";
            otherParam = "&other=" + URLEncoder.encode(s7 + s11 + s12 + s2 + s9);
            String s13 = getParameter("allocateID");
            if(s13 != null)
            {
                try
                {
                    int j = Integer.parseInt(s13);
                    if(j != 1)
                    {
                        allocateIDParam = "&allocateID=0";
                    }
                }
                catch(NumberFormatException _ex) { }
            }
            String s14 = getParameter("background");
            if(s14 != null)
            {
                if(s14.startsWith("#"))
                {
                    s14 = s14.substring(1);
                }
                if(s14 != null)
                {
                    int k = Integer.parseInt(s14, 16);
                    setBackground(new Color(k));
                }
            }
            initCalled = true;
        }
    }

    public void start()
    {
        if(appleJvProblem)
        {
            return;
        }
        System.out.println("Privacy:  http://www.redsheriff.com/privacy.htm");
        if(recordTime)
        {
            recordTime = false;
        } else
        {
            startTime = System.currentTimeMillis();
        }
        timeout = false;
        sleepThread = new SleepThread(this, ONE_SECOND * 1800L);
        sleepThread.start();
    }

    public void wakeUp()
    {
        fromSleepThread = true;
        stop();
        timeout = true;
    }

    public void stop()
    {
        if(appleJvProblem)
        {
            return;
        }
        if(timeout)
        {
            return;
        }
        long l = System.currentTimeMillis();
        long l1 = l - startTime;
        l1 = (l1 + 500L) / 1000L;
        if(l1 > 1800L)
        {
            l1 = 1800L;
        } else
        if(l1 < 0L)
        {
            l1 = 0L;
        }
        if(!fromSleepThread && sleepThread != null)
        {
            sleepThread.stop();
            sleepThread = null;
        }
        fromSleepThread = false;
        try
        {
            URL url = new URL(cgiRecord);
            URLConnection urlconnection = url.openConnection();
            urlconnection.setDoOutput(true);
            urlconnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
            urlconnection.setUseCaches(false);
            DataOutputStream dataoutputstream = new DataOutputStream(urlconnection.getOutputStream());
            durationParam = "duration=" + String.valueOf(l1);
            dataoutputstream.writeBytes(durationParam + siteParam + otherParam + allocateIDParam);
            dataoutputstream.close();
            java.io.InputStream inputstream = urlconnection.getInputStream();
            DataInputStream datainputstream = new DataInputStream(inputstream);
            String s;
            while((s = datainputstream.readLine()) != null)
            {
                System.out.println(s);
            }
            datainputstream.close();
            return;
        }
        catch(Exception exception)
        {
            exception.printStackTrace();
        }
    }

    public Measure()
    {
        ONE_SECOND = 1000L;
        siteParam = "&site=error";
        otherParam = "&other=OV\tJV\tLI\tRP\tEX";
        durationParam = "duration=0";
        allocateIDParam = "&allocateID=1";
        recordTime = false;
        timeout = false;
        fromSleepThread = false;
        appleJvProblem = false;
        initCalled = false;
    }
}
Avatar billede arne_v Ekspert
24. juni 2003 - 21:33 #1
Den klasse skal ikke bruges af en anden klasse.

Det er en applet og den skal kun compiles så bør den kunne
køres i en browser.
Avatar billede arne_v Ekspert
24. juni 2003 - 21:33 #2
(jeg kan iøvrigt ikke se noget 3D !)
Avatar billede oliverg Nybegynder
24. juni 2003 - 21:35 #3
kan du sætte det op for mig jeg kan ikke nået java over hoved!!
Avatar billede arne_v Ekspert
24. juni 2003 - 22:45 #4
Der mangler en SleepThread klasse.
Avatar billede oliverg Nybegynder
25. juni 2003 - 09:03 #5
hvad er en SleepThread klasse?? kan du lave en til mig??
Avatar billede arne_v Ekspert
25. juni 2003 - 09:14 #6
Det er en klasse som bruges af klassen ovenfor.

Du har en Measure.java men har du ikke også fået en SleepThread.java ?
Avatar billede oliverg Nybegynder
25. juni 2003 - 09:18 #7
nej kun denne kode jeg ved ikke nået om java over hvored kan du lave det til mig??
Avatar billede arne_v Ekspert
25. juni 2003 - 18:38 #8
Nej - det tror jeg ikke at jeg kan.

Ovenstående kode virker meget som en lille del af en større helhed.
Avatar billede oliverg Nybegynder
25. juni 2003 - 21:25 #9
ok lukker!
Avatar billede zubmit Nybegynder
23. juli 2003 - 00:52 #10
Så vidt jeg kan se kommer det fra http://www.n.dk/ 's Jeg har set alle deres class filer igennem. Og det der er bare 1 af dem.
Avatar billede arne_v Ekspert
23. juli 2003 - 07:11 #11
Ulovligt hapset kode ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester