KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > teamkonzept > publishing > markups > TKMarkup


1 /*
2  * $Header: /cvsroot/webman-cms/source/webman/com/teamkonzept/publishing/markups/TKMarkup.java,v 1.8 2001/11/26 15:14:26 sebastian Exp $
3  *
4  */

5 package com.teamkonzept.publishing.markups;
6
7 import java.util.*;
8
9 import com.teamkonzept.lib.*;
10
11 public class TKMarkup {
12
13     public String JavaDoc name;
14     public int pos;
15     public boolean backsl;// wurde das Markup mit einem / abgeschlossen ?
16

17     public TKHashtable params;
18     
19     public TKMarkup (String JavaDoc name, TKHashtable params, int pos) {
20     
21         this(name,params,pos,false);
22     }
23     
24     public TKMarkup (String JavaDoc name, TKHashtable params, int pos, boolean backsl) {
25     
26         this.name = name.toUpperCase();
27         this.pos = pos;
28         this.params = params;
29         this.backsl = backsl;
30     }
31     
32     public TKMarkup (TKMarkup markup) {
33     
34         this.name = markup.name;
35         this.pos = markup.pos;
36         this.params = markup.params;
37     }
38     
39     public String JavaDoc toDisplay() {
40     
41         StringBuffer JavaDoc buf = new StringBuffer JavaDoc();
42         buf.append(name);
43         
44         Enumeration e = params == null ? null : params.elements();
45         while ((e != null) && (e.hasMoreElements())) {
46
47             TKMarkupParam param = (TKMarkupParam) e.nextElement();
48             if ((param != null) && (param.value() != null)) buf.append(' ').append(param);
49         }
50
51         return new String JavaDoc (buf);
52     }
53
54     public String JavaDoc toId() {
55     
56         return toDisplay();
57     }
58     
59     public String JavaDoc toString() {
60     
61         StringBuffer JavaDoc buf = new StringBuffer JavaDoc();
62         if (backsl)
63             buf.append('<').append(toId()).append("/>");
64         else
65             buf.append('<').append(toId()).append('>');
66         
67         return new String JavaDoc (buf);
68     }
69
70     public String JavaDoc expand() {
71     
72         StringBuffer JavaDoc buf = new StringBuffer JavaDoc();
73         
74         if (backsl)
75             buf.append('<').append(toDisplay()).append("/>");
76         else
77             buf.append('<').append(toDisplay()).append('>');
78         
79         return new String JavaDoc (buf);
80     }
81
82     public String JavaDoc convert2Tmpl () {
83
84         StringBuffer JavaDoc buf = new StringBuffer JavaDoc();
85         
86         buf.append('<').append(name);
87
88         boolean first = true;
89         Enumeration e = params == null ? null : params.elements();
90         while ((e != null) && (e.hasMoreElements())) {
91
92             TKMarkupParam param = (TKMarkupParam) e.nextElement();
93             if ((param == null) || (param.value() == null)) continue;
94
95             if (first) buf.append(':'); else buf.append(';');
96             buf.append(param.convert2Tmpl());
97             
98             first=false;
99         }
100
101         buf.append('>');
102         
103         return new String JavaDoc (buf);
104     }
105
106     public String JavaDoc convert2Xml () {
107
108         StringBuffer JavaDoc buf = new StringBuffer JavaDoc();
109         
110         buf.append('<').append(name);
111
112         boolean first = true;
113         Enumeration e = params == null ? null : params.elements();
114         while ((e != null) && (e.hasMoreElements())) {
115
116             TKMarkupParam param = (TKMarkupParam) e.nextElement();
117             if ((param == null) || (param.value() == null)) continue;
118
119             buf.append(' ').append(param.convert2Xml());
120             
121             first=false;
122         }
123
124         buf.append("/>");
125         
126         return new String JavaDoc (buf);
127     }
128 }
129
130
Popular Tags