1 /*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18
19 package org.apache.commons.betwixt.schema;
20
21 import org.apache.commons.betwixt.schema.strategy.SchemaTypeNamingStrategy;
22 import org.apache.commons.betwixt.schema.strategy.impl.QualifiedPropertyTypeSchemaNamingStrategy;
23
24 /**
25 * Configuration for XMLBeanInfo to XML schema transcription.
26 * All settings are gathered into this one class for convenience.
27 *
28 * @author <a href='http://commons.apache.org/'>Apache Commons Team</a>
29 * @version $Revision: 561314 $
30 */
31 public class TranscriptionConfiguration {
32
33 private DataTypeMapper dataTypeMapper = new DefaultDataTypeMapper();
34
35 private SchemaTypeNamingStrategy schemaTypeNamingStrategy = new QualifiedPropertyTypeSchemaNamingStrategy();
36
37 /**
38 * Gets the <code>DataTypeMapper</code> to be used during the transcription.
39 * @return DataTypeMapper, not null
40 */
41 public DataTypeMapper getDataTypeMapper() {
42 return dataTypeMapper;
43 }
44
45 /**
46 * Sets the <code>DataTypeMapper</code> to be used during the transcription/
47 * @param mapper DataTypeMapper, not null
48 */
49 public void setDataTypeMapper(DataTypeMapper mapper) {
50 dataTypeMapper = mapper;
51 }
52
53 /**
54 * Gets the stategy to be used for naming types.
55 * @return <code>SchemaTypeNamingStrategy</code>, not null
56 * @since 0.8
57 */
58 public SchemaTypeNamingStrategy getSchemaTypeNamingStrategy() {
59 return schemaTypeNamingStrategy;
60 }
61
62 /**
63 * Sets the strategy to be used for naming types.
64 * @param schemaTypeNamingStrategy <code>SchemaTypeNamingStrategy</code>, not null
65 * @since 0.8
66 */
67 public void setSchemaTypeNamingStrategy( SchemaTypeNamingStrategy schemaTypeNamingStrategy) {
68 this.schemaTypeNamingStrategy = schemaTypeNamingStrategy;
69 }
70
71
72
73 }