1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.mybatis.generator.codegen.mybatis3.javamapper.elements;
17
18 import java.util.Set;
19 import java.util.TreeSet;
20
21 import org.mybatis.generator.api.dom.java.FullyQualifiedJavaType;
22 import org.mybatis.generator.api.dom.java.Interface;
23 import org.mybatis.generator.api.dom.java.JavaVisibility;
24 import org.mybatis.generator.api.dom.java.Method;
25 import org.mybatis.generator.api.dom.java.Parameter;
26
27
28
29
30
31
32 public class UpdateByPrimaryKeySelectiveMethodGenerator extends
33 AbstractJavaMapperMethodGenerator {
34
35 public UpdateByPrimaryKeySelectiveMethodGenerator() {
36 super();
37 }
38
39 @Override
40 public void addInterfaceElements(Interface interfaze) {
41 Set<FullyQualifiedJavaType> importedTypes = new TreeSet<FullyQualifiedJavaType>();
42 FullyQualifiedJavaType parameterType;
43
44 if (introspectedTable.getRules().generateRecordWithBLOBsClass()) {
45 parameterType = new FullyQualifiedJavaType(introspectedTable
46 .getRecordWithBLOBsType());
47 } else {
48 parameterType = new FullyQualifiedJavaType(introspectedTable
49 .getBaseRecordType());
50 }
51
52 importedTypes.add(parameterType);
53
54 Method method = new Method();
55 method.setVisibility(JavaVisibility.PUBLIC);
56 method.setReturnType(FullyQualifiedJavaType.getIntInstance());
57 method.setName(introspectedTable
58 .getUpdateByPrimaryKeySelectiveStatementId());
59 method.addParameter(new Parameter(parameterType, "record"));
60
61 context.getCommentGenerator().addGeneralMethodComment(method,
62 introspectedTable);
63
64 addMapperAnnotations(interfaze, method);
65
66 if (context.getPlugins()
67 .clientUpdateByPrimaryKeySelectiveMethodGenerated(method,
68 interfaze, introspectedTable)) {
69 interfaze.addImportedTypes(importedTypes);
70 interfaze.addMethod(method);
71 }
72 }
73
74 public void addMapperAnnotations(Interface interfaze, Method method) {
75 }
76 }