refactor, move method 'JSONFactory.mixIn' to 'JSON.mixIn'
This commit is contained in:
parent
4db6eadbfc
commit
7e9885020a
@ -644,4 +644,9 @@ public interface JSON {
|
||||
|
||||
return TypeUtils.cast(object, clazz);
|
||||
}
|
||||
|
||||
static void mixIn(Class target, Class mixinSource) {
|
||||
JSONFactory.defaultObjectWriterProvider.mixIn(target, mixinSource);
|
||||
JSONFactory.getDefaultObjectReaderProvider().mixIn(target, mixinSource);
|
||||
}
|
||||
}
|
||||
|
@ -288,11 +288,6 @@ public final class JSONFactory {
|
||||
return defaultObjectReaderProvider;
|
||||
}
|
||||
|
||||
public static void mixIn(Class target, Class mixinSource) {
|
||||
defaultObjectWriterProvider.mixIn(target, mixinSource);
|
||||
getDefaultObjectReaderProvider().mixIn(target, mixinSource);
|
||||
}
|
||||
|
||||
public static void setContextReaderCreator(ObjectReaderCreator creator) {
|
||||
readerCreatorLocal.set(creator);
|
||||
}
|
||||
|
@ -2,7 +2,6 @@ package com.alibaba.fastjson2.mixins;
|
||||
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import com.alibaba.fastjson2.JSONFactory;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static junit.framework.TestCase.assertEquals;
|
||||
@ -57,7 +56,7 @@ public class MixinAPITest {
|
||||
public void test_mixIn_get_methods() throws Exception {
|
||||
BaseClass base = new BaseClass(1, 2);
|
||||
|
||||
JSONFactory.mixIn(BaseClass.class, MixIn1.class);
|
||||
JSON.mixIn(BaseClass.class, MixIn1.class);
|
||||
|
||||
String str = JSON.toJSONString(base);
|
||||
// assertEquals("{\"apple\":1,\"banana\":2}", str);
|
||||
|
@ -2,7 +2,6 @@ package com.alibaba.fastjson2.mixins;
|
||||
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import com.alibaba.fastjson2.JSONFactory;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static junit.framework.TestCase.assertEquals;
|
||||
@ -34,7 +33,7 @@ public class MixinAPITest1 {
|
||||
public void test_mixIn_get_methods() throws Exception {
|
||||
BaseClass base = new BaseClass(1, 2);
|
||||
|
||||
JSONFactory.mixIn(BaseClass.class, MixIn1.class);
|
||||
JSON.mixIn(BaseClass.class, MixIn1.class);
|
||||
|
||||
String str = JSON.toJSONString(base);
|
||||
assertEquals("{\"apple\":1,\"banana\":2}", str);
|
||||
|
@ -3,7 +3,6 @@ package com.alibaba.fastjson2.mixins;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.annotation.JSONCreator;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import com.alibaba.fastjson2.JSONFactory;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static junit.framework.TestCase.assertEquals;
|
||||
@ -36,7 +35,7 @@ public class MixinAPITest2 {
|
||||
public void test_mixIn_get_methods() throws Exception {
|
||||
BaseClass base = new BaseClass(1, 2);
|
||||
|
||||
JSONFactory.mixIn(BaseClass.class, MixIn1.class);
|
||||
JSON.mixIn(BaseClass.class, MixIn1.class);
|
||||
|
||||
String str = JSON.toJSONString(base);
|
||||
assertEquals("{\"apple\":1,\"banana\":2}", str);
|
||||
|
@ -3,7 +3,6 @@ package com.alibaba.fastjson2.mixins;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.annotation.JSONCreator;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import com.alibaba.fastjson2.JSONFactory;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static junit.framework.TestCase.assertEquals;
|
||||
@ -36,7 +35,7 @@ public class MixinAPITest3 {
|
||||
public void test_mixIn_get_methods() throws Exception {
|
||||
BaseClass base = new BaseClass(1, 2);
|
||||
|
||||
JSONFactory.mixIn(BaseClass.class, MixIn1.class);
|
||||
JSON.mixIn(BaseClass.class, MixIn1.class);
|
||||
|
||||
String str = JSON.toJSONString(base);
|
||||
assertEquals("{\"apple\":1,\"banana\":2}", str);
|
||||
|
@ -3,7 +3,6 @@ package com.alibaba.fastjson2.mixins;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.annotation.JSONCreator;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import com.alibaba.fastjson2.JSONFactory;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static junit.framework.TestCase.assertEquals;
|
||||
@ -41,7 +40,7 @@ public class MixinAPITest4 {
|
||||
public void test_mixIn_get_methods() throws Exception {
|
||||
BaseClass base = new BaseClass(1, 2);
|
||||
|
||||
JSONFactory.mixIn(BaseClass.class, MixIn1.class);
|
||||
JSON.mixIn(BaseClass.class, MixIn1.class);
|
||||
|
||||
String str = JSON.toJSONString(base);
|
||||
assertEquals("{\"apple\":1,\"banana\":2}", str);
|
||||
|
@ -1,10 +1,8 @@
|
||||
package com.alibaba.fastjson2.v1issues;
|
||||
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.JSONFactory;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.alibaba.fastjson2.annotation.JSONType;
|
||||
import junit.framework.TestCase;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.util.List;
|
||||
@ -20,8 +18,8 @@ public class Issue1233 {
|
||||
public void test_for_issue() throws Exception {
|
||||
JSONObject jsonObject = JSON.parseObject("{\"type\":\"floorV2\",\"templateId\":\"x123\"}");
|
||||
|
||||
JSONFactory.mixIn(Area.class, AreaMixIn.class);
|
||||
JSONFactory.mixIn(FloorV2.class, FloorV2MixIn.class);
|
||||
JSON.mixIn(Area.class, AreaMixIn.class);
|
||||
JSON.mixIn(FloorV2.class, FloorV2MixIn.class);
|
||||
|
||||
FloorV2 floorV2 = (FloorV2) jsonObject.toJavaObject(Area.class);
|
||||
assertNotNull(floorV2);
|
||||
|
@ -3,8 +3,6 @@ package com.alibaba.fastjson2.v1issues.issue_1200;
|
||||
import com.alibaba.fastjson2.annotation.JSONType;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.alibaba.fastjson2.JSONFactory;
|
||||
import junit.framework.TestCase;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.util.List;
|
||||
@ -20,8 +18,8 @@ public class Issue1233 {
|
||||
public void test_for_issue() throws Exception {
|
||||
JSONObject jsonObject = JSON.parseObject("{\"type\":\"floorV2\",\"templateId\":\"x123\"}");
|
||||
|
||||
JSONFactory.mixIn(Area.class, AreaMixIn.class);
|
||||
JSONFactory.mixIn(FloorV2.class, FloorV2MixIn.class);
|
||||
JSON.mixIn(Area.class, AreaMixIn.class);
|
||||
JSON.mixIn(FloorV2.class, FloorV2MixIn.class);
|
||||
|
||||
FloorV2 floorV2 = (FloorV2) jsonObject.toJavaObject(Area.class);
|
||||
assertNotNull(floorV2);
|
||||
|
@ -3,7 +3,6 @@ package com.alibaba.fastjson2.v1issues.issue_3200;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.annotation.JSONCreator;
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import com.alibaba.fastjson2.JSONFactory;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
@ -11,7 +10,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
public class Issue3266_mixedin {
|
||||
@Test
|
||||
public void test_for_issue() throws Exception {
|
||||
JSONFactory.mixIn(Color.class, ColorMixedIn.class);
|
||||
JSON.mixIn(Color.class, ColorMixedIn.class);
|
||||
|
||||
VO vo = new VO();
|
||||
vo.type = Color.Black;
|
||||
@ -28,7 +27,7 @@ public class Issue3266_mixedin {
|
||||
|
||||
@Test
|
||||
public void test_for_issue_method() throws Exception {
|
||||
JSONFactory.mixIn(Color.class, ColorMixedIn.class);
|
||||
JSON.mixIn(Color.class, ColorMixedIn.class);
|
||||
|
||||
V1 vo = new V1();
|
||||
vo.type = Color.Black;
|
||||
|
@ -3,7 +3,6 @@ package com.alibaba.fastjson.issue_3200;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.annotation.JSONCreator;
|
||||
import com.alibaba.fastjson.annotation.JSONField;
|
||||
import com.alibaba.fastjson2.JSONFactory;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
@ -11,7 +10,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
public class Issue3266_mixedin {
|
||||
@Test
|
||||
public void test_for_issue() throws Exception {
|
||||
JSONFactory.mixIn(Color.class, ColorMixedIn.class);
|
||||
com.alibaba.fastjson2.JSON.mixIn(Color.class, ColorMixedIn.class);
|
||||
|
||||
VO vo = new VO();
|
||||
vo.type = Color.Black;
|
||||
|
@ -3,7 +3,6 @@ package com.alibaba.json.bvt.issue_1200;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.alibaba.fastjson.annotation.JSONType;
|
||||
import com.alibaba.fastjson2.JSONFactory;
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import java.util.List;
|
||||
@ -15,8 +14,8 @@ public class Issue1233 extends TestCase {
|
||||
public void test_for_issue() throws Exception {
|
||||
JSONObject jsonObject = JSON.parseObject("{\"type\":\"floorV2\",\"templateId\":\"x123\"}");
|
||||
|
||||
JSONFactory.mixIn(Area.class, AreaMixIn.class);
|
||||
JSONFactory.mixIn(FloorV2.class, FloorV2MixIn.class);
|
||||
com.alibaba.fastjson2.JSON.mixIn(Area.class, AreaMixIn.class);
|
||||
com.alibaba.fastjson2.JSON.mixIn(FloorV2.class, FloorV2MixIn.class);
|
||||
|
||||
FloorV2 floorV2 = (FloorV2) jsonObject.toJavaObject(Area.class);
|
||||
assertNotNull(floorV2);
|
||||
|
@ -6,7 +6,6 @@ import com.alibaba.fastjson.parser.DefaultJSONParser;
|
||||
import com.alibaba.fastjson.parser.JSONToken;
|
||||
import com.alibaba.fastjson.parser.deserializer.ObjectDeserializer;
|
||||
import com.alibaba.fastjson.serializer.StringCodec;
|
||||
import com.alibaba.fastjson2.JSONFactory;
|
||||
import com.zx.sms.codec.cmpp.msg.CmppSubmitResponseMessage;
|
||||
import com.zx.sms.codec.smgp.msg.SMGPSubmitMessage;
|
||||
import com.zx.sms.common.util.CMPPCommonUtil;
|
||||
@ -31,7 +30,7 @@ public class Issue2685 extends TestCase {
|
||||
String smsMsg = JSON.toJSONString(smgpSubmitMessage);
|
||||
// System.out.println(smsMsg);
|
||||
|
||||
JSONFactory.mixIn(SMGPSubmitMessage.class, Mixin.class);
|
||||
com.alibaba.fastjson2.JSON.mixIn(SMGPSubmitMessage.class, Mixin.class);
|
||||
smgpSubmitMessage = JSON.parseObject(smsMsg, SMGPSubmitMessage.class);
|
||||
assertEquals("hello", smgpSubmitMessage.getMsgContent());
|
||||
}
|
||||
|
@ -3,13 +3,12 @@ package com.alibaba.json.bvt.issue_3400;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.annotation.JSONCreator;
|
||||
import com.alibaba.fastjson.annotation.JSONType;
|
||||
import com.alibaba.fastjson2.JSONFactory;
|
||||
import junit.framework.TestCase;
|
||||
import org.springframework.core.io.FileSystemResource;
|
||||
|
||||
public class Issue3436 extends TestCase {
|
||||
public void test_for_issue() throws Exception {
|
||||
JSONFactory.mixIn(FileSystemResource.class, FileSystemResourceMixedIn.class);
|
||||
com.alibaba.fastjson2.JSON.mixIn(FileSystemResource.class, FileSystemResourceMixedIn.class);
|
||||
|
||||
FileSystemResource fileSystemResource = new FileSystemResource("E:\\my-code\\test\\test-fastjson.txt");
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user