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 }