1f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project/* Copyright (C) 2003 Vladimir Roubtsov. All rights reserved.
2f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project *
3f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project * This program and the accompanying materials are made available under
4f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project * the terms of the Common Public License v1.0 which accompanies this distribution,
5f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project * and is available at http://www.eclipse.org/legal/cpl-v10.html
6f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project *
7f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project * $Id: Tag.java,v 1.1.1.1 2004/05/09 16:57:41 vlad_r Exp $
8f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project */
9f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Projectpackage com.vladium.emma.report.html.doc;
10f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
11f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Projectimport com.vladium.util.asserts.$assert;
12f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
13f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project// ----------------------------------------------------------------------------
14f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project/**
15f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project * @author Vlad Roubtsov, (C) 2003
16f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project */
17f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Projectpublic
18f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Projectabstract class Tag implements IContent
19f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project{
20f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    // public: ................................................................
21f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
22f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag HTML = new TagImpl ("HTML");
23f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag HEAD = new TagImpl ("HEAD");
24f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag BODY = new TagImpl ("BODY");
25f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag META = new TagImpl ("META");
26f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag STYLE = new TagImpl ("STYLE");
27f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
28f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag TITLE = new TagImpl ("TITLE");
29f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag H1 = new TagImpl ("H1");
30f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag H2 = new TagImpl ("H2");
31f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag H3 = new TagImpl ("H3");
32f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag H4 = new TagImpl ("H4");
33f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag H5 = new TagImpl ("H5");
34f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag H6 = new TagImpl ("H6");
35f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag LINK = new TagImpl ("LINK");
36f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
37f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag A = new TagImpl ("A");
38f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
39f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag TABLE = new TagImpl ("TABLE");
40f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag CAPTION = new TagImpl ("CAPTION");
41f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag TH = new TagImpl ("TH");
42f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag TR = new TagImpl ("TR");
43f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag TD = new TagImpl ("TD");
44f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
45f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag HR = new TagImpl ("HR");
46f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag P = new TagImpl ("P");
47f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag SPAN = new TagImpl ("SPAN");
48f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
49f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public static final Tag [] Hs = new Tag [] {H1, H2, H3, H4, H4, H6};
50f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
51f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    public abstract String getName ();
52f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
53f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    // protected: .............................................................
54f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
55f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    // package: ...............................................................
56f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
57f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
58f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    Tag () {}
59f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
60f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    // private: ...............................................................
61f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
62f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    private static final class TagImpl extends Tag
63f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    {
64f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        public void emit (final HTMLWriter out)
65f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        {
66f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project            out.write (m_name);
67f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        }
68f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
69f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        public String getName ()
70f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        {
71f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project            return m_name;
72f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        }
73f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
74f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        public String toString ()
75f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        {
76f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project            return m_name;
77f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        }
78f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
79f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        TagImpl (final String name)
80f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        {
81f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project            if ($assert.ENABLED) $assert.ASSERT (name != null, "name = null");
82f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
83f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project            m_name = name;
84f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        }
85f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
86f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
87f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project        private final String m_name;
88f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
89f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project    } // end of
90f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project
91f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project} // end of class
92f6fe897e173f4e4bda72a7dddb091b667066764aThe Android Open Source Project// ----------------------------------------------------------------------------