KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > cocoon > taglib > string > StringTagSupport


1 /*
2  * Copyright 1999-2004 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16 package org.apache.cocoon.taglib.string;
17
18 import org.xml.sax.SAXException JavaDoc;
19
20 /**
21  * @author <a HREF="mailto:volker.schmitt@basf-it-services.com">Volker Schmitt</a>
22  * @version CVS $Id: StringTagSupport.java 30932 2004-07-29 17:35:38Z vgritsenko $
23  */

24 public abstract class StringTagSupport extends TextRecordingTag {
25     /**
26      * Perform an operation on the passed in String.
27      *
28      * @param str String to be manipulated
29      *
30      * @return String result of operation upon passed in String
31      */

32     abstract protected String JavaDoc changeString(String JavaDoc str);
33
34     /*
35      * @see Tag#doEndTag(String, String, String)
36      */

37     public int doEndTag(String JavaDoc namespaceURI, String JavaDoc localName, String JavaDoc qName) throws SAXException JavaDoc {
38         String JavaDoc text = changeString(getText());
39
40         if (var != null) {
41             setVariable(var, text);
42         } else {
43             char[] charArray = text.toCharArray();
44             this.xmlConsumer.characters(charArray, 0, charArray.length);
45         }
46
47         return EVAL_PAGE;
48     }
49 }
50
Popular Tags