Skip to content

Commit d0ea037

Browse files
Merge branch 'georgantasp-issue-74'
# Conflicts: # src/main/java/org/mybatis/guice/mappers/MapperProvider.java # src/main/java/org/mybatis/guice/type/TypeHandlerProvider.java # src/test/java/org/mybatis/guice/GuiceTestRunner.java
2 parents 0ab77a8 + b37c3ca commit d0ea037

File tree

3 files changed

+43
-0
lines changed

3 files changed

+43
-0
lines changed

src/main/java/org/mybatis/guice/mappers/MapperProvider.java

+15
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717

1818
import org.apache.ibatis.session.SqlSessionManager;
1919

20+
import com.google.common.base.Objects;
21+
2022
import javax.inject.Inject;
2123
import javax.inject.Provider;
2224

@@ -43,4 +45,17 @@ public T get() {
4345
return this.sqlSessionManager.getMapper(mapperType);
4446
}
4547

48+
@Override
49+
public int hashCode() {
50+
return Objects.hashCode(this.mapperType);
51+
}
52+
53+
@Override
54+
public boolean equals(Object obj) {
55+
if(obj == null){
56+
return false;
57+
}
58+
MapperProvider other = (MapperProvider) obj;
59+
return Objects.equal(this.mapperType, other.mapperType);
60+
}
4661
}

src/main/java/org/mybatis/guice/type/TypeHandlerProvider.java

+16
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import org.apache.ibatis.type.TypeException;
2121
import org.apache.ibatis.type.TypeHandler;
2222

23+
import com.google.common.base.Objects;
2324
import com.google.inject.Inject;
2425
import com.google.inject.Injector;
2526
import com.google.inject.TypeLiteral;
@@ -70,4 +71,19 @@ public TH get() {
7071
}
7172
return instance;
7273
}
74+
75+
@Override
76+
public int hashCode() {
77+
return Objects.hashCode(this.typeHandlerTypeLiteral, this.handledType);
78+
}
79+
80+
@Override
81+
public boolean equals(Object obj) {
82+
if(obj == null){
83+
return false;
84+
}
85+
TypeHandlerProvider other = (TypeHandlerProvider) obj;
86+
return Objects.equal(this.typeHandlerTypeLiteral, other.typeHandlerTypeLiteral) &&
87+
Objects.equal(this.handledType, other.handledType);
88+
}
7389
}

src/test/java/org/mybatis/guice/GuiceTestRunner.java

+12
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,18 @@ protected void initialize() {
5454
defaultStatementTimeout(null);
5555
}
5656

57+
});
58+
modules.add(new MyBatisModule() {
59+
60+
@Override
61+
protected void initialize() {
62+
addMapperClass(ContactMapper.class);
63+
handleType(CustomType.class).with(CustomLongTypeHandler.class);
64+
handleType(Address.class).with(AddressTypeHandler.class);
65+
addTypeHandlerClass(ContactIdTypeHandler.class);
66+
addTypeHandlerClass(ContactNameTypeHandler.class);
67+
}
68+
5769
});
5870

5971
return modules;

0 commit comments

Comments
 (0)