This is an automated email from the ASF dual-hosted git repository.
hefengen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shenyu.git
The following commit(s) were added to refs/heads/master by this push:
new e93a35b45 <ISSUE #4928>Fix the error that occurred when submitting
'unpublished' to apidoc. (#4929)
e93a35b45 is described below
commit e93a35b456c400461f2999c350a160e5fc0dd7b2
Author: lianjunwei <[email protected]>
AuthorDate: Wed Aug 2 09:11:32 2023 +0800
<ISSUE #4928>Fix the error that occurred when submitting 'unpublished' to
apidoc. (#4929)
* apidoc sql
* refact
* commit
* [Task] Shenyu-admin: Fix API document failed to build because of NPE.
* [Task] Shenyu-admin: Fix API document failed to build because of NPE.
* solve conficts,modify LICENSE.
* delete useless code.
* delete useless code.
* commit
* [ISSUE #3843]admin apidoc fix: the required attribute prompt is incorrect
when micro service parameter uses "@ApiModelProperty".
* commit
* [shenyu-examples]add swagger to the example project to test the apidoc
function of the gateway management system.
* commit
* commit
* commit
* [ISSUE #4690]Supports gzip compression in response to HTTP requests.
* [examples]Add Swagger sample project to demonstrate automatic pull
interface documentation.
* delete exapmple
* delete useless code.
* delete useless code.
* Fix the SQL error of creating tag.
* fix:The operation 'unpublished' failed for any apidoc.
* commit
* commit
* commit
* commit
* commit
* commit
* fix NPE.
* fix test case.
* unregister apidoc support more rpcType.
* fix code style.
* code style.
* code style.
* fix:No operations allowed after connection closed.
* reset yml.
* swagger apidoc default unpublish.
* When modifying apidoc, it is supported to delete registered apis, but not
when creating.
---------
Co-authored-by: lianjunwei <[email protected]>
Co-authored-by: dragon-zhang <[email protected]>
Co-authored-by: xiaoyu <[email protected]>
---
.../apache/shenyu/admin/mapper/SelectorMapper.java | 4 +-
.../shenyu/admin/service/SelectorService.java | 50 ++++++++++----
.../shenyu/admin/service/impl/ApiServiceImpl.java | 29 ++++----
.../admin/service/impl/SelectorServiceImpl.java | 23 ++++++-
.../admin/service/manager/impl/DocManagerImpl.java | 2 +-
.../shenyu/admin/mapper/SelectorMapperTest.java | 8 +--
.../shenyu/admin/service/SelectorServiceTest.java | 79 +++++++++++-----------
7 files changed, 120 insertions(+), 75 deletions(-)
diff --git
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/mapper/SelectorMapper.java
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/mapper/SelectorMapper.java
index 28465d9ed..6f58a5291 100644
---
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/mapper/SelectorMapper.java
+++
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/mapper/SelectorMapper.java
@@ -88,9 +88,9 @@ public interface SelectorMapper extends ExistProvider {
* select select by name.
*
* @param name the name
- * @return selector do
+ * @return selector do list
*/
- SelectorDO selectByName(String name);
+ List<SelectorDO> selectByName(String name);
/**
* Find by name and plugin id selector do.
diff --git
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/SelectorService.java
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/SelectorService.java
index e97c720d4..e2af7567a 100644
---
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/SelectorService.java
+++
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/SelectorService.java
@@ -36,7 +36,7 @@ import java.util.Objects;
* this is selector service.
*/
public interface SelectorService extends PageService<SelectorQueryCondition,
SelectorVO> {
-
+
/**
* Register string.
*
@@ -44,7 +44,7 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return the string
*/
String registerDefault(SelectorDTO selectorDTO);
-
+
/**
* handler selector need upstream check.
*
@@ -54,7 +54,7 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return the id of selector.
*/
String registerDefault(MetaDataRegisterDTO dto, String pluginName, String
selectorHandler);
-
+
/**
* create or update selector.
*
@@ -73,7 +73,7 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
}
return StringUtils.isEmpty(selectorDTO.getId()) ? create(selectorDTO)
: update(selectorDTO);
}
-
+
/**
* create selector.
* <ul>
@@ -87,7 +87,7 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return rows int
*/
int create(SelectorDTO selectorDTO);
-
+
/**
* update selector.
*
@@ -95,7 +95,7 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return rows int
*/
int update(SelectorDTO selectorDTO);
-
+
/**
* update selective selector.
*
@@ -103,7 +103,7 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return rows int
*/
int updateSelective(SelectorDO selectorDO);
-
+
/**
* delete selectors.
*
@@ -111,7 +111,7 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return rows int
*/
int delete(List<String> ids);
-
+
/**
* find selector by id.
*
@@ -119,15 +119,26 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return {@linkplain SelectorVO}
*/
SelectorVO findById(String id);
-
+
/**
* find selector by name.
*
* @param name the name
* @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);
+ /**
+ * find selector list by name.
+ *
+ * @param name name
+ * @return list
+ */
+ List<SelectorDO> findListByName(String name);
+
/**
* Find by name and plugin id selector do.
*
@@ -136,7 +147,16 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return the selector do
*/
SelectorDO findByNameAndPluginName(String name, String pluginName);
-
+
+ /**
+ * Find selectorDO list by name and plugin name list.
+ *
+ * @param name name
+ * @param pluginNames pluginNames
+ * @return selectorDO list
+ */
+ List<SelectorDO> findByNameAndPluginNames(String name, List<String>
pluginNames);
+
/**
* Build by name selector data.
*
@@ -144,7 +164,7 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return the selector data
*/
SelectorData buildByName(String name);
-
+
/**
* Build by name selector data.
*
@@ -153,7 +173,7 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return the selector data
*/
SelectorData buildByName(String name, String pluginName);
-
+
/**
* find page of selector by query.
*
@@ -161,7 +181,7 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return {@linkplain CommonPager}
*/
CommonPager<SelectorVO> listByPageWithPermission(SelectorQuery
selectorQuery);
-
+
/**
* find page of selector by query.
*
@@ -169,7 +189,7 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return CommonPager
*/
CommonPager<SelectorVO> listByPage(SelectorQuery selectorQuery);
-
+
/**
* Find by plugin id list.
*
@@ -177,7 +197,7 @@ public interface SelectorService extends
PageService<SelectorQueryCondition, Sel
* @return the list
*/
List<SelectorData> findByPluginId(String pluginId);
-
+
/**
* List all list.
*
diff --git
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/ApiServiceImpl.java
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/ApiServiceImpl.java
index 9bf241ffe..d6c6e6d51 100644
---
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/ApiServiceImpl.java
+++
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/ApiServiceImpl.java
@@ -18,6 +18,7 @@
package org.apache.shenyu.admin.service.impl;
import com.google.common.collect.Lists;
+import java.util.ArrayList;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import
org.apache.shenyu.admin.disruptor.RegisterClientServerDisruptorPublisher;
@@ -27,6 +28,7 @@ import org.apache.shenyu.admin.mapper.TagRelationMapper;
import org.apache.shenyu.admin.model.bean.DocItem;
import org.apache.shenyu.admin.model.dto.ApiDTO;
import org.apache.shenyu.admin.model.entity.ApiDO;
+import org.apache.shenyu.admin.model.entity.SelectorDO;
import org.apache.shenyu.admin.model.entity.TagDO;
import org.apache.shenyu.admin.model.entity.TagRelationDO;
import org.apache.shenyu.admin.model.page.CommonPager;
@@ -39,6 +41,7 @@ import org.apache.shenyu.admin.model.vo.RuleVO;
import org.apache.shenyu.admin.model.vo.TagVO;
import org.apache.shenyu.admin.service.ApiService;
import org.apache.shenyu.common.enums.ApiSourceEnum;
+import org.apache.shenyu.common.enums.PluginEnum;
import org.apache.shenyu.common.utils.JsonUtils;
import org.apache.shenyu.common.utils.ListUtil;
import org.apache.shenyu.admin.service.MetaDataService;
@@ -125,7 +128,7 @@ public class ApiServiceImpl implements ApiService {
if (ApiStateEnum.PUBLISHED.getState() == apiDO.getState()) {
register(apiDO);
} else if (ApiStateEnum.OFFLINE.getState() == apiDO.getState()) {
- unregister(apiDO);
+ removeRegister(apiDO);
}
}
return ShenyuResultMessage.UPDATE_SUCCESS;
@@ -156,14 +159,12 @@ public class ApiServiceImpl implements ApiService {
}
if (ApiStateEnum.PUBLISHED.getState() == apiDO.getState()) {
register(apiDO);
- } else if (ApiStateEnum.OFFLINE.getState() == apiDO.getState()) {
- unregister(apiDO);
}
}
return ShenyuResultMessage.CREATE_SUCCESS;
}
- private void unregister(final ApiDO apiDO) {
+ private void removeRegister(final ApiDO apiDO) {
final String path = apiDO.getApiPath();
RuleQueryCondition condition = new RuleQueryCondition();
condition.setKeyword(path);
@@ -176,14 +177,18 @@ public class ApiServiceImpl implements ApiService {
.collect(Collectors.toList()));
}
//clean selector
- Optional.ofNullable(selectorService.findByName(apiDO.getContextPath()))
- .ifPresent(selectorDO -> {
- final String selectorId = selectorDO.getId();
- final List<RuleData> data =
ruleService.findBySelectorId(selectorId);
- if (CollectionUtils.isEmpty(data)) {
- selectorService.delete(Lists.newArrayList(selectorId));
- }
- });
+ List<SelectorDO> selectorDOList =
selectorService.findByNameAndPluginNames(apiDO.getContextPath(),
PluginEnum.getUpstreamNames());
+ ArrayList<String> selectorIds = Lists.newArrayList();
+
Optional.ofNullable(selectorDOList).orElseGet(ArrayList::new).stream().forEach(selectorDO
-> {
+ final String selectorId = selectorDO.getId();
+ final List<RuleData> data =
ruleService.findBySelectorId(selectorId);
+ if (CollectionUtils.isEmpty(data)) {
+ selectorIds.add(selectorId);
+ }
+ });
+ if (CollectionUtils.isNotEmpty(selectorIds)) {
+ selectorService.delete(selectorIds);
+ }
//clean metadata
Optional.ofNullable(metaDataService.findByPath(path))
.ifPresent(metaDataDO ->
metaDataService.delete(Lists.newArrayList(metaDataDO.getId())));
diff --git
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/SelectorServiceImpl.java
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/SelectorServiceImpl.java
index 06eeeed62..afcc8ef23 100644
---
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/SelectorServiceImpl.java
+++
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/SelectorServiceImpl.java
@@ -241,11 +241,17 @@ public class SelectorServiceImpl implements
SelectorService {
@Override
public SelectorDO findByName(final String name) {
+ List<SelectorDO> doList = selectorMapper.selectByName(name);
+ return CollectionUtils.isNotEmpty(doList) ? doList.get(0) : null;
+ }
+
+ @Override
+ public List<SelectorDO> findListByName(final String name) {
return selectorMapper.selectByName(name);
}
/**
- * Find by name and plugin id selector do.
+ * Find selectorDO by name and plugin name.
*
* @param name the name
* @param pluginName the plugin name
@@ -257,9 +263,22 @@ public class SelectorServiceImpl implements
SelectorService {
return selectorMapper.findByNameAndPluginId(name, pluginDO.getId());
}
+ @Override
+ public List<SelectorDO> findByNameAndPluginNames(final String name, final
List<String> pluginNames) {
+ final List<PluginDO> pluginDOList =
pluginMapper.selectByNames(pluginNames);
+ if (CollectionUtils.isEmpty(pluginDOList)) {
+ return Lists.newArrayList();
+ }
+ List<String> pluginIds = pluginDOList.stream().map(it ->
it.getId()).collect(Collectors.toList());
+ SelectorQuery selectorQuery = new SelectorQuery();
+ selectorQuery.setName(name);
+ selectorQuery.setPluginIds(pluginIds);
+ return selectorMapper.selectByQuery(selectorQuery);
+ }
+
@Override
public SelectorData buildByName(final String name) {
- return buildSelectorData(selectorMapper.selectByName(name));
+ return buildSelectorData(this.findByName(name));
}
/**
diff --git
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/manager/impl/DocManagerImpl.java
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/manager/impl/DocManagerImpl.java
index ec378407b..f65904606 100644
---
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/manager/impl/DocManagerImpl.java
+++
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/manager/impl/DocManagerImpl.java
@@ -112,7 +112,7 @@ public class DocManagerImpl implements DocManager {
.tags(Collections.singletonList(docInfo.getContextPath()))
.apiPath(docItem.getName())
.apiSource(ApiSourceEnum.SWAGGER.getValue())
- .state(ApiStateEnum.PUBLISHED.getState())
+ .state(ApiStateEnum.UNPUBLISHED.getState())
.apiOwner("admin")
.eventType(EventType.REGISTER)
.build();
diff --git
a/shenyu-admin/src/test/java/org/apache/shenyu/admin/mapper/SelectorMapperTest.java
b/shenyu-admin/src/test/java/org/apache/shenyu/admin/mapper/SelectorMapperTest.java
index 0aff02383..7a6f810a4 100644
---
a/shenyu-admin/src/test/java/org/apache/shenyu/admin/mapper/SelectorMapperTest.java
+++
b/shenyu-admin/src/test/java/org/apache/shenyu/admin/mapper/SelectorMapperTest.java
@@ -114,10 +114,10 @@ public final class SelectorMapperTest extends
AbstractSpringIntegrationTest {
SelectorDO selectorDO = buildSelectorDO();
int insert = selectorMapper.insert(selectorDO);
assertEquals(1, insert);
-
- SelectorDO selector =
selectorMapper.selectByName(selectorDO.getName());
- assertNotNull(selector);
- assertEquals(selectorDO.getName(), selector.getName());
+ List<SelectorDO> doList =
selectorMapper.selectByName(selectorDO.getName());
+ assertEquals(doList.size(), 1);
+ assertNotNull(doList.get(0));
+ assertEquals(selectorDO.getName(), doList.get(0).getName());
int delete = selectorMapper.delete(selectorDO.getId());
assertEquals(1, delete);
diff --git
a/shenyu-admin/src/test/java/org/apache/shenyu/admin/service/SelectorServiceTest.java
b/shenyu-admin/src/test/java/org/apache/shenyu/admin/service/SelectorServiceTest.java
index 021bce244..228871e71 100644
---
a/shenyu-admin/src/test/java/org/apache/shenyu/admin/service/SelectorServiceTest.java
+++
b/shenyu-admin/src/test/java/org/apache/shenyu/admin/service/SelectorServiceTest.java
@@ -82,79 +82,79 @@ import static org.mockito.Mockito.when;
@ExtendWith(MockitoExtension.class)
@MockitoSettings(strictness = Strictness.LENIENT)
public final class SelectorServiceTest {
-
+
@InjectMocks
private SelectorServiceImpl selectorService;
-
+
@Mock
private SelectorMapper selectorMapper;
-
+
@Mock
private SelectorConditionMapper selectorConditionMapper;
-
+
@Mock
private PluginMapper pluginMapper;
-
+
@Mock
private RuleMapper ruleMapper;
-
+
@Mock
private DataPermissionMapper dataPermissionMapper;
-
+
@Mock
private ApplicationEventPublisher eventPublisher;
-
+
@Mock
private SelectorEventPublisher selectorEventPublisher;
-
+
@BeforeEach
public void setUp() {
when(dataPermissionMapper.listByUserId("1")).thenReturn(Collections.singletonList(DataPermissionDO.buildPermissionDO(new
DataPermissionDTO())));
selectorService = new SelectorServiceImpl(selectorMapper,
selectorConditionMapper, pluginMapper, eventPublisher, selectorEventPublisher);
}
-
+
@Test
public void testRegister() {
publishEvent();
testRegisterCreate();
testRegisterUpdate();
}
-
+
@Test
public void testCreateOrUpdate() {
publishEvent();
testUpdate();
testCreate();
}
-
+
@Test
public void testDelete() {
final String correctId = "456";
-
+
// mock basic objects for delete.
SelectorDO mockedSelectorDO = buildSelectorDO();
PluginDO mockedPluginDO = buildPluginDO();
given(pluginMapper.selectByIds(Collections.singletonList(mockedSelectorDO.getPluginId()))).willReturn(Collections.singletonList(mockedPluginDO));
given(selectorMapper.selectByIdSet(Stream.of(correctId).collect(Collectors.toSet()))).willReturn(Collections.singletonList(mockedSelectorDO));
-
+
// mock for test if divide selector delete.
//
when(mockedPluginDO.getName()).thenReturn(PluginEnum.DIVIDE.getName());
// when(mockedSelectorDO.getName()).thenReturn("anyString");
-
+
// mock objects for test delete rule and ruleCondition.
List<RuleDO> mockedRuleDOList = mock(List.class);
given(ruleMapper.findBySelectorIds(Collections.singletonList(correctId))).willReturn(mockedRuleDOList);
-
+
// mock for test for-each statement.
// RuleDO mockedRuleDo = mock(RuleDO.class);
//
when(ruleMapper.deleteByIds(Collections.singletonList(mockedRuleDo.getId()))).thenReturn(1);
//
when(ruleConditionMapper.deleteByRuleIds(Collections.singletonList(mockedRuleDo.getId()))).thenReturn(1);
-
+
final List<String> ids = Collections.singletonList(correctId);
given(selectorMapper.deleteByIds(ids)).willReturn(ids.size());
assertEquals(selectorService.delete(ids), ids.size());
}
-
+
@Test
public void testFindById() {
SelectorDO selectorDO = buildSelectorDO();
@@ -162,20 +162,21 @@ public final class SelectorServiceTest {
SelectorVO selectorVO = this.selectorService.findById("123");
assertNotNull(selectorDO);
assertEquals(selectorVO.getId(), selectorDO.getId());
-
+
List<SelectorConditionVO> selectorConditions =
selectorVO.getSelectorConditions();
selectorConditions.forEach(selectorConditionVO ->
assertEquals(selectorConditionVO.getSelectorId(), selectorDO.getId()));
}
@Test
public void testFindByName() {
- SelectorDO selectorDO1 = buildSelectorDO();
-
given(this.selectorMapper.selectByName(eq("kuan"))).willReturn(selectorDO1);
+ List<SelectorDO> selectorDO1List =
Collections.singletonList(buildSelectorDO());
+
given(this.selectorMapper.selectByName(eq("kuan"))).willReturn(selectorDO1List);
SelectorDO selectorDO2 = this.selectorService.findByName("kuan");
assertNotNull(selectorDO2);
- assertEquals(selectorDO1.getId(), selectorDO2.getId());
+ assertEquals(selectorDO1List.size(), 1);
+ assertEquals(selectorDO1List.get(0).getId(), selectorDO2.getId());
}
-
+
@Test
public void testListByPage() {
final List<SelectorDO> selectorDOs = buildSelectorDOList();
@@ -185,14 +186,14 @@ public final class SelectorServiceTest {
assertThat(result, notNullValue());
assertEquals(selectorDOs.size(), result.getDataList().size());
}
-
+
@Test
public void testFindByPluginId() {
-
+
List<SelectorData> res = this.selectorService.findByPluginId("789");
res.forEach(selectorData -> assertEquals("789",
selectorData.getPluginId()));
}
-
+
@Test
public void testListAll() {
final List<SelectorDO> selectorDOs = buildSelectorDOList();
@@ -202,23 +203,23 @@ public final class SelectorServiceTest {
assertNotNull(dataList);
assertEquals(selectorDOs.size(), dataList.size());
}
-
+
@Test
public void testHandlerSelectorNeedUpstreamCheck() {
publishEvent();
-
+
// Test the situation where the selector cannot be found based on the
contextPath.
given(pluginMapper.selectByName("test")).willReturn(buildPluginDO());
assertNotNull(selectorService.registerDefault(buildMetaDataRegisterDTO(),
"test", ""));
}
-
+
private void testUpdate() {
SelectorDTO selectorDTO = buildSelectorDTO("456");
selectorDTO.setPluginId("789");
given(this.selectorMapper.updateSelective(any())).willReturn(1);
assertThat(this.selectorService.createOrUpdate(selectorDTO),
greaterThan(0));
}
-
+
private void testCreate() {
try (MockedStatic<JwtUtils> mocked = mockStatic(JwtUtils.class)) {
mocked.when(JwtUtils::getUserInfo)
@@ -229,7 +230,7 @@ public final class SelectorServiceTest {
assertThat(this.selectorService.createOrUpdate(selectorDTO),
greaterThan(0));
}
}
-
+
private void testRegisterCreate() {
SelectorDTO selectorDTO = buildSelectorDTO("");
SelectorDO selectorDO = SelectorDO.buildSelectorDO(selectorDTO);
@@ -237,26 +238,26 @@ public final class SelectorServiceTest {
assertNotNull(selectorId);
assertEquals(selectorId.length(), selectorDO.getId().length());
}
-
+
private void testRegisterUpdate() {
SelectorDTO selectorDTO = buildSelectorDTO("456");
String selectorId = this.selectorService.registerDefault(selectorDTO);
assertNotNull(selectorId);
assertEquals(selectorId, selectorDTO.getId());
}
-
+
private void publishEvent() {
PluginDO pluginDO = buildPluginDO();
given(this.pluginMapper.selectById(anyString())).willReturn(pluginDO);
}
-
+
private PluginDO buildPluginDO() {
PluginDO pluginDO = new PluginDO();
pluginDO.setName("test");
pluginDO.setId("789");
return pluginDO;
}
-
+
private SelectorDO buildSelectorDO() {
SelectorDTO selectorDTO = new SelectorDTO();
selectorDTO.setId("456");
@@ -277,7 +278,7 @@ public final class SelectorServiceTest {
selectorDO.setDateUpdated(now);
return selectorDO;
}
-
+
private SelectorDTO buildSelectorDTO(final String id) {
SelectorDTO selectorDTO = new SelectorDTO();
if (StringUtils.isNotBlank(id)) {
@@ -302,18 +303,18 @@ public final class SelectorServiceTest {
selectorDTO.setSelectorConditions(Arrays.asList(selectorConditionDTO1,
selectorConditionDTO2, selectorConditionDTO3));
return selectorDTO;
}
-
+
private List<SelectorDO> buildSelectorDOList() {
return Collections.singletonList(buildSelectorDO());
}
-
+
private SelectorQuery buildSelectorQuery() {
SelectorQuery selectorQuery = new SelectorQuery();
selectorQuery.setPluginId("789");
selectorQuery.setPageParameter(new PageParameter());
return selectorQuery;
}
-
+
private MetaDataRegisterDTO buildMetaDataRegisterDTO() {
MetaDataRegisterDTO metaDataRegisterDTO = new MetaDataRegisterDTO();
metaDataRegisterDTO.setAppName("test");