Minor HTML Gen improvments
[aaf/authz.git] / misc / xgen / src / main / java / org / onap / aaf / misc / xgen / html / HTML4Gen.java
1 /**\r
2  * ============LICENSE_START====================================================\r
3  * org.onap.aaf\r
4  * ===========================================================================\r
5  * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.\r
6  * ===========================================================================\r
7  * Licensed under the Apache License, Version 2.0 (the "License");\r
8  * you may not use this file except in compliance with the License.\r
9  * You may obtain a copy of the License at\r
10  * \r
11  *      http://www.apache.org/licenses/LICENSE-2.0\r
12  * \r
13  * Unless required by applicable law or agreed to in writing, software\r
14  * distributed under the License is distributed on an "AS IS" BASIS,\r
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16  * See the License for the specific language governing permissions and\r
17  * limitations under the License.\r
18  * ============LICENSE_END====================================================\r
19  *\r
20  */\r
21 \r
22 package org.onap.aaf.misc.xgen.html;\r
23 \r
24 import java.io.Writer;\r
25 \r
26 import org.onap.aaf.misc.xgen.Mark;\r
27 \r
28 public class HTML4Gen extends HTMLGen {\r
29     private final static String DOCTYPE = \r
30         /*\r
31         "<!DOCTYPE HTML PUBLIC " +\r
32         "\"-//W3C//DTD HTML 4.01 Transitional//EN\" " +\r
33         "\"http://www.w3.org/TR/html3/loose.dtd\">";\r
34         "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"" +\r
35         " \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">";\r
36         */\r
37         "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"" +\r
38         " \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">";\r
39 \r
40     public HTML4Gen(Writer w) {\r
41         super(w);\r
42     }\r
43 \r
44     @Override\r
45     public HTMLGen html(String ... attrib) {\r
46         forward.println(DOCTYPE);\r
47         return incr("html","xmlns=http://www.w3.org/1999/xhtml","xml:lang=en","lang=en");\r
48         \r
49     }\r
50 \r
51     @Override\r
52     public Mark head() {\r
53         Mark head = new Mark("head");\r
54         incr(head);\r
55         return head;\r
56     }\r
57 \r
58     @Override\r
59     public Mark body(String ... attrs) {\r
60         Mark body = new Mark("body");\r
61         incr(body,"body",attrs);\r
62         return body;\r
63     }\r
64     \r
65     @Override\r
66     public HTML4Gen charset(String charset) {\r
67         forward.append("<meta http-equiv=\"Content-type\" content=\"text.hml; charset=");\r
68         forward.append(charset);\r
69         forward.append("\">");\r
70         prettyln(forward);\r
71         return this;\r
72     }\r
73 \r
74     @Override\r
75     public Mark header(String ... attribs) {\r
76         String[] a = new String[attribs.length+1];\r
77         a[0]="header";\r
78         System.arraycopy(attribs, 0, a, 1, attribs.length);\r
79         return divID(a);\r
80     }\r
81 \r
82     @Override\r
83     public Mark footer(String ... attribs) {\r
84         String[] a = new String[attribs.length+1];\r
85         a[0]="footer";\r
86         System.arraycopy(attribs, 0, a, 1, attribs.length);\r
87         return divID(a);\r
88     }\r
89 \r
90     @Override\r
91     public Mark section(String ... attribs) {\r
92         String[] a = new String[attribs.length+1];\r
93         a[0]="section";\r
94         System.arraycopy(attribs, 0, a, 1, attribs.length);\r
95         return divID(a);\r
96     }\r
97 \r
98     @Override\r
99     public Mark article(String ... attribs) {\r
100         String[] a = new String[attribs.length+1];\r
101         a[0]="attrib";\r
102         System.arraycopy(attribs, 0, a, 1, attribs.length);\r
103         return divID(a);\r
104     }\r
105 \r
106     @Override\r
107     public Mark aside(String ... attribs) {\r
108         String[] a = new String[attribs.length+1];\r
109         a[0]="aside";\r
110         System.arraycopy(attribs, 0, a, 1, attribs.length);\r
111         return divID(a);\r
112     }\r
113 \r
114     @Override\r
115     public Mark nav(String ... attribs) {\r
116         String[] a = new String[attribs.length+1];\r
117         a[0]="nav";\r
118         System.arraycopy(attribs, 0, a, 1, attribs.length);\r
119         return divID(a);\r
120     }\r
121 \r
122 //    @Override\r
123 //    protected void importCSS(Imports imports) {\r
124 //        if (imports.css.size()==1) {\r
125 //            cssInline(imports.css.get(0));\r
126 //        } else {\r
127 //            text("<style type=\"text/css\">");\r
128 //            prettyln(forward);\r
129 //            forward.inc();\r
130 //            for (String str : imports.css) {\r
131 //                forward.print("@import url(\"");\r
132 //                forward.print(imports.themePath(null));\r
133 //                forward.print(str);\r
134 //                forward.print("\");");\r
135 //                prettyln(forward);\r
136 //            }\r
137 //            forward.dec();\r
138 //            forward.print("</style>");\r
139 //            prettyln(forward);\r
140 //        }\r
141 //    }\r
142     \r
143 }\r