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
26
27
28
29
30
31 public class SelectAllMethodGenerator extends AbstractJavaMapperMethodGenerator {
32
33 public SelectAllMethodGenerator() {
34 super();
35 }
36
37 @Override
38 public void addInterfaceElements(Interface interfaze) {
39 Set<FullyQualifiedJavaType> importedTypes = new TreeSet<>();
40 importedTypes.add(FullyQualifiedJavaType.getNewListInstance());
41
42 Method method = new Method(introspectedTable.getSelectAllStatementId());
43 method.setVisibility(JavaVisibility.PUBLIC);
44 method.setAbstract(true);
45
46 FullyQualifiedJavaType returnType = FullyQualifiedJavaType.getNewListInstance();
47 FullyQualifiedJavaType listType;
48 listType = new FullyQualifiedJavaType(introspectedTable.getBaseRecordType());
49
50 importedTypes.add(listType);
51 returnType.addTypeArgument(listType);
52 method.setReturnType(returnType);
53
54 context.getCommentGenerator().addGeneralMethodComment(method, introspectedTable);
55
56 addMapperAnnotations(interfaze, method);
57
58 if (context.getPlugins().clientSelectAllMethodGenerated(method, interfaze, introspectedTable)) {
59 addExtraImports(interfaze);
60 interfaze.addImportedTypes(importedTypes);
61 interfaze.addMethod(method);
62 }
63 }
64
65 public void addMapperAnnotations(Interface interfaze, Method method) {
66
67 }
68
69 public void addExtraImports(Interface interfaze) {
70
71 }
72 }