01: /**
02: * Licensed to the Apache Software Foundation (ASF) under one
03: * or more contributor license agreements. See the NOTICE file
04: * distributed with this work for additional information
05: * regarding copyright ownership. The ASF licenses this file
06: * to you under the Apache License, Version 2.0 (the
07: * "License"); you may not use this file except in compliance
08: * with the License. You may obtain a copy of the License at
09: *
10: * http://www.apache.org/licenses/LICENSE-2.0
11: *
12: * Unless required by applicable law or agreed to in writing,
13: * software distributed under the License is distributed on an
14: * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15: * KIND, either express or implied. See the License for the
16: * specific language governing permissions and limitations
17: * under the License.
18: */package org.apache.cxf.aegis.type;
19:
20: import javax.xml.namespace.QName;
21:
22: /**
23: * @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a>
24: * @since Feb 18, 2004
25: */
26: public interface TypeMapping {
27: /**
28: * Checks whether or not type mapping between specified XML type and Java
29: * type is registered.
30: *
31: * @param javaType Class of the Java type
32: * @param xmlType Qualified name of the XML data type
33: * @return boolean; <code>true</code> if type mapping between the
34: * specified XML type and Java type is registered; otherwise
35: * <code>false</code>
36: */
37: boolean isRegistered(Class javaType);
38:
39: boolean isRegistered(QName xmlType);
40:
41: void register(Class javaType, QName xmlType, Type type);
42:
43: void register(Type type);
44:
45: void removeType(Type type);
46:
47: Type getType(Class javaType);
48:
49: Type getType(QName xmlType);
50:
51: QName getTypeQName(Class clazz);
52:
53: String getEncodingStyleURI();
54:
55: void setEncodingStyleURI(String encodingStyleURI);
56:
57: TypeCreator getTypeCreator();
58: }
|