KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > teamkonzept > lib > templates > TKIncludeTag


1 package com.teamkonzept.lib.templates;
2
3 import java.io.*;
4
5 import com.teamkonzept.lib.*;
6
7 /**
8  * Ein TKIncludeTag werden aus dem Template gefiltert
9  * @author $Author: alex $
10  * @version $Revision: 1.12 $
11  */

12 public class TKIncludeTag extends TKTag {
13     public String JavaDoc filename;
14     public TKTemplateSyntax filenameSyntax;
15     public static final int TAG_TYPE = TKListTag.TAG_TYPE+1;
16
17     /*******************************************************************
18     /**
19      * Konstruktor 1
20      * Ein Syntaxbaum fuer ein Template wird erzeugt.
21      *
22      * @param String def, Name des Tags
23      * @param boolean hasSubTags
24      */

25     public TKIncludeTag( TKTemplateSyntax parent, String JavaDoc def, boolean hasSubTags ) throws TKTemplateSyntaxException
26     {
27         super( parent );
28         filenameSyntax = ( hasSubTags ? parent.newChild( def, parent.getSource(), hasSubTags ) : null );
29         filename = ( hasSubTags ? null : def );
30     }
31
32     /*******************************************************************
33     /**
34      * Die apply-Methode von TKSyntax wird aufgerufen und das entsprechende
35      * Template wird included.
36      *
37      * @param TKTemplateData td
38      */

39     public String JavaDoc apply( TKTemplateData td ) throws TKTemplateSyntaxException
40     {
41         String JavaDoc theFile = (filenameSyntax != null ? filenameSyntax.apply( td ) : filename );
42         TKTemplateSyntax syntax = TKTemplateCache.getSyntax( theFile, parent );
43         return syntax.apply( td );
44     }
45
46     public void apply(TKTemplateData td, Writer writer)
47         throws TKTemplateSyntaxException, IOException
48     {
49         String JavaDoc theFile = (filenameSyntax != null ? filenameSyntax.apply( td ) : filename );
50         TKTemplateSyntax syntax = TKTemplateCache.getSyntax( theFile, parent );
51         syntax.apply( td, writer );
52     }
53
54     
55 }
56
57
Popular Tags