This is an automated email from the ASF dual-hosted git repository.

xiaoyu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-shenyu.git


The following commit(s) were added to refs/heads/master by this push:
     new 52b059b  modify Transfer class (#1875)
52b059b is described below

commit 52b059b7882f6ff9b1645883b7bd203229a819ae
Author: YuI <[email protected]>
AuthorDate: Fri Aug 6 17:44:16 2021 +0800

    modify Transfer class (#1875)
    
    * modify Transfer class
    
    * modify test case.
    
    * Objects.isNull() modify to Optional
    
    Co-authored-by: YuI <[email protected]>
---
 .../shenyu/admin/transfer/AppAuthTransfer.java     | 106 +++------
 .../shenyu/admin/transfer/ConditionTransfer.java   | 104 ++++-----
 .../shenyu/admin/transfer/MetaDataTransfer.java    | 247 ++++++++-------------
 .../shenyu/admin/transfer/PluginTransfer.java      |  48 ++--
 .../shenyu/admin/transfer/SelectorTransfer.java    |  59 -----
 5 files changed, 198 insertions(+), 366 deletions(-)

diff --git 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/AppAuthTransfer.java
 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/AppAuthTransfer.java
index 9fc778f..adb191b 100644
--- 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/AppAuthTransfer.java
+++ 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/AppAuthTransfer.java
@@ -20,13 +20,9 @@ package org.apache.shenyu.admin.transfer;
 import org.apache.shenyu.admin.model.dto.AppAuthDTO;
 import org.apache.shenyu.admin.model.entity.AppAuthDO;
 import org.apache.shenyu.admin.model.vo.AppAuthVO;
+import org.apache.shenyu.common.utils.DateUtils;
 
-import javax.xml.datatype.DatatypeConfigurationException;
-import javax.xml.datatype.DatatypeFactory;
-import javax.xml.datatype.XMLGregorianCalendar;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.GregorianCalendar;
+import java.util.Optional;
 
 /**
  * The interface App auth transfer.
@@ -38,16 +34,6 @@ public enum AppAuthTransfer {
      */
     INSTANCE;
 
-    private final DatatypeFactory datatypeFactory;
-
-    AppAuthTransfer() {
-        try {
-            datatypeFactory = DatatypeFactory.newInstance();
-        } catch (DatatypeConfigurationException ex) {
-            throw new RuntimeException(ex);
-        }
-    }
-
     /**
      * Map to entity app auth do.
      *
@@ -55,22 +41,20 @@ public enum AppAuthTransfer {
      * @return the app auth do
      */
     public AppAuthDO mapToEntity(final AppAuthDTO appAuthDTO) {
-        if (appAuthDTO == null) {
-            return null;
-        }
-
-        AppAuthDO.AppAuthDOBuilder<?, ?> appAuthDO = AppAuthDO.builder();
-
-        appAuthDO.id(appAuthDTO.getId());
-        appAuthDO.appKey(appAuthDTO.getAppKey());
-        appAuthDO.appSecret(appAuthDTO.getAppSecret());
-        appAuthDO.enabled(appAuthDTO.getEnabled());
-        appAuthDO.open(appAuthDTO.getOpen());
-        appAuthDO.userId(appAuthDTO.getUserId());
-        appAuthDO.phone(appAuthDTO.getPhone());
-        appAuthDO.extInfo(appAuthDTO.getExtInfo());
-
-        return appAuthDO.build();
+        return Optional.ofNullable(appAuthDTO)
+                .map(v -> {
+                    AppAuthDO.AppAuthDOBuilder<?, ?> appAuthDO = 
AppAuthDO.builder();
+                    appAuthDO.id(v.getId());
+                    appAuthDO.appKey(v.getAppKey());
+                    appAuthDO.appSecret(v.getAppSecret());
+                    appAuthDO.enabled(v.getEnabled());
+                    appAuthDO.open(v.getOpen());
+                    appAuthDO.userId(v.getUserId());
+                    appAuthDO.phone(v.getPhone());
+                    appAuthDO.extInfo(v.getExtInfo());
+                    return appAuthDO.build();
+                })
+                .orElse(null);
     }
 
     /**
@@ -80,47 +64,23 @@ public enum AppAuthTransfer {
      * @return the app auth vo
      */
     public AppAuthVO mapToVO(final AppAuthDO appAuthDO) {
-        if (appAuthDO == null) {
-            return null;
-        }
-
-        AppAuthVO appAuthVO = new AppAuthVO();
-
-        appAuthVO.setId(appAuthDO.getId());
-        appAuthVO.setAppKey(appAuthDO.getAppKey());
-        appAuthVO.setAppSecret(appAuthDO.getAppSecret());
-        appAuthVO.setUserId(appAuthDO.getUserId());
-        appAuthVO.setPhone(appAuthDO.getPhone());
-        appAuthVO.setExtInfo(appAuthDO.getExtInfo());
-        appAuthVO.setOpen(appAuthDO.getOpen());
-        appAuthVO.setEnabled(appAuthDO.getEnabled());
-        
appAuthVO.setDateUpdated(xmlGregorianCalendarToString(dateToXmlGregorianCalendar(appAuthDO.getDateUpdated()),
 null));
-
-        return appAuthVO;
-    }
-
-    private String xmlGregorianCalendarToString(final XMLGregorianCalendar 
xcal, final String dateFormat) {
-        if (xcal == null) {
-            return null;
-        }
-
-        if (dateFormat == null) {
-            return xcal.toString();
-        } else {
-            Date d = xcal.toGregorianCalendar().getTime();
-            SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
-            return sdf.format(d);
-        }
-    }
-
-    private XMLGregorianCalendar dateToXmlGregorianCalendar(final Date date) {
-        if (date == null) {
-            return null;
-        }
-
-        GregorianCalendar c = new GregorianCalendar();
-        c.setTime(date);
-        return INSTANCE.datatypeFactory.newXMLGregorianCalendar(c);
+        return Optional.ofNullable(appAuthDO)
+                .map(v -> {
+                    AppAuthVO appAuthVO = new AppAuthVO();
+                    appAuthVO.setId(v.getId());
+                    appAuthVO.setAppKey(v.getAppKey());
+                    appAuthVO.setAppSecret(v.getAppSecret());
+                    appAuthVO.setUserId(v.getUserId());
+                    appAuthVO.setPhone(v.getPhone());
+                    appAuthVO.setExtInfo(v.getExtInfo());
+                    appAuthVO.setOpen(v.getOpen());
+                    appAuthVO.setEnabled(appAuthDO.getEnabled());
+                    
appAuthVO.setDateUpdated(Optional.ofNullable(appAuthDO.getDateUpdated())
+                            .map(u -> 
DateUtils.localDateTimeToString(u.toLocalDateTime()))
+                            .orElse(null));
+                    return appAuthVO;
+                })
+                .orElse(null);
     }
 
 }
diff --git 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/ConditionTransfer.java
 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/ConditionTransfer.java
index 31ee193..fca073d 100644
--- 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/ConditionTransfer.java
+++ 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/ConditionTransfer.java
@@ -23,8 +23,9 @@ import org.apache.shenyu.admin.model.entity.RuleConditionDO;
 import org.apache.shenyu.admin.model.entity.SelectorConditionDO;
 import org.apache.shenyu.common.dto.ConditionData;
 
-import java.util.ArrayList;
 import java.util.List;
+import java.util.Optional;
+import java.util.stream.Collectors;
 
 /**
  * The interface Condition transfer.
@@ -43,18 +44,16 @@ public enum ConditionTransfer {
      * @return the condition data
      */
     public ConditionData mapToSelectorDO(final SelectorConditionDO 
selectorConditionDO) {
-        if (selectorConditionDO == null) {
-            return null;
-        }
-
-        ConditionData conditionData = new ConditionData();
-
-        conditionData.setParamType(selectorConditionDO.getParamType());
-        conditionData.setOperator(selectorConditionDO.getOperator());
-        conditionData.setParamName(selectorConditionDO.getParamName());
-        conditionData.setParamValue(selectorConditionDO.getParamValue());
-
-        return conditionData;
+        return Optional.ofNullable(selectorConditionDO)
+                .map(v -> {
+                    ConditionData conditionData = new ConditionData();
+                    conditionData.setParamType(v.getParamType());
+                    conditionData.setOperator(v.getOperator());
+                    conditionData.setParamName(v.getParamName());
+                    conditionData.setParamValue(v.getParamValue());
+                    return conditionData;
+                })
+                .orElse(null);
     }
 
     /**
@@ -64,16 +63,9 @@ public enum ConditionTransfer {
      * @return the condition data list
      */
     public List<ConditionData> mapToSelectorDOS(final 
List<SelectorConditionDO> selectorConditionDOS) {
-        if (selectorConditionDOS == null) {
-            return null;
-        }
-
-        List<ConditionData> list = new 
ArrayList<ConditionData>(selectorConditionDOS.size());
-        for (SelectorConditionDO selectorConditionDO : selectorConditionDOS) {
-            list.add(mapToSelectorDO(selectorConditionDO));
-        }
-
-        return list;
+        return Optional.ofNullable(selectorConditionDOS)
+                .map(v -> 
v.stream().map(this::mapToSelectorDO).collect(Collectors.toList()))
+                .orElse(null);
     }
 
     /**
@@ -83,18 +75,16 @@ public enum ConditionTransfer {
      * @return the condition data
      */
     public ConditionData mapToSelectorDTO(final SelectorConditionDTO 
selectorConditionDTO) {
-        if (selectorConditionDTO == null) {
-            return null;
-        }
-
-        ConditionData conditionData = new ConditionData();
-
-        conditionData.setParamType(selectorConditionDTO.getParamType());
-        conditionData.setOperator(selectorConditionDTO.getOperator());
-        conditionData.setParamName(selectorConditionDTO.getParamName());
-        conditionData.setParamValue(selectorConditionDTO.getParamValue());
-
-        return conditionData;
+        return Optional.ofNullable(selectorConditionDTO)
+                .map(v -> {
+                    ConditionData conditionData = new ConditionData();
+                    conditionData.setParamType(v.getParamType());
+                    conditionData.setOperator(v.getOperator());
+                    conditionData.setParamName(v.getParamName());
+                    conditionData.setParamValue(v.getParamValue());
+                    return conditionData;
+                })
+                .orElse(null);
     }
 
     /**
@@ -104,18 +94,16 @@ public enum ConditionTransfer {
      * @return the condition data
      */
     public ConditionData mapToRuleDO(final RuleConditionDO ruleConditionDO) {
-        if (ruleConditionDO == null) {
-            return null;
-        }
-
-        ConditionData conditionData = new ConditionData();
-
-        conditionData.setParamType(ruleConditionDO.getParamType());
-        conditionData.setOperator(ruleConditionDO.getOperator());
-        conditionData.setParamName(ruleConditionDO.getParamName());
-        conditionData.setParamValue(ruleConditionDO.getParamValue());
-
-        return conditionData;
+        return Optional.ofNullable(ruleConditionDO)
+                .map(v -> {
+                    ConditionData conditionData = new ConditionData();
+                    conditionData.setParamType(v.getParamType());
+                    conditionData.setOperator(v.getOperator());
+                    conditionData.setParamName(v.getParamName());
+                    conditionData.setParamValue(v.getParamValue());
+                    return conditionData;
+                })
+                .orElse(null);
     }
 
     /**
@@ -125,18 +113,16 @@ public enum ConditionTransfer {
      * @return the condition data
      */
     public ConditionData mapToRuleDTO(final RuleConditionDTO ruleConditionDTO) 
{
-        if (ruleConditionDTO == null) {
-            return null;
-        }
-
-        ConditionData conditionData = new ConditionData();
-
-        conditionData.setParamType(ruleConditionDTO.getParamType());
-        conditionData.setOperator(ruleConditionDTO.getOperator());
-        conditionData.setParamName(ruleConditionDTO.getParamName());
-        conditionData.setParamValue(ruleConditionDTO.getParamValue());
-
-        return conditionData;
+        return Optional.ofNullable(ruleConditionDTO)
+                .map(v -> {
+                    ConditionData conditionData = new ConditionData();
+                    conditionData.setParamType(v.getParamType());
+                    conditionData.setOperator(v.getOperator());
+                    conditionData.setParamName(v.getParamName());
+                    conditionData.setParamValue(v.getParamValue());
+                    return conditionData;
+                })
+                .orElse(null);
     }
 
 }
diff --git 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/MetaDataTransfer.java
 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/MetaDataTransfer.java
index 62c54f2..0c00cca 100644
--- 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/MetaDataTransfer.java
+++ 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/MetaDataTransfer.java
@@ -21,16 +21,12 @@ import org.apache.shenyu.admin.model.dto.MetaDataDTO;
 import org.apache.shenyu.admin.model.entity.MetaDataDO;
 import org.apache.shenyu.admin.model.vo.MetaDataVO;
 import org.apache.shenyu.common.dto.MetaData;
+import org.apache.shenyu.common.utils.DateUtils;
 import org.apache.shenyu.register.common.dto.MetaDataRegisterDTO;
 
-import javax.xml.datatype.DatatypeConfigurationException;
-import javax.xml.datatype.DatatypeFactory;
-import javax.xml.datatype.XMLGregorianCalendar;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.GregorianCalendar;
 import java.util.List;
+import java.util.Optional;
+import java.util.stream.Collectors;
 
 /**
  * The interface Meta data transfer.
@@ -42,16 +38,6 @@ public enum MetaDataTransfer {
      */
     INSTANCE;
 
-    private final DatatypeFactory datatypeFactory;
-
-    MetaDataTransfer() {
-        try {
-            datatypeFactory = DatatypeFactory.newInstance();
-        } catch (DatatypeConfigurationException ex) {
-            throw new RuntimeException(ex);
-        }
-    }
-
     /**
      * Map to entity meta data do.
      *
@@ -59,24 +45,23 @@ public enum MetaDataTransfer {
      * @return the meta data do
      */
     public MetaDataDO mapToEntity(final MetaDataDTO metaDataDTO) {
-        if (metaDataDTO == null) {
-            return null;
-        }
-
-        MetaDataDO.MetaDataDOBuilder<?, ?> metaDataDO = MetaDataDO.builder();
-
-        metaDataDO.id(metaDataDTO.getId());
-        metaDataDO.appName(metaDataDTO.getAppName());
-        metaDataDO.path(metaDataDTO.getPath());
-        metaDataDO.pathDesc(metaDataDTO.getPathDesc());
-        metaDataDO.rpcType(metaDataDTO.getRpcType());
-        metaDataDO.serviceName(metaDataDTO.getServiceName());
-        metaDataDO.methodName(metaDataDTO.getMethodName());
-        metaDataDO.parameterTypes(metaDataDTO.getParameterTypes());
-        metaDataDO.rpcExt(metaDataDTO.getRpcExt());
-        metaDataDO.enabled(metaDataDTO.getEnabled());
-
-        return metaDataDO.build();
+        return Optional.ofNullable(metaDataDTO)
+                .map(v -> {
+                    MetaDataDO.MetaDataDOBuilder<?, ?> metaDataDO = 
MetaDataDO.builder();
+                    metaDataDO.id(v.getId());
+                    metaDataDO.appName(v.getAppName());
+                    metaDataDO.path(v.getPath());
+                    metaDataDO.pathDesc(v.getPathDesc());
+                    metaDataDO.rpcType(v.getRpcType());
+                    metaDataDO.serviceName(v.getServiceName());
+                    metaDataDO.methodName(v.getMethodName());
+                    metaDataDO.parameterTypes(v.getParameterTypes());
+                    metaDataDO.rpcExt(v.getRpcExt());
+                    metaDataDO.enabled(v.getEnabled());
+
+                    return metaDataDO.build();
+                })
+                .orElse(null);
     }
 
     /**
@@ -86,23 +71,22 @@ public enum MetaDataTransfer {
      * @return the meta data do
      */
     public MetaDataDO mapRegisterDTOToEntity(final MetaDataRegisterDTO 
metaDataDTO) {
-        if (metaDataDTO == null) {
-            return null;
-        }
-
-        MetaDataDO.MetaDataDOBuilder<?, ?> metaDataDO = MetaDataDO.builder();
-
-        metaDataDO.appName(metaDataDTO.getAppName());
-        metaDataDO.path(metaDataDTO.getPath());
-        metaDataDO.pathDesc(metaDataDTO.getPathDesc());
-        metaDataDO.rpcType(metaDataDTO.getRpcType());
-        metaDataDO.serviceName(metaDataDTO.getServiceName());
-        metaDataDO.methodName(metaDataDTO.getMethodName());
-        metaDataDO.parameterTypes(metaDataDTO.getParameterTypes());
-        metaDataDO.rpcExt(metaDataDTO.getRpcExt());
-        metaDataDO.enabled(metaDataDTO.isEnabled());
-
-        return metaDataDO.build();
+        return Optional.ofNullable(metaDataDTO)
+                .map(v -> {
+                    MetaDataDO.MetaDataDOBuilder<?, ?> metaDataDO = 
MetaDataDO.builder();
+                    metaDataDO.appName(v.getAppName());
+                    metaDataDO.path(v.getPath());
+                    metaDataDO.pathDesc(v.getPathDesc());
+                    metaDataDO.rpcType(v.getRpcType());
+                    metaDataDO.serviceName(v.getServiceName());
+                    metaDataDO.methodName(v.getMethodName());
+                    metaDataDO.parameterTypes(v.getParameterTypes());
+                    metaDataDO.rpcExt(v.getRpcExt());
+                    metaDataDO.enabled(v.isEnabled());
+
+                    return metaDataDO.build();
+                })
+                .orElse(null);
     }
 
     /**
@@ -112,24 +96,23 @@ public enum MetaDataTransfer {
      * @return the meta data
      */
     public MetaData mapToData(final MetaDataDTO metaDataDTO) {
-        if (metaDataDTO == null) {
-            return null;
-        }
-
-        MetaData.MetaDataBuilder metaData = MetaData.builder();
-
-        metaData.id(metaDataDTO.getId());
-        metaData.appName(metaDataDTO.getAppName());
-        metaData.contextPath(metaDataDTO.getContextPath());
-        metaData.path(metaDataDTO.getPath());
-        metaData.rpcType(metaDataDTO.getRpcType());
-        metaData.serviceName(metaDataDTO.getServiceName());
-        metaData.methodName(metaDataDTO.getMethodName());
-        metaData.parameterTypes(metaDataDTO.getParameterTypes());
-        metaData.rpcExt(metaDataDTO.getRpcExt());
-        metaData.enabled(metaDataDTO.getEnabled());
-
-        return metaData.build();
+        return Optional.ofNullable(metaDataDTO)
+                .map(v -> {
+                    MetaData.MetaDataBuilder metaData = MetaData.builder();
+                    metaData.id(v.getId());
+                    metaData.appName(v.getAppName());
+                    metaData.contextPath(v.getContextPath());
+                    metaData.path(v.getPath());
+                    metaData.rpcType(v.getRpcType());
+                    metaData.serviceName(v.getServiceName());
+                    metaData.methodName(v.getMethodName());
+                    metaData.parameterTypes(v.getParameterTypes());
+                    metaData.rpcExt(v.getRpcExt());
+                    metaData.enabled(v.getEnabled());
+
+                    return metaData.build();
+                })
+                .orElse(null);
     }
 
     /**
@@ -139,23 +122,22 @@ public enum MetaDataTransfer {
      * @return the meta data
      */
     public MetaData mapToData(final MetaDataDO metaDataDO) {
-        if (metaDataDO == null) {
-            return null;
-        }
-
-        MetaData.MetaDataBuilder metaData = MetaData.builder();
-
-        metaData.id(metaDataDO.getId());
-        metaData.appName(metaDataDO.getAppName());
-        metaData.path(metaDataDO.getPath());
-        metaData.rpcType(metaDataDO.getRpcType());
-        metaData.serviceName(metaDataDO.getServiceName());
-        metaData.methodName(metaDataDO.getMethodName());
-        metaData.parameterTypes(metaDataDO.getParameterTypes());
-        metaData.rpcExt(metaDataDO.getRpcExt());
-        metaData.enabled(metaDataDO.getEnabled());
-
-        return metaData.build();
+        return Optional.ofNullable(metaDataDO)
+                .map(v -> {
+                    MetaData.MetaDataBuilder metaData = MetaData.builder();
+                    metaData.id(v.getId());
+                    metaData.appName(v.getAppName());
+                    metaData.path(v.getPath());
+                    metaData.rpcType(v.getRpcType());
+                    metaData.serviceName(v.getServiceName());
+                    metaData.methodName(v.getMethodName());
+                    metaData.parameterTypes(v.getParameterTypes());
+                    metaData.rpcExt(v.getRpcExt());
+                    metaData.enabled(v.getEnabled());
+
+                    return metaData.build();
+                })
+                .orElse(null);
     }
 
     /**
@@ -165,16 +147,9 @@ public enum MetaDataTransfer {
      * @return the list
      */
     public List<MetaData> mapToDataAll(final List<MetaDataDO> metaDataDOList) {
-        if (metaDataDOList == null) {
-            return null;
-        }
-
-        List<MetaData> list = new ArrayList<MetaData>(metaDataDOList.size());
-        for (MetaDataDO metaDataDO : metaDataDOList) {
-            list.add(mapToData(metaDataDO));
-        }
-
-        return list;
+        return Optional.ofNullable(metaDataDOList)
+                .map(v -> 
v.stream().map(this::mapToData).collect(Collectors.toList()))
+                .orElse(null);
     }
 
     /**
@@ -184,26 +159,27 @@ public enum MetaDataTransfer {
      * @return the meta data vo
      */
     public MetaDataVO mapToVO(final MetaDataDO metaDataDO) {
-        if (metaDataDO == null) {
-            return null;
-        }
-
-        MetaDataVO metaDataVO = new MetaDataVO();
-
-        metaDataVO.setAppName(metaDataDO.getAppName());
-        metaDataVO.setPath(metaDataDO.getPath());
-        metaDataVO.setPathDesc(metaDataDO.getPathDesc());
-        metaDataVO.setRpcType(metaDataDO.getRpcType());
-        metaDataVO.setServiceName(metaDataDO.getServiceName());
-        metaDataVO.setMethodName(metaDataDO.getMethodName());
-        metaDataVO.setParameterTypes(metaDataDO.getParameterTypes());
-        metaDataVO.setRpcExt(metaDataDO.getRpcExt());
-        metaDataVO.setId(metaDataDO.getId());
-        
metaDataVO.setDateCreated(xmlGregorianCalendarToString(dateToXmlGregorianCalendar(metaDataDO.getDateCreated()),
 null));
-        
metaDataVO.setDateUpdated(xmlGregorianCalendarToString(dateToXmlGregorianCalendar(metaDataDO.getDateUpdated()),
 null));
-        metaDataVO.setEnabled(metaDataDO.getEnabled());
-
-        return metaDataVO;
+        return Optional.ofNullable(metaDataDO)
+                .map(v -> {
+                    MetaDataVO metaDataVO = new MetaDataVO();
+                    metaDataVO.setAppName(metaDataDO.getAppName());
+                    metaDataVO.setPath(metaDataDO.getPath());
+                    metaDataVO.setPathDesc(metaDataDO.getPathDesc());
+                    metaDataVO.setRpcType(metaDataDO.getRpcType());
+                    metaDataVO.setServiceName(metaDataDO.getServiceName());
+                    metaDataVO.setMethodName(metaDataDO.getMethodName());
+                    
metaDataVO.setParameterTypes(metaDataDO.getParameterTypes());
+                    metaDataVO.setRpcExt(metaDataDO.getRpcExt());
+                    metaDataVO.setId(metaDataDO.getId());
+                    metaDataVO.setEnabled(metaDataDO.getEnabled());
+                    
metaDataVO.setDateCreated(Optional.ofNullable(metaDataDO.getDateCreated())
+                            .map(u -> 
DateUtils.localDateTimeToString(u.toLocalDateTime())).orElse(null));
+                    
metaDataVO.setDateUpdated(Optional.ofNullable(metaDataDO.getDateUpdated())
+                            .map(u -> 
DateUtils.localDateTimeToString(u.toLocalDateTime())).orElse(null));
+
+                    return metaDataVO;
+                })
+                .orElse(null);
     }
 
     /**
@@ -213,40 +189,9 @@ public enum MetaDataTransfer {
      * @return the list
      */
     public List<MetaDataVO> mapToVOList(final List<MetaDataDO> metaDataDOList) 
{
-        if (metaDataDOList == null) {
-            return null;
-        }
-
-        List<MetaDataVO> list = new ArrayList<>(metaDataDOList.size());
-        for (MetaDataDO metaDataDO : metaDataDOList) {
-            list.add(mapToVO(metaDataDO));
-        }
-
-        return list;
-    }
-
-    private String xmlGregorianCalendarToString(final XMLGregorianCalendar 
xcal, final String dateFormat) {
-        if (xcal == null) {
-            return null;
-        }
-
-        if (dateFormat == null) {
-            return xcal.toString();
-        } else {
-            Date d = xcal.toGregorianCalendar().getTime();
-            SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
-            return sdf.format(d);
-        }
-    }
-
-    private XMLGregorianCalendar dateToXmlGregorianCalendar(final Date date) {
-        if (date == null) {
-            return null;
-        }
-
-        GregorianCalendar c = new GregorianCalendar();
-        c.setTime(date);
-        return datatypeFactory.newXMLGregorianCalendar(c);
+        return Optional.ofNullable(metaDataDOList)
+                .map(v -> 
v.stream().map(this::mapToVO).collect(Collectors.toList()))
+                .orElse(null);
     }
 
 }
diff --git 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/PluginTransfer.java
 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/PluginTransfer.java
index 317b74b..96ed384 100644
--- 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/PluginTransfer.java
+++ 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/PluginTransfer.java
@@ -21,6 +21,8 @@ import org.apache.shenyu.admin.model.entity.PluginDO;
 import org.apache.shenyu.admin.model.vo.PluginVO;
 import org.apache.shenyu.common.dto.PluginData;
 
+import java.util.Optional;
+
 /**
  * The interface Plugin transfer.
  */
@@ -38,19 +40,18 @@ public enum PluginTransfer {
      * @return the plugin data
      */
     public PluginData mapToData(final PluginDO pluginDO) {
-        if (pluginDO == null) {
-            return null;
-        }
-
-        PluginData.PluginDataBuilder pluginData = PluginData.builder();
-
-        pluginData.id(pluginDO.getId());
-        pluginData.name(pluginDO.getName());
-        pluginData.config(pluginDO.getConfig());
-        pluginData.role(pluginDO.getRole());
-        pluginData.enabled(pluginDO.getEnabled());
+        return Optional.ofNullable(pluginDO)
+                .map(v -> {
+                    PluginData.PluginDataBuilder pluginData = 
PluginData.builder();
+                    pluginData.id(v.getId());
+                    pluginData.name(v.getName());
+                    pluginData.config(v.getConfig());
+                    pluginData.role(v.getRole());
+                    pluginData.enabled(v.getEnabled());
 
-        return pluginData.build();
+                    return pluginData.build();
+                })
+                .orElse(null);
     }
 
     /**
@@ -60,19 +61,18 @@ public enum PluginTransfer {
      * @return the plugin data
      */
     public PluginData mapDataTOVO(final PluginVO pluginVO) {
-        if (pluginVO == null) {
-            return null;
-        }
-
-        PluginData.PluginDataBuilder pluginData = PluginData.builder();
-
-        pluginData.id(pluginVO.getId());
-        pluginData.name(pluginVO.getName());
-        pluginData.config(pluginVO.getConfig());
-        pluginData.role(pluginVO.getRole());
-        pluginData.enabled(pluginVO.getEnabled());
+        return Optional.ofNullable(pluginVO)
+                .map(v -> {
+                    PluginData.PluginDataBuilder pluginData = 
PluginData.builder();
+                    pluginData.id(v.getId());
+                    pluginData.name(v.getName());
+                    pluginData.config(v.getConfig());
+                    pluginData.role(v.getRole());
+                    pluginData.enabled(v.getEnabled());
 
-        return pluginData.build();
+                    return pluginData.build();
+                })
+                .orElse(null);
     }
 
 }
diff --git 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/SelectorTransfer.java
 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/SelectorTransfer.java
deleted file mode 100644
index 9d17b52..0000000
--- 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/transfer/SelectorTransfer.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shenyu.admin.transfer;
-
-import org.apache.shenyu.admin.model.entity.SelectorDO;
-import org.apache.shenyu.common.dto.SelectorData;
-
-/**
- * The interface Plugin transfer.
- */
-public enum SelectorTransfer {
-
-    /**
-     * The constant INSTANCE.
-     */
-    INSTANCE;
-
-    /**
-     * Map to data selector data.
-     *
-     * @param selectorDO the selector do
-     * @return the selector data
-     */
-    public SelectorData mapToData(final SelectorDO selectorDO) {
-        if (selectorDO == null) {
-            return null;
-        }
-
-        SelectorData.SelectorDataBuilder selectorData = SelectorData.builder();
-
-        selectorData.id(selectorDO.getId());
-        selectorData.pluginId(selectorDO.getPluginId());
-        selectorData.name(selectorDO.getName());
-        selectorData.matchMode(selectorDO.getMatchMode());
-        selectorData.type(selectorDO.getType());
-        selectorData.sort(selectorDO.getSort());
-        selectorData.enabled(selectorDO.getEnabled());
-        selectorData.continued(selectorDO.getContinued());
-        selectorData.handle(selectorDO.getHandle());
-
-        return selectorData.build();
-    }
-
-}

Reply via email to