1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.mybatis.generator.codegen.mybatis3.javamapper;
17
18 import java.util.List;
19
20 import org.mybatis.generator.api.dom.java.CompilationUnit;
21 import org.mybatis.generator.api.dom.java.Interface;
22 import org.mybatis.generator.codegen.AbstractXmlGenerator;
23 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.AbstractJavaMapperMethodGenerator;
24 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedCountByExampleMethodGenerator;
25 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedDeleteByExampleMethodGenerator;
26 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedDeleteByPrimaryKeyMethodGenerator;
27 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedInsertMethodGenerator;
28 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedInsertSelectiveMethodGenerator;
29 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedSelectByExampleWithBLOBsMethodGenerator;
30 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedSelectByExampleWithoutBLOBsMethodGenerator;
31 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedSelectByPrimaryKeyMethodGenerator;
32 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedUpdateByExampleSelectiveMethodGenerator;
33 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedUpdateByExampleWithBLOBsMethodGenerator;
34 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedUpdateByExampleWithoutBLOBsMethodGenerator;
35 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedUpdateByPrimaryKeySelectiveMethodGenerator;
36 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedUpdateByPrimaryKeyWithBLOBsMethodGenerator;
37 import org.mybatis.generator.codegen.mybatis3.javamapper.elements.annotated.AnnotatedUpdateByPrimaryKeyWithoutBLOBsMethodGenerator;
38
39 public class AnnotatedClientGenerator extends JavaMapperGenerator {
40
41 public AnnotatedClientGenerator(String project) {
42 super(project, false);
43 }
44
45 @Override
46 protected void addCountByExampleMethod(Interface interfaze) {
47 if (introspectedTable.getRules().generateCountByExample()) {
48 AbstractJavaMapperMethodGenerator methodGenerator = new AnnotatedCountByExampleMethodGenerator();
49 initializeAndExecuteGenerator(methodGenerator, interfaze);
50 }
51 }
52
53 @Override
54 protected void addDeleteByExampleMethod(Interface interfaze) {
55 if (introspectedTable.getRules().generateDeleteByExample()) {
56 AbstractJavaMapperMethodGenerator methodGenerator = new AnnotatedDeleteByExampleMethodGenerator();
57 initializeAndExecuteGenerator(methodGenerator, interfaze);
58 }
59 }
60
61 @Override
62 protected void addDeleteByPrimaryKeyMethod(Interface interfaze) {
63 if (introspectedTable.getRules().generateDeleteByPrimaryKey()) {
64 AbstractJavaMapperMethodGenerator methodGenerator = new AnnotatedDeleteByPrimaryKeyMethodGenerator(false);
65 initializeAndExecuteGenerator(methodGenerator, interfaze);
66 }
67 }
68
69 @Override
70 protected void addInsertMethod(Interface interfaze) {
71 if (introspectedTable.getRules().generateInsert()) {
72 AbstractJavaMapperMethodGenerator methodGenerator = new AnnotatedInsertMethodGenerator(false);
73 initializeAndExecuteGenerator(methodGenerator, interfaze);
74 }
75 }
76
77 @Override
78 protected void addInsertSelectiveMethod(Interface interfaze) {
79 if (introspectedTable.getRules().generateInsertSelective()) {
80 AbstractJavaMapperMethodGenerator methodGenerator = new AnnotatedInsertSelectiveMethodGenerator();
81 initializeAndExecuteGenerator(methodGenerator, interfaze);
82 }
83 }
84
85 @Override
86 protected void addSelectByExampleWithBLOBsMethod(Interface interfaze) {
87 if (introspectedTable.getRules().generateSelectByExampleWithBLOBs()) {
88 AbstractJavaMapperMethodGenerator methodGenerator = new AnnotatedSelectByExampleWithBLOBsMethodGenerator();
89 initializeAndExecuteGenerator(methodGenerator, interfaze);
90 }
91 }
92
93 @Override
94 protected void addSelectByExampleWithoutBLOBsMethod(Interface interfaze) {
95 if (introspectedTable.getRules().generateSelectByExampleWithoutBLOBs()) {
96 AbstractJavaMapperMethodGenerator methodGenerator =
97 new AnnotatedSelectByExampleWithoutBLOBsMethodGenerator();
98 initializeAndExecuteGenerator(methodGenerator, interfaze);
99 }
100 }
101
102 @Override
103 protected void addSelectByPrimaryKeyMethod(Interface interfaze) {
104 if (introspectedTable.getRules().generateSelectByPrimaryKey()) {
105 AbstractJavaMapperMethodGenerator methodGenerator = new AnnotatedSelectByPrimaryKeyMethodGenerator(false,
106 false);
107 initializeAndExecuteGenerator(methodGenerator, interfaze);
108 }
109 }
110
111 @Override
112 protected void addUpdateByExampleSelectiveMethod(Interface interfaze) {
113 if (introspectedTable.getRules().generateUpdateByExampleSelective()) {
114 AbstractJavaMapperMethodGenerator methodGenerator = new AnnotatedUpdateByExampleSelectiveMethodGenerator();
115 initializeAndExecuteGenerator(methodGenerator, interfaze);
116 }
117 }
118
119 @Override
120 protected void addUpdateByExampleWithBLOBsMethod(Interface interfaze) {
121 if (introspectedTable.getRules().generateUpdateByExampleWithBLOBs()) {
122 AbstractJavaMapperMethodGenerator methodGenerator = new AnnotatedUpdateByExampleWithBLOBsMethodGenerator();
123 initializeAndExecuteGenerator(methodGenerator, interfaze);
124 }
125 }
126
127 @Override
128 protected void addUpdateByExampleWithoutBLOBsMethod(Interface interfaze) {
129 if (introspectedTable.getRules().generateUpdateByExampleWithoutBLOBs()) {
130 AbstractJavaMapperMethodGenerator methodGenerator =
131 new AnnotatedUpdateByExampleWithoutBLOBsMethodGenerator();
132 initializeAndExecuteGenerator(methodGenerator, interfaze);
133 }
134 }
135
136 @Override
137 protected void addUpdateByPrimaryKeySelectiveMethod(Interface interfaze) {
138 if (introspectedTable.getRules().generateUpdateByPrimaryKeySelective()) {
139 AbstractJavaMapperMethodGenerator methodGenerator =
140 new AnnotatedUpdateByPrimaryKeySelectiveMethodGenerator();
141 initializeAndExecuteGenerator(methodGenerator, interfaze);
142 }
143 }
144
145 @Override
146 protected void addUpdateByPrimaryKeyWithBLOBsMethod(Interface interfaze) {
147 if (introspectedTable.getRules().generateUpdateByPrimaryKeyWithBLOBs()) {
148 AbstractJavaMapperMethodGenerator methodGenerator =
149 new AnnotatedUpdateByPrimaryKeyWithBLOBsMethodGenerator();
150 initializeAndExecuteGenerator(methodGenerator, interfaze);
151 }
152 }
153
154 @Override
155 protected void addUpdateByPrimaryKeyWithoutBLOBsMethod(Interface interfaze) {
156 if (introspectedTable.getRules().generateUpdateByPrimaryKeyWithoutBLOBs()) {
157 AbstractJavaMapperMethodGenerator methodGenerator =
158 new AnnotatedUpdateByPrimaryKeyWithoutBLOBsMethodGenerator(false);
159 initializeAndExecuteGenerator(methodGenerator, interfaze);
160 }
161 }
162
163 @Override
164 public List<CompilationUnit> getExtraCompilationUnits() {
165 SqlProviderGenerator sqlProviderGenerator = new SqlProviderGenerator(getProject());
166 sqlProviderGenerator.setContext(context);
167 sqlProviderGenerator.setIntrospectedTable(introspectedTable);
168 sqlProviderGenerator.setProgressCallback(progressCallback);
169 sqlProviderGenerator.setWarnings(warnings);
170 return sqlProviderGenerator.getCompilationUnits();
171 }
172
173 @Override
174 public AbstractXmlGenerator getMatchedXMLGenerator() {
175
176 return null;
177 }
178 }