KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jresearch > gossip > tags > BuildTimeTag


1 /*
2  * Created on 09.05.2003
3  *
4  */

5 package org.jresearch.gossip.tags;
6
7 import java.text.DecimalFormat JavaDoc;
8 import java.util.Date JavaDoc;
9
10 import javax.servlet.jsp.JspException JavaDoc;
11 import javax.servlet.jsp.JspWriter JavaDoc;
12 import javax.servlet.jsp.tagext.TagSupport JavaDoc;
13
14 import org.jresearch.gossip.IConst;
15
16 /**
17  * DOCUMENT ME!
18  *
19  * @author Bel
20  */

21 public class BuildTimeTag extends TagSupport JavaDoc {
22     /**
23      * DOCUMENT ME!
24      *
25      * @return DOCUMENT ME!
26      *
27      * @throws JspException
28      * DOCUMENT ME!
29      */

30     public int doStartTag() throws JspException JavaDoc {
31         try {
32             if (pageContext.getRequest().getAttribute(
33                     IConst.REQUEST.START_TIME_KEY) == null) {
34                 pageContext.getRequest().setAttribute(
35                         IConst.REQUEST.START_TIME_KEY, new Date JavaDoc());
36             }
37         } catch (Exception JavaDoc ex) {
38             throw new JspException JavaDoc("error in BuildTimeTag tag:", ex);
39         }
40
41         return (EVAL_BODY_INCLUDE);
42     }
43
44     /**
45      * DOCUMENT ME!
46      *
47      * @return DOCUMENT ME!
48      *
49      * @throws JspException
50      * DOCUMENT ME!
51      */

52     public int doEndTag() throws JspException JavaDoc {
53         try {
54             JspWriter JavaDoc out = pageContext.getOut();
55
56             if (pageContext.getRequest().getAttribute(
57                     IConst.REQUEST.START_TIME_KEY) != null) {
58                 DecimalFormat JavaDoc df = new DecimalFormat JavaDoc();
59                 df.applyPattern("#0.00####");
60
61                 double buildtime = ((new Date JavaDoc()).getTime() - ((Date JavaDoc) pageContext
62                         .getRequest().getAttribute(
63                                 IConst.REQUEST.START_TIME_KEY)).getTime()) * 0.001;
64                 out.print(df.format(buildtime));
65             }
66         } catch (Exception JavaDoc ex) {
67             throw new JspException JavaDoc("error in BuildTimeTag tag:", ex);
68         }
69
70         return (EVAL_PAGE);
71     }
72 }
73
Popular Tags