KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > cocoon > forms > datatype > convertor > Convertor


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.forms.datatype.convertor;
17
18 import org.xml.sax.SAXException JavaDoc;
19 import org.xml.sax.ContentHandler JavaDoc;
20
21 import java.util.Locale JavaDoc;
22
23 /**
24  * The purpose of a Convertor is to convert between Object and String
25  * representations of the same thing. For example, convert
26  * {@link Long}s or {@link java.util.Date Date}s to strings, and vice
27  * versa. The behaviour of this conversion process can depend on the
28  * user's Locale.
29  *
30  * <p>If you need to do mass conversion of a lot of values, it may be
31  * beneficial to pass a {@link FormatCache} object to the convert methods.
32  * Some convertors need to build and configure parser or formatting objects,
33  * which can be expensive if it needs to be done repeatedly.
34  *
35  * @version $Id: Convertor.java 151179 2005-02-03 16:55:16Z tim $
36  */

37 public interface Convertor {
38     
39     /**
40      * Converts string representation into the object of convertor's type.
41      *
42      * @param formatCache can be null if not needed
43      */

44     ConversionResult convertFromString(String JavaDoc value, Locale JavaDoc locale, FormatCache formatCache);
45
46     String JavaDoc convertToString(Object JavaDoc value, Locale JavaDoc locale, FormatCache formatCache);
47
48     Class JavaDoc getTypeClass();
49
50     /**
51      * Generates a bit of information about this convertor (optional).
52      */

53     void generateSaxFragment(ContentHandler JavaDoc contentHandler, Locale JavaDoc locale) throws SAXException JavaDoc;
54
55     public interface FormatCache {
56         public Object JavaDoc get();
57         public void store(Object JavaDoc object);
58     }
59 }
60
Popular Tags