Skip to content

Commit 2dcfc4e

Browse files
authored
Merge pull request #3 from mservicetech/develop
Develop
2 parents 85e3ca5 + da4c143 commit 2dcfc4e

16 files changed

+93
-52
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<modelVersion>4.0.0</modelVersion>
66

77
<groupId>com.mservicetech.client.mapping</groupId>
8-
<artifactId>client-json-value</artifactId>
8+
<artifactId>client-json-mapping</artifactId>
99
<version>1.00</version>
1010

1111
<distributionManagement>

src/main/java/com/mservicetech/client/mapping/AnnotationBaseMapperImpl.java

Lines changed: 14 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,16 @@
11
package com.mservicetech.client.mapping;
22

33
import com.google.gson.*;
4-
import com.mservicetech.client.mapping.adapter.LocalDateAdapter;
5-
import com.mservicetech.client.mapping.adapter.LocalDateTimeAdapter;
6-
import org.yaml.snakeyaml.Yaml;
4+
import com.mservicetech.client.mapping.annotation.MappingCollection;
5+
import com.mservicetech.client.mapping.annotation.MappingElement;
6+
import com.mservicetech.client.mapping.annotation.MappingObject;
7+
8+
79

8-
import java.io.File;
9-
import java.io.FileInputStream;
10-
import java.io.IOException;
11-
import java.io.InputStream;
12-
import java.lang.reflect.Array;
1310
import java.lang.reflect.Field;
1411
import java.lang.reflect.ParameterizedType;
15-
import java.lang.reflect.Type;
16-
import java.nio.file.Files;
17-
import java.nio.file.Path;
18-
import java.nio.file.Paths;
19-
import java.time.LocalDate;
20-
import java.time.LocalDateTime;
21-
import java.util.ArrayList;
22-
import java.util.HashMap;
23-
import java.util.List;
12+
2413
import java.util.Map;
25-
import java.util.stream.Collectors;
26-
import java.util.stream.Stream;
2714

2815

2916
public class AnnotationBaseMapperImpl extends BaseMapperImpl implements ClientJsonMapper {
@@ -53,9 +40,9 @@ protected <T> T mapResult(final JsonObject root, final Class<T> clazz){
5340
MappingElement mappingElement;
5441
MappingObject mappingObject;
5542
MappingCollection mappingCollection;
56-
String path = null;
43+
String path ;
5744
CustomConverter customConverter;
58-
Class<?> instantation;
45+
Class<?> instance;
5946
// Object value;
6047
for (Field field : clazz.getDeclaredFields()) {
6148
field.setAccessible(true);
@@ -78,8 +65,8 @@ protected <T> T mapResult(final JsonObject root, final Class<T> clazz){
7865
}
7966
}
8067
if (!mappingElement.customConverter().isEmpty()) {
81-
instantation = Class.forName(mappingElement.customConverter());
82-
customConverter = (CustomConverter) instantation.newInstance();
68+
instance = Class.forName(mappingElement.customConverter());
69+
customConverter = (CustomConverter) instance.newInstance();
8370

8471
value = customConverter.convert(root, field, path, mappingElement.dependingOn(), value, object);
8572
}
@@ -95,8 +82,8 @@ protected <T> T mapResult(final JsonObject root, final Class<T> clazz){
9582
value = mapResult(root.getAsJsonObject(path), field.getType());
9683
}
9784
if (!mappingObject.customConverter().isEmpty()) {
98-
instantation = Class.forName(mappingObject.customConverter());
99-
customConverter = (CustomConverter) instantation.newInstance();
85+
instance = Class.forName(mappingObject.customConverter());
86+
customConverter = (CustomConverter) instance.newInstance();
10087
value = customConverter.convert(root, field, path, mappingObject.dependingOn(), value, object);
10188
}
10289
} else if (field.isAnnotationPresent(MappingCollection.class)) {
@@ -123,8 +110,8 @@ protected <T> T mapResult(final JsonObject root, final Class<T> clazz){
123110
}
124111

125112
if (!mappingCollection.customConverter().isEmpty()) {
126-
instantation = Class.forName(mappingCollection.customConverter());
127-
customConverter = (CustomConverter) instantation.newInstance();
113+
instance = Class.forName(mappingCollection.customConverter());
114+
customConverter = (CustomConverter) instance.newInstance();
128115
value = customConverter.convert(root, field, path, mappingCollection.dependingOn(), value, object);
129116
}
130117
}

src/main/java/com/mservicetech/client/mapping/BaseMapperImpl.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.google.gson.*;
44
import com.mservicetech.client.mapping.adapter.LocalDateAdapter;
55
import com.mservicetech.client.mapping.adapter.LocalDateTimeAdapter;
6+
import com.mservicetech.client.mapping.annotation.MappingSerializable;
67
import org.yaml.snakeyaml.Yaml;
78

89
import java.io.File;

src/main/java/com/mservicetech/client/mapping/ConfigBaseMapperImpl.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
public class ConfigBaseMapperImpl extends BaseMapperImpl implements ClientJsonMapper {
2323

2424
/** This is used when annotations are not available to hold field details. */
25-
private Map<String, Map<String, Map<String, String>>> fieldMappings = null;
25+
private Map<String, Map<String, Map<String, String>>> fieldMappings ;
2626

2727

2828
public ConfigBaseMapperImpl(String mappingFilesFolderName) {
@@ -58,7 +58,7 @@ public void setMappingFiles(final List<String> serializableFieldsMappings) {
5858
try {
5959
if (serializableFieldsMappings != null && !serializableFieldsMappings.isEmpty()) {
6060
final Yaml yaml = new Yaml();
61-
Map<String, Map<String, Map<String, String>>> mappings = null;
61+
Map<String, Map<String, Map<String, String>>> mappings;
6262
for (String path : serializableFieldsMappings) {
6363
resourceAsStream = new FileInputStream(path);
6464
mappings = yaml.load(resourceAsStream);

src/main/java/com/mservicetech/client/mapping/MappingCollection.java renamed to src/main/java/com/mservicetech/client/mapping/annotation/MappingCollection.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.mservicetech.client.mapping;
1+
package com.mservicetech.client.mapping.annotation;
22

33
import java.lang.annotation.ElementType;
44
import java.lang.annotation.Retention;

src/main/java/com/mservicetech/client/mapping/MappingElement.java renamed to src/main/java/com/mservicetech/client/mapping/annotation/MappingElement.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.mservicetech.client.mapping;
1+
package com.mservicetech.client.mapping.annotation;
22

33
import java.lang.annotation.ElementType;
44
import java.lang.annotation.Retention;
@@ -13,14 +13,14 @@
1313
@Target(ElementType.FIELD)
1414
public @interface MappingElement {
1515
/** Look for this element hierarchy to extract the values. */
16-
public String scanPath() default "";
16+
String scanPath() default "";
1717

1818
/** The values of the element is depends on this element. To get this work you have to implement CustomConverter. */
19-
public String dependingOn() default "";
19+
String dependingOn() default "";
2020

2121
/** Directly execute custom converter implementation. This is used when the current value is not considered. */
22-
public boolean forceCustomConverter() default false;
22+
boolean forceCustomConverter() default false;
2323

2424
/** Custom converter implementation. */
25-
public String customConverter() default "";
25+
String customConverter() default "";
2626
}

src/main/java/com/mservicetech/client/mapping/MappingObject.java renamed to src/main/java/com/mservicetech/client/mapping/annotation/MappingObject.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.mservicetech.client.mapping;
1+
package com.mservicetech.client.mapping.annotation;
22

33
import java.lang.annotation.ElementType;
44
import java.lang.annotation.Retention;

src/main/java/com/mservicetech/client/mapping/MappingSerializable.java renamed to src/main/java/com/mservicetech/client/mapping/annotation/MappingSerializable.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.mservicetech.client.mapping;
1+
package com.mservicetech.client.mapping.annotation;
22

33
import java.lang.annotation.ElementType;
44
import java.lang.annotation.Retention;
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package com.mservicetech.client.mapping.config;
2+
3+
public class FieldMappingConfig {
4+
5+
private String type;
6+
private String dependingOn;
7+
private boolean forceCustomConverter;
8+
private String customConverter;
9+
10+
public String getType() {
11+
return type;
12+
}
13+
14+
public void setType(String type) {
15+
this.type = type;
16+
}
17+
18+
public String getDependingOn() {
19+
return dependingOn;
20+
}
21+
22+
public void setDependingOn(String dependingOn) {
23+
this.dependingOn = dependingOn;
24+
}
25+
26+
public boolean isForceCustomConverter() {
27+
return forceCustomConverter;
28+
}
29+
30+
public void setForceCustomConverter(boolean forceCustomConverter) {
31+
this.forceCustomConverter = forceCustomConverter;
32+
}
33+
34+
public String getCustomConverter() {
35+
return customConverter;
36+
}
37+
38+
public void setCustomConverter(String customConverter) {
39+
this.customConverter = customConverter;
40+
}
41+
}

src/test/java/com/mservicetech/client/mapping/ClientJsonMapperMappingFilesTest.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -59,29 +59,29 @@ public class ClientJsonMapperMappingFilesTest {
5959
" ]";
6060

6161
@Test
62-
public void mappingFilesTest() throws Exception {
63-
Model value = (Model) clientJsonMapperImpl.fromString(json, Model.class, null);
62+
public void mappingFilesTest() {
63+
Model value = clientJsonMapperImpl.fromString(json, Model.class, null);
6464
assertEquals(value.getAge(), 30);
6565
assertTrue(value.getType() == Type.Data);
6666
assertTrue(value.getInfo().size() > 0);
6767
}
6868

6969
@Test
70-
public void fromJsonObjectTest() throws Exception {
70+
public void fromJsonObjectTest() {
7171
final JsonParser parser = new JsonParser();
7272
final JsonObject root = (JsonObject) parser.parse(json);
7373

74-
Model value = (Model) clientJsonMapperImpl.fromJsonObject(root, Model.class, null);
74+
Model value = clientJsonMapperImpl.fromJsonObject(root, Model.class, null);
7575
assertEquals(value.getAge(), 30);
7676
assertTrue(value.getUsers().size() != 0);
7777
assertTrue(value.getIntList().size() != 0);
7878

79-
Data data = (Data) clientJsonMapperImpl.fromJsonObject(root, Data.class, "dataInfo.info.data");
79+
Data data = clientJsonMapperImpl.fromJsonObject(root, Data.class, "dataInfo.info.data");
8080
assertEquals(data.getAge(), 30);
8181
}
8282

8383
@Test
84-
public void listFromStringTest() throws Exception {
84+
public void listFromStringTest() {
8585
List<?> users = clientJsonMapperImpl.listFromString(json, User.class, "f4");
8686
assertTrue(users.size() > 0);
8787

@@ -90,7 +90,7 @@ public void listFromStringTest() throws Exception {
9090
}
9191

9292
@Test
93-
public void loadMappingFilesError() throws Exception {
93+
public void loadMappingFilesError() {
9494
try {
9595
final ClientJsonMapper clientJsonMapperImpl = new ConfigBaseMapperImpl("src/test/resources/clientFieldMappingsError");
9696
fail();

0 commit comments

Comments
 (0)