moremind commented on code in PR #5604:
URL: https://github.com/apache/shenyu/pull/5604#discussion_r1712529095


##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/mapper/SelectorMapper.java:
##########
@@ -44,13 +44,22 @@ public interface SelectorMapper extends ExistProvider {
     @Override
     Boolean existed(@Param("id") Serializable id);
 
+    /**
+     * select selector by id.
+     *
+     * @param id          primary key.
+     * @param namespaceId namespaceId.
+     * @return {@linkplain SelectorDO}
+     */
+    SelectorDO selectByIdAndNamespaceId(String id, String namespaceId);
+
     /**
      * select selector by id.
      *
      * @param id primary key.
      * @return {@linkplain SelectorDO}
      */
-    SelectorDO selectById(String id);
+    SelectorDO selectByOnlyId(String id);

Review Comment:
   just named selectById



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/model/entity/SelectorDO.java:
##########
@@ -393,14 +421,15 @@ public static SelectorData transFrom(final SelectorDO 
selectorDO, final String p
                 .conditionList(conditionDataList)
                 .matchRestful(selectorDO.getMatchRestful())
                 .beforeConditionList(beforeConditionDataList)
+                .namespaceId(selectorDO.getNamespaceId())
                 .build();
     }
-    
+
     /**
      * selector data transform.
      *
-     * @param selectorDO selector entity
-     * @param pluginName plugin name
+     * @param selectorDO        selector entity
+     * @param pluginName        plugin name

Review Comment:
   not change the code



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/controller/SelectorController.java:
##########
@@ -138,12 +143,12 @@ public ShenyuAdminResult batchEnabled(@Valid @RequestBody 
final BatchCommonDTO b
     /**
      * delete Selectors.
      *
-     * @param ids primary key.
+     * @param batchNamespaceCommonDTO batchNamespaceCommonDTO.
      * @return {@linkplain ShenyuAdminResult}
      */
     @DeleteMapping("/batch")
-    public ShenyuAdminResult deleteSelector(@RequestBody @NotEmpty final 
List<@NotBlank String> ids) {

Review Comment:
   you should delete selected ids in namespace



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/mapper/NamespacePluginRelMapper.java:
##########
@@ -65,20 +65,19 @@ public interface NamespacePluginRelMapper extends 
ExistProvider {
     /**
      * select plugin by namespacePluginId.
      *
-     * @param id    primary key.
+     * @param pluginId    primary key.
      * @param namespaceId namespace id.
      * @return {@linkplain PluginVO}
      */
-    NamespacePluginVO selectById(String id, String namespaceId);
+    NamespacePluginVO selectByPluginIdAndNamespaceId(String pluginId, String 
namespaceId);

Review Comment:
   this is id or pluginId?



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/SelectorService.java:
##########
@@ -107,55 +107,61 @@ default int createOrUpdate(SelectorDTO selectorDTO) {
     /**
      * delete selectors.
      *
-     * @param ids primary key.
+     * @param ids         primary key.
+     * @param namespaceId namespaceId.
      * @return rows int
      */
-    int delete(List<String> ids);
+    int delete(List<String> ids, String namespaceId);
 
     /**
      * find selector by id.
      *
-     * @param id primary key.
+     * @param id          primary key.
+     * @param namespaceId namespaceId.
      * @return {@linkplain SelectorVO}
      */
-    SelectorVO findById(String id);
+    SelectorVO findById(String id, String namespaceId);
 
     /**
      * find selector by name.
      *
-     * @param name the name
+     * @param name        the name
+     * @param namespaceId namespaceId.
+     *                    Therefore, it is recommended to: {@linkplain 
SelectorService#findListByName(java.lang.String, java.lang.String)}
      * @return selector do
      * @deprecated sice 2.6.0  Deprecated. By querying under this condition, 
multiple data are usually obtained.
-     *              Therefore, it is recommended to: {@linkplain 
SelectorService#findListByName(java.lang.String)}
      */
     @Deprecated
-    SelectorDO findByName(String name);
+    SelectorDO findByName(String name, String namespaceId);
 

Review Comment:
   change name



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/controller/SelectorController.java:
##########
@@ -138,12 +143,12 @@ public ShenyuAdminResult batchEnabled(@Valid @RequestBody 
final BatchCommonDTO b
     /**
      * delete Selectors.
      *
-     * @param ids primary key.
+     * @param batchNamespaceCommonDTO batchNamespaceCommonDTO.
      * @return {@linkplain ShenyuAdminResult}
      */
     @DeleteMapping("/batch")
-    public ShenyuAdminResult deleteSelector(@RequestBody @NotEmpty final 
List<@NotBlank String> ids) {

Review Comment:
   the api is error, the api is batch operation



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/SelectorService.java:
##########
@@ -107,55 +107,61 @@ default int createOrUpdate(SelectorDTO selectorDTO) {
     /**
      * delete selectors.
      *
-     * @param ids primary key.
+     * @param ids         primary key.
+     * @param namespaceId namespaceId.
      * @return rows int
      */
-    int delete(List<String> ids);
+    int delete(List<String> ids, String namespaceId);
 
     /**
      * find selector by id.
      *
-     * @param id primary key.
+     * @param id          primary key.
+     * @param namespaceId namespaceId.
      * @return {@linkplain SelectorVO}
      */
-    SelectorVO findById(String id);
+    SelectorVO findById(String id, String namespaceId);

Review Comment:
   named findByIdAndNamespaceId



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/SelectorService.java:
##########
@@ -107,55 +107,61 @@ default int createOrUpdate(SelectorDTO selectorDTO) {
     /**
      * delete selectors.
      *
-     * @param ids primary key.
+     * @param ids         primary key.
+     * @param namespaceId namespaceId.
      * @return rows int
      */
-    int delete(List<String> ids);
+    int delete(List<String> ids, String namespaceId);

Review Comment:
   change method name



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/model/event/plugin/BatchPluginDeletedEvent.java:
##########
@@ -31,14 +31,14 @@
  * BatchPluginDeletedEvent.
  */
 public class BatchPluginDeletedEvent extends BatchPluginChangedEvent {
-    
+
     private final List<String> deletedPluginIds;
-    
+
     /**
      * Create a new {@code PluginChangedEvent}.operator is unknown.
      *
-     * @param source   Current plugin state
-     * @param operator operator
+     * @param source      Current plugin state
+     * @param operator    operator

Review Comment:
   not change the comment



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/PluginServiceImpl.java:
##########
@@ -130,6 +135,12 @@ public String delete(final List<String> ids) {
         if (CollectionUtils.isEmpty(plugins)) {
             return AdminConstants.SYS_PLUGIN_ID_NOT_EXIST;
         }
+        Optional<PluginDO> exist = plugins.stream()
+                .filter(value -> 
!Objects.isNull(this.namespacePluginRelMapper.selectByPluginId(value.getId())))

Review Comment:
   use Objects.nonNull()



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/SelectorService.java:
##########
@@ -107,55 +107,61 @@ default int createOrUpdate(SelectorDTO selectorDTO) {
     /**
      * delete selectors.
      *
-     * @param ids primary key.
+     * @param ids         primary key.
+     * @param namespaceId namespaceId.
      * @return rows int
      */
-    int delete(List<String> ids);
+    int delete(List<String> ids, String namespaceId);
 
     /**
      * find selector by id.
      *
-     * @param id primary key.
+     * @param id          primary key.
+     * @param namespaceId namespaceId.
      * @return {@linkplain SelectorVO}
      */
-    SelectorVO findById(String id);
+    SelectorVO findById(String id, String namespaceId);
 
     /**
      * find selector by name.
      *
-     * @param name the name
+     * @param name        the name
+     * @param namespaceId namespaceId.
+     *                    Therefore, it is recommended to: {@linkplain 
SelectorService#findListByName(java.lang.String, java.lang.String)}
      * @return selector do
      * @deprecated sice 2.6.0  Deprecated. By querying under this condition, 
multiple data are usually obtained.
-     *              Therefore, it is recommended to: {@linkplain 
SelectorService#findListByName(java.lang.String)}
      */
     @Deprecated
-    SelectorDO findByName(String name);
+    SelectorDO findByName(String name, String namespaceId);
 
     /**
      * find selector list by name.
      *
-     * @param name name
+     * @param name        name
+     * @param namespaceId namespaceId.
      * @return list
      */
-    List<SelectorDO> findListByName(String name);
+    List<SelectorDO> findListByName(String name, String namespaceId);

Review Comment:
   change name



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/PluginServiceImpl.java:
##########
@@ -130,6 +135,12 @@ public String delete(final List<String> ids) {
         if (CollectionUtils.isEmpty(plugins)) {
             return AdminConstants.SYS_PLUGIN_ID_NOT_EXIST;
         }
+        Optional<PluginDO> exist = plugins.stream()
+                .filter(value -> 
!Objects.isNull(this.namespacePluginRelMapper.selectByPluginId(value.getId())))
+                .findAny();
+        if (exist.isPresent()) {

Review Comment:
   why findAny?



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/SelectorService.java:
##########
@@ -107,55 +107,61 @@ default int createOrUpdate(SelectorDTO selectorDTO) {
     /**
      * delete selectors.
      *
-     * @param ids primary key.
+     * @param ids         primary key.
+     * @param namespaceId namespaceId.
      * @return rows int
      */
-    int delete(List<String> ids);
+    int delete(List<String> ids, String namespaceId);
 
     /**
      * find selector by id.
      *
-     * @param id primary key.
+     * @param id          primary key.
+     * @param namespaceId namespaceId.
      * @return {@linkplain SelectorVO}
      */
-    SelectorVO findById(String id);
+    SelectorVO findById(String id, String namespaceId);
 
     /**
      * find selector by name.
      *
-     * @param name the name
+     * @param name        the name
+     * @param namespaceId namespaceId.
+     *                    Therefore, it is recommended to: {@linkplain 
SelectorService#findListByName(java.lang.String, java.lang.String)}
      * @return selector do
      * @deprecated sice 2.6.0  Deprecated. By querying under this condition, 
multiple data are usually obtained.
-     *              Therefore, it is recommended to: {@linkplain 
SelectorService#findListByName(java.lang.String)}
      */
     @Deprecated
-    SelectorDO findByName(String name);
+    SelectorDO findByName(String name, String namespaceId);
 
     /**
      * find selector list by name.
      *
-     * @param name name
+     * @param name        name
+     * @param namespaceId namespaceId.
      * @return list
      */
-    List<SelectorDO> findListByName(String name);
+    List<SelectorDO> findListByName(String name, String namespaceId);
 
     /**
      * Find by name and plugin id selector do.
      *
-     * @param name       the name
-     * @param pluginName the plugin name
+     * @param name        the name
+     * @param pluginName  the plugin name
+     * @param namespaceId the namespaceId
      * @return the selector do
      */
-    SelectorDO findByNameAndPluginName(String name, String pluginName);
+    SelectorDO findByNameAndPluginName(String name, String pluginName, String 
namespaceId);

Review Comment:
   change name



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/SelectorService.java:
##########
@@ -107,55 +107,61 @@ default int createOrUpdate(SelectorDTO selectorDTO) {
     /**
      * delete selectors.
      *
-     * @param ids primary key.
+     * @param ids         primary key.
+     * @param namespaceId namespaceId.
      * @return rows int
      */
-    int delete(List<String> ids);
+    int delete(List<String> ids, String namespaceId);
 
     /**
      * find selector by id.
      *
-     * @param id primary key.
+     * @param id          primary key.
+     * @param namespaceId namespaceId.
      * @return {@linkplain SelectorVO}
      */
-    SelectorVO findById(String id);
+    SelectorVO findById(String id, String namespaceId);
 
     /**
      * find selector by name.
      *
-     * @param name the name
+     * @param name        the name
+     * @param namespaceId namespaceId.
+     *                    Therefore, it is recommended to: {@linkplain 
SelectorService#findListByName(java.lang.String, java.lang.String)}
      * @return selector do
      * @deprecated sice 2.6.0  Deprecated. By querying under this condition, 
multiple data are usually obtained.
-     *              Therefore, it is recommended to: {@linkplain 
SelectorService#findListByName(java.lang.String)}
      */
     @Deprecated
-    SelectorDO findByName(String name);
+    SelectorDO findByName(String name, String namespaceId);
 
     /**
      * find selector list by name.
      *
-     * @param name name
+     * @param name        name
+     * @param namespaceId namespaceId.
      * @return list
      */
-    List<SelectorDO> findListByName(String name);
+    List<SelectorDO> findListByName(String name, String namespaceId);
 
     /**
      * Find by name and plugin id selector do.
      *
-     * @param name       the name
-     * @param pluginName the plugin name
+     * @param name        the name
+     * @param pluginName  the plugin name
+     * @param namespaceId the namespaceId
      * @return the selector do
      */
-    SelectorDO findByNameAndPluginName(String name, String pluginName);
+    SelectorDO findByNameAndPluginName(String name, String pluginName, String 
namespaceId);
 
     /**
      * findByNameAndPluginNameForUpdate.
      *
-     * @param name       name
-     * @param pluginName pluginName
+     * @param name        name
+     * @param pluginName  pluginName
+     * @param namespaceId namespaceId.
      * @return SelectorDO
      */
-    SelectorDO findByNameAndPluginNameForUpdate(String name, String 
pluginName);
+    SelectorDO findByNameAndPluginNameForUpdate(String name, String 
pluginName, String namespaceId);

Review Comment:
   change name



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/SelectorService.java:
##########
@@ -202,10 +210,11 @@ default int createOrUpdate(SelectorDTO selectorDTO) {
     /**
      * Find by plugin id list.
      *
-     * @param pluginId the plugin id
+     * @param pluginId    the plugin id
+     * @param namespaceId the namespaceId
      * @return the list
      */
-    List<SelectorData> findByPluginId(String pluginId);
+    List<SelectorData> findByPluginId(String pluginId, String namespaceId);

Review Comment:
   please modify the same question.



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/publish/NamespacePluginEventPublisher.java:
##########
@@ -77,9 +80,21 @@ public void onDeleted(final NamespacePluginVO 
namespacePluginVO) {
 
     @Override
     public void onDeleted(final Collection<NamespacePluginVO> namespacePlugin) 
{
-        publish(new BatchNamespacePluginChangedEvent(namespacePlugin, null, 
EventTypeEnum.PLUGIN_UPDATE, SessionUtil.visitorName()));
-        publisher.publishEvent(new DataChangedEvent(ConfigGroupEnum.PLUGIN, 
DataEventTypeEnum.UPDATE,
+        String namespaceId = ((Collection<?>) namespacePlugin)
+                .stream()
+                .map(NamespacePluginVO.class::cast)
+                .findFirst()
+                .map(NamespacePluginVO::getNamespaceId)
+                .orElse("");

Review Comment:
   why orElse("")???



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/DiscoveryUpstreamServiceImpl.java:
##########
@@ -154,7 +154,7 @@ public List<DiscoverySyncData> listAll() {
             if (StringUtils.hasLength(discoveryRelDO.getSelectorId())) {
                 String selectorId = discoveryRelDO.getSelectorId();
                 discoverySyncData.setSelectorId(selectorId);
-                SelectorDO selectorDO = selectorMapper.selectById(selectorId);
+                SelectorDO selectorDO = 
selectorMapper.selectByOnlyId(selectorId);

Review Comment:
   not change



##########
shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/UpstreamCheckService.java:
##########
@@ -437,7 +439,8 @@ public void fetchUpstreamData() {
         }
         Map<String, String> pluginMap = 
pluginDOList.stream().filter(Objects::nonNull)
                 .collect(Collectors.toMap(PluginDO::getId, PluginDO::getName, 
(value1, value2) -> value1));
-        final List<SelectorDO> selectorDOList = 
selectorMapper.findByPluginIds(new ArrayList<>(pluginMap.keySet()));
+        // todo:[To be refactored with namespace] Temporarily hardcode

Review Comment:
   if complete, please remove todo



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@shenyu.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to