KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > joshy > html > SpeedTest


1 package org.joshy.html;
2
3 import java.awt.image.BufferedImage JavaDoc;
4 import org.joshy.html.swing.DOMInspector;
5 import javax.swing.*;
6 import java.awt.*;
7 import java.awt.event.*;
8 import org.joshy.x;
9 import org.joshy.u;
10 import org.w3c.dom.*;
11 import java.io.File JavaDoc;
12 import org.joshy.html.box.Box;
13 import java.util.Date JavaDoc;
14 import org.joshy.html.css.DefaultCSSMarker;
15 import java.io.*;
16
17 public class SpeedTest {
18     public static void main(String JavaDoc[] args) throws Exception JavaDoc {
19
20         // load doc
21
Document doc = x.loadDocument("demos/header.xhtml");
22         Element html = (Element)doc.getDocumentElement();
23         Element body = x.child(html,"body");
24         
25         // create buffer
26
BufferedImage JavaDoc buff = new BufferedImage JavaDoc(500,500, BufferedImage.TYPE_4BYTE_ABGR);
27         
28         // get graphics
29
Graphics g = buff.getGraphics();
30         
31         
32         // create context
33
Context c = new Context();
34         Point origin = new Point(0,0);
35         Point last = new Point(0,0);
36         //c.canvas = this;
37
c.css = new CSSBank();
38         Object JavaDoc marker = new DefaultCSSMarker();
39         //u.p("getting: " + marker.getClass().getResource("default.css"));
40
InputStream stream = marker.getClass().getResourceAsStream("default.css");
41         c.css.parse(new InputStreamReader(stream));
42         c.css.parseInlineStyles(html);
43         c.graphics = g;
44         c.setExtents(new Rectangle(0,0,500,500));
45         //c.viewport = this.viewport;
46
c.cursor = last;
47         c.setMaxWidth(0);
48         
49         
50         // create layout
51
BodyLayout layout = new BodyLayout();
52         
53                
54         int total = 0;
55         for(int i=0; i<10; i++) {
56             u.sleep(100);
57             long start_time = new java.util.Date JavaDoc().getTime();
58             // execute layout
59
Box body_box = layout.layout(c,body);
60             long end_time = new java.util.Date JavaDoc().getTime();
61             u.p("ending count = " + (end_time-start_time) + " msec");
62             total += (end_time-start_time);
63         }
64         u.p("avg = " + (total/10));
65     }
66 }
67
Popular Tags