ConvertColumnTransfer优化
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
/*
|
||||
|
||||
*/
|
||||
|
||||
package org.redkale.test.convert;
|
||||
|
||||
import org.junit.jupiter.api.*;
|
||||
import org.redkale.convert.ConvertColumn;
|
||||
import org.redkale.convert.ConvertColumnTransfer;
|
||||
import org.redkale.convert.json.JsonConvert;
|
||||
import org.redkale.util.Attribute;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author zhangjx
|
||||
*/
|
||||
public class ConvertTransferTest {
|
||||
|
||||
public static void main(String[] args) throws Throwable {
|
||||
ConvertTransferTest test = new ConvertTransferTest();
|
||||
test.run1();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void run1() throws Throwable {
|
||||
ParamRequest param = new ParamRequest();
|
||||
param.setName("haha");
|
||||
param.setPhone("1381234500");
|
||||
Assertions.assertEquals("{\"name\":\"haha\",\"phone\":\"138****00\"}", param.toString());
|
||||
}
|
||||
|
||||
public static class ParamRequest {
|
||||
|
||||
private String name;
|
||||
|
||||
@ConvertColumn(tranfer = ParamTransfer.class)
|
||||
private String phone;
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getPhone() {
|
||||
return phone;
|
||||
}
|
||||
|
||||
public void setPhone(String phone) {
|
||||
this.phone = phone;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return JsonConvert.root().convertTo(this);
|
||||
}
|
||||
}
|
||||
|
||||
public static class ParamTransfer implements ConvertColumnTransfer<String> {
|
||||
|
||||
@Override
|
||||
public Object transfer(Object obj, Attribute attribute, String value) {
|
||||
if (value == null || value.length() < 5) {
|
||||
return value;
|
||||
} else {
|
||||
return value.substring(0, 3) + "****" + value.substring(value.length() - 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -77,14 +77,14 @@ public class CustMessage2Test {
|
||||
protected void afterInitEnMember(ConvertFactory factory) {
|
||||
Function func1 = t -> eventName;
|
||||
Attribute attribute1 = Attribute.create(clazz, "event", String.class, func1, null);
|
||||
EnMember member1 = new EnMember(attribute1, factory.loadEncoder(String.class), null, null);
|
||||
EnMember member1 = new EnMember(attribute1, factory.loadEncoder(String.class), null, null, null);
|
||||
setIndex(member1, 1);
|
||||
setPosition(member1, 1);
|
||||
initForEachEnMember(factory, member1);
|
||||
|
||||
Function func2 = t -> t;
|
||||
Attribute attribute2 = Attribute.create(clazz, "result", clazz, func2, null);
|
||||
EnMember member2 = new EnMember(attribute2, valEncoder, null, null);
|
||||
EnMember member2 = new EnMember(attribute2, valEncoder, null, null, null);
|
||||
setIndex(member2, 2);
|
||||
setPosition(member2, 2);
|
||||
initForEachEnMember(factory, member2);
|
||||
|
||||
@@ -2,10 +2,9 @@
|
||||
*/
|
||||
package org.redkale.test.convert;
|
||||
|
||||
import java.lang.annotation.*;
|
||||
import static java.lang.annotation.ElementType.*;
|
||||
import static java.lang.annotation.RetentionPolicy.RUNTIME;
|
||||
|
||||
import java.lang.annotation.*;
|
||||
import java.util.function.*;
|
||||
import org.junit.jupiter.api.*;
|
||||
import org.redkale.convert.*;
|
||||
@@ -73,7 +72,7 @@ public class CustMessageTest {
|
||||
protected void afterInitEnMember(ConvertFactory factory) {
|
||||
Function func = t -> t;
|
||||
Attribute attribute = Attribute.create(clazz, getMessageName(clazz), clazz, func, null);
|
||||
EnMember member = new EnMember(attribute, valEncoder, null, null);
|
||||
EnMember member = new EnMember(attribute, valEncoder, null, null, null);
|
||||
setIndex(member, 1);
|
||||
setPosition(member, 1);
|
||||
initForEachEnMember(factory, member);
|
||||
|
||||
@@ -97,14 +97,14 @@ public class PBCustMessage2Test {
|
||||
protected void afterInitEnMember(ConvertFactory factory) {
|
||||
Function func1 = t -> eventName;
|
||||
Attribute attribute1 = Attribute.create(clazz, "event", String.class, func1, null);
|
||||
EnMember member1 = new EnMember(attribute1, factory.loadEncoder(String.class), null, null);
|
||||
EnMember member1 = new EnMember(attribute1, factory.loadEncoder(String.class), null, null, null);
|
||||
setIndex(member1, 1);
|
||||
setPosition(member1, 1);
|
||||
initForEachEnMember(factory, member1);
|
||||
|
||||
Function func2 = t -> t;
|
||||
Attribute attribute2 = Attribute.create(clazz, "data", clazz, func2, null);
|
||||
EnMember member2 = new EnMember(attribute2, valEncoder, null, null);
|
||||
EnMember member2 = new EnMember(attribute2, valEncoder, null, null, null);
|
||||
setIndex(member2, 2);
|
||||
setPosition(member2, 2);
|
||||
initForEachEnMember(factory, member2);
|
||||
|
||||
@@ -2,10 +2,9 @@
|
||||
*/
|
||||
package org.redkale.test.convert.proto;
|
||||
|
||||
import java.lang.annotation.*;
|
||||
import static java.lang.annotation.ElementType.TYPE;
|
||||
import static java.lang.annotation.RetentionPolicy.RUNTIME;
|
||||
|
||||
import java.lang.annotation.*;
|
||||
import java.util.*;
|
||||
import java.util.function.*;
|
||||
import org.junit.jupiter.api.*;
|
||||
@@ -84,7 +83,7 @@ public class PBCustMessageTest {
|
||||
protected void afterInitEnMember(ConvertFactory factory) {
|
||||
Function func = t -> t;
|
||||
Attribute attribute = Attribute.create(clazz, getMessageName(clazz), clazz, func, null);
|
||||
EnMember member = new EnMember(attribute, valEncoder, null, null);
|
||||
EnMember member = new EnMember(attribute, valEncoder, null, null, null);
|
||||
setIndex(member, 1);
|
||||
setPosition(member, 1);
|
||||
initForEachEnMember(factory, member);
|
||||
|
||||
Reference in New Issue
Block a user