View Javadoc
1   /**
2    *    Copyright 2006-2016 the original author or authors.
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.mybatis.generator.codegen.mybatis3;
17  
18  import java.util.List;
19  
20  import org.mybatis.generator.api.ProgressCallback;
21  import org.mybatis.generator.codegen.AbstractJavaClientGenerator;
22  import org.mybatis.generator.codegen.AbstractJavaGenerator;
23  import org.mybatis.generator.codegen.mybatis3.javamapper.SimpleAnnotatedClientGenerator;
24  import org.mybatis.generator.codegen.mybatis3.javamapper.SimpleJavaClientGenerator;
25  import org.mybatis.generator.codegen.mybatis3.model.SimpleModelGenerator;
26  import org.mybatis.generator.codegen.mybatis3.xmlmapper.SimpleXMLMapperGenerator;
27  import org.mybatis.generator.internal.ObjectFactory;
28  
29  /**
30   * 
31   * @author Jeff Butler
32   * 
33   */
34  public class IntrospectedTableMyBatis3SimpleImpl extends IntrospectedTableMyBatis3Impl {
35      public IntrospectedTableMyBatis3SimpleImpl() {
36          super();
37      }
38  
39      @Override
40      protected void calculateXmlMapperGenerator(AbstractJavaClientGenerator javaClientGenerator, 
41              List<String> warnings,
42              ProgressCallback progressCallback) {
43          if (javaClientGenerator == null) {
44              if (context.getSqlMapGeneratorConfiguration() != null) {
45                  xmlMapperGenerator = new SimpleXMLMapperGenerator();
46              }
47          } else {
48              xmlMapperGenerator = javaClientGenerator.getMatchedXMLGenerator();
49          }
50          
51          initializeAbstractGenerator(xmlMapperGenerator, warnings,
52                  progressCallback);
53      }
54  
55      @Override
56      protected AbstractJavaClientGenerator createJavaClientGenerator() {
57          if (context.getJavaClientGeneratorConfiguration() == null) {
58              return null;
59          }
60          
61          String type = context.getJavaClientGeneratorConfiguration()
62                  .getConfigurationType();
63  
64          AbstractJavaClientGenerator javaGenerator;
65          if ("XMLMAPPER".equalsIgnoreCase(type)) { //$NON-NLS-1$
66              javaGenerator = new SimpleJavaClientGenerator();
67          } else if ("ANNOTATEDMAPPER".equalsIgnoreCase(type)) { //$NON-NLS-1$
68              javaGenerator = new SimpleAnnotatedClientGenerator();
69          } else if ("MAPPER".equalsIgnoreCase(type)) { //$NON-NLS-1$
70              javaGenerator = new SimpleJavaClientGenerator();
71          } else {
72              javaGenerator = (AbstractJavaClientGenerator) ObjectFactory
73                      .createInternalObject(type);
74          }
75          
76          return javaGenerator;
77      }
78  
79      @Override
80      protected void calculateJavaModelGenerators(List<String> warnings,
81              ProgressCallback progressCallback) {
82  
83          AbstractJavaGenerator javaGenerator = new SimpleModelGenerator();
84          initializeAbstractGenerator(javaGenerator, warnings,
85                  progressCallback);
86          javaModelGenerators.add(javaGenerator);
87      }
88  }