Skip to content

Commit be7650e

Browse files
committed
mybatis#101: Compatibility with java 11, and remove star imports
1 parent d6425e0 commit be7650e

File tree

7 files changed

+98
-26
lines changed

7 files changed

+98
-26
lines changed

src/main/java/org/apache/ibatis/executor/resultset/DefaultResultSetHandler.java

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import java.text.MessageFormat;
2525
import java.util.ArrayList;
2626
import java.util.Arrays;
27+
import java.util.Collection;
2728
import java.util.HashMap;
2829
import java.util.HashSet;
2930
import java.util.List;
@@ -673,9 +674,9 @@ private Object createResultObject(ResultSetWrapper rsw, ResultMap resultMap, Res
673674
}
674675

675676
// (issue #101)
676-
if (resultMap.hasResultMapsUsingConstructorCollection()
677-
&& resultObject instanceof PendingConstructorCreation pcc) {
678-
linkNestedPendingCreations(rsw, resultMap, columnPrefix, parentRowKey, pcc, resultObject, constructorArgs);
677+
if (resultMap.hasResultMapsUsingConstructorCollection() && resultObject instanceof PendingConstructorCreation) {
678+
linkNestedPendingCreations(rsw, resultMap, columnPrefix, parentRowKey,
679+
(PendingConstructorCreation) resultObject, constructorArgs);
679680
}
680681
}
681682

@@ -1098,25 +1099,25 @@ private void handleRowValuesForNestedResultMap(ResultSetWrapper rsw, ResultMap r
10981099
// NESTED RESULT MAP (PENDING CONSTRUCTOR CREATIONS)
10991100
//
11001101
private void linkNestedPendingCreations(ResultSetWrapper rsw, ResultMap resultMap, String columnPrefix,
1101-
CacheKey parentRowKey, PendingConstructorCreation pendingCreation, Object resultObject,
1102-
List<Object> constructorArgs) throws SQLException {
1102+
CacheKey parentRowKey, PendingConstructorCreation pendingCreation, List<Object> constructorArgs)
1103+
throws SQLException {
11031104
final CacheKey rowKey = createRowKey(resultMap, rsw, columnPrefix);
11041105
final CacheKey combinedKey = combineKeys(rowKey, parentRowKey);
11051106

11061107
if (combinedKey != CacheKey.NULL_CACHE_KEY) {
1107-
nestedResultObjects.put(combinedKey, resultObject);
1108+
nestedResultObjects.put(combinedKey, pendingCreation);
11081109
}
11091110

11101111
final List<ResultMapping> constructorMappings = resultMap.getConstructorResultMappings();
11111112
for (int index = 0; index < constructorMappings.size(); index++) {
1112-
final var constructorMapping = constructorMappings.get(index);
1113-
final var nestedResultMapId = constructorMapping.getNestedResultMapId();
1113+
final ResultMapping constructorMapping = constructorMappings.get(index);
1114+
final String nestedResultMapId = constructorMapping.getNestedResultMapId();
11141115

11151116
if (nestedResultMapId == null) {
11161117
continue;
11171118
}
11181119

1119-
final var javaType = constructorMapping.getJavaType();
1120+
final Class<?> javaType = constructorMapping.getJavaType();
11201121
if (javaType == null || !objectFactory.isCollection(javaType)) {
11211122
continue;
11221123
}
@@ -1131,8 +1132,8 @@ private void linkNestedPendingCreations(ResultSetWrapper rsw, ResultMap resultMa
11311132
final boolean alreadyCreatedCollection = hasValue && objectFactory.isCollection(actualValue.getClass());
11321133

11331134
if (!isInnerCreation) {
1134-
final var value = pendingCreation.initializeCollectionForResultMapping(objectFactory, nestedResultMap,
1135-
constructorMapping, index);
1135+
final Collection<Object> value = pendingCreation.initializeCollectionForResultMapping(objectFactory,
1136+
nestedResultMap, constructorMapping, index);
11361137
if (!alreadyCreatedCollection) {
11371138
// override values with empty collection
11381139
constructorArgs.set(index, value);
@@ -1151,9 +1152,8 @@ private void linkNestedPendingCreations(ResultSetWrapper rsw, ResultMap resultMa
11511152
}
11521153
} else {
11531154
final PendingConstructorCreation innerCreation = (PendingConstructorCreation) actualValue;
1154-
1155-
final var value = pendingCreation.initializeCollectionForResultMapping(objectFactory, nestedResultMap,
1156-
constructorMapping, index);
1155+
final Collection<Object> value = pendingCreation.initializeCollectionForResultMapping(objectFactory,
1156+
nestedResultMap, constructorMapping, index);
11571157
// we will fill this collection when building the final object
11581158
constructorArgs.set(index, value);
11591159
// link the creation for building later

src/test/java/org/apache/ibatis/binding/BindingTest.java

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,25 @@
1919
import static com.googlecode.catchexception.apis.BDDCatchException.when;
2020
import static org.assertj.core.api.Assertions.assertThatThrownBy;
2121
import static org.assertj.core.api.BDDAssertions.then;
22-
import static org.junit.jupiter.api.Assertions.*;
22+
import static org.junit.jupiter.api.Assertions.assertEquals;
23+
import static org.junit.jupiter.api.Assertions.assertFalse;
24+
import static org.junit.jupiter.api.Assertions.assertNotEquals;
25+
import static org.junit.jupiter.api.Assertions.assertNotNull;
26+
import static org.junit.jupiter.api.Assertions.assertNotSame;
27+
import static org.junit.jupiter.api.Assertions.assertNull;
28+
import static org.junit.jupiter.api.Assertions.assertSame;
29+
import static org.junit.jupiter.api.Assertions.assertThrows;
30+
import static org.junit.jupiter.api.Assertions.assertTrue;
2331

2432
import java.io.IOException;
2533
import java.lang.reflect.Method;
26-
import java.util.*;
34+
import java.util.ArrayList;
35+
import java.util.Collection;
36+
import java.util.Collections;
37+
import java.util.HashMap;
38+
import java.util.Iterator;
39+
import java.util.List;
40+
import java.util.Map;
2741

2842
import javassist.util.proxy.Proxy;
2943

@@ -34,11 +48,19 @@
3448
import org.apache.ibatis.BaseDataTest;
3549
import org.apache.ibatis.binding.MapperProxy.MapperMethodInvoker;
3650
import org.apache.ibatis.cursor.Cursor;
37-
import org.apache.ibatis.domain.blog.*;
51+
import org.apache.ibatis.domain.blog.Author;
52+
import org.apache.ibatis.domain.blog.Blog;
53+
import org.apache.ibatis.domain.blog.DraftPost;
54+
import org.apache.ibatis.domain.blog.Post;
55+
import org.apache.ibatis.domain.blog.Section;
3856
import org.apache.ibatis.exceptions.PersistenceException;
3957
import org.apache.ibatis.executor.result.DefaultResultHandler;
4058
import org.apache.ibatis.mapping.Environment;
41-
import org.apache.ibatis.session.*;
59+
import org.apache.ibatis.session.Configuration;
60+
import org.apache.ibatis.session.RowBounds;
61+
import org.apache.ibatis.session.SqlSession;
62+
import org.apache.ibatis.session.SqlSessionFactory;
63+
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
4264
import org.apache.ibatis.transaction.TransactionFactory;
4365
import org.apache.ibatis.transaction.jdbc.JdbcTransactionFactory;
4466
import org.junit.jupiter.api.Assertions;

src/test/java/org/apache/ibatis/binding/BoundBlogMapper.java

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,20 @@
1818
import java.util.List;
1919
import java.util.Map;
2020

21-
import org.apache.ibatis.annotations.*;
21+
import org.apache.ibatis.annotations.Arg;
22+
import org.apache.ibatis.annotations.CacheNamespace;
23+
import org.apache.ibatis.annotations.Case;
24+
import org.apache.ibatis.annotations.ConstructorArgs;
25+
import org.apache.ibatis.annotations.Many;
26+
import org.apache.ibatis.annotations.MapKey;
27+
import org.apache.ibatis.annotations.One;
28+
import org.apache.ibatis.annotations.Param;
29+
import org.apache.ibatis.annotations.Result;
30+
import org.apache.ibatis.annotations.ResultType;
31+
import org.apache.ibatis.annotations.Results;
32+
import org.apache.ibatis.annotations.Select;
33+
import org.apache.ibatis.annotations.SelectProvider;
34+
import org.apache.ibatis.annotations.TypeDiscriminator;
2235
import org.apache.ibatis.cursor.Cursor;
2336
import org.apache.ibatis.domain.blog.Author;
2437
import org.apache.ibatis.domain.blog.Blog;

src/test/java/org/apache/ibatis/executor/resultset/DefaultResultSetHandlerTest.java

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,13 @@
2020
import static org.mockito.Mockito.mock;
2121
import static org.mockito.Mockito.when;
2222

23-
import java.sql.*;
23+
import java.sql.Connection;
24+
import java.sql.DatabaseMetaData;
25+
import java.sql.ResultSet;
26+
import java.sql.ResultSetMetaData;
27+
import java.sql.SQLException;
28+
import java.sql.Statement;
29+
import java.sql.Types;
2430
import java.util.ArrayList;
2531
import java.util.Collections;
2632
import java.util.HashMap;
@@ -30,7 +36,11 @@
3036
import org.apache.ibatis.executor.Executor;
3137
import org.apache.ibatis.executor.ExecutorException;
3238
import org.apache.ibatis.executor.parameter.ParameterHandler;
33-
import org.apache.ibatis.mapping.*;
39+
import org.apache.ibatis.mapping.BoundSql;
40+
import org.apache.ibatis.mapping.MappedStatement;
41+
import org.apache.ibatis.mapping.ResultMap;
42+
import org.apache.ibatis.mapping.ResultMapping;
43+
import org.apache.ibatis.mapping.SqlCommandType;
3444
import org.apache.ibatis.session.Configuration;
3545
import org.apache.ibatis.session.ResultHandler;
3646
import org.apache.ibatis.session.RowBounds;

src/test/java/org/apache/ibatis/immutable/ImmutableConstructorTest.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@
1515
*/
1616
package org.apache.ibatis.immutable;
1717

18-
import static org.assertj.core.api.Assertions.*;
18+
import static org.assertj.core.api.Assertions.assertThat;
19+
import static org.assertj.core.api.Assertions.assertThatThrownBy;
20+
import static org.assertj.core.api.Assertions.tuple;
1921
import static org.junit.jupiter.api.Assertions.assertEquals;
2022

2123
import java.util.List;

src/test/java/org/apache/ibatis/session/SqlSessionTest.java

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,32 @@
1515
*/
1616
package org.apache.ibatis.session;
1717

18-
import static org.junit.jupiter.api.Assertions.*;
18+
import static org.junit.jupiter.api.Assertions.assertEquals;
19+
import static org.junit.jupiter.api.Assertions.assertNotNull;
20+
import static org.junit.jupiter.api.Assertions.assertNull;
21+
import static org.junit.jupiter.api.Assertions.assertTrue;
22+
import static org.junit.jupiter.api.Assertions.fail;
1923

2024
import java.io.Reader;
21-
import java.util.*;
25+
import java.util.ArrayList;
26+
import java.util.Collection;
27+
import java.util.HashMap;
28+
import java.util.LinkedHashMap;
29+
import java.util.List;
30+
import java.util.Map;
2231

2332
import javassist.util.proxy.Proxy;
2433

2534
import org.apache.ibatis.BaseDataTest;
2635
import org.apache.ibatis.binding.BindingException;
2736
import org.apache.ibatis.cache.impl.PerpetualCache;
28-
import org.apache.ibatis.domain.blog.*;
37+
import org.apache.ibatis.domain.blog.Author;
38+
import org.apache.ibatis.domain.blog.Blog;
39+
import org.apache.ibatis.domain.blog.Comment;
40+
import org.apache.ibatis.domain.blog.DraftPost;
41+
import org.apache.ibatis.domain.blog.Post;
42+
import org.apache.ibatis.domain.blog.Section;
43+
import org.apache.ibatis.domain.blog.Tag;
2944
import org.apache.ibatis.domain.blog.immutable.ImmutableAuthor;
3045
import org.apache.ibatis.domain.blog.mappers.AuthorMapper;
3146
import org.apache.ibatis.domain.blog.mappers.AuthorMapperWithMultipleHandlers;

src/test/java/org/apache/ibatis/submitted/custom_collection_handling/CustomObjectFactory.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,17 @@
1717

1818
import java.lang.reflect.Array;
1919
import java.lang.reflect.Constructor;
20-
import java.util.*;
20+
import java.util.Collection;
21+
import java.util.Collections;
22+
import java.util.HashSet;
23+
import java.util.LinkedHashMap;
24+
import java.util.LinkedList;
25+
import java.util.List;
26+
import java.util.Map;
27+
import java.util.Optional;
28+
import java.util.Set;
29+
import java.util.SortedSet;
30+
import java.util.TreeSet;
2131
import java.util.stream.Collectors;
2232

2333
import org.apache.ibatis.reflection.ReflectionException;

0 commit comments

Comments
 (0)