diff options
| author | wangwei <[email protected]> | 2023-02-28 15:32:45 +0800 |
|---|---|---|
| committer | wangwei <[email protected]> | 2023-03-15 14:03:14 +0800 |
| commit | 91ff7cdde0d38b44e3c91b271267a8c3ac962fbd (patch) | |
| tree | a3a44cdbbb6fe571e972e122d46dbd3cf9680a9a | |
| parent | 40ea672f9d14e22e66a8b4a8099c886b6a3f9a7c (diff) | |
fix(knowledge): 取消删除接口LATEST的限制
| -rw-r--r-- | src/main/java/com/mesalab/services/service/impl/KnowledgeBaseServiceImpl.java | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/main/java/com/mesalab/services/service/impl/KnowledgeBaseServiceImpl.java b/src/main/java/com/mesalab/services/service/impl/KnowledgeBaseServiceImpl.java index 3730188c..428664af 100644 --- a/src/main/java/com/mesalab/services/service/impl/KnowledgeBaseServiceImpl.java +++ b/src/main/java/com/mesalab/services/service/impl/KnowledgeBaseServiceImpl.java @@ -137,24 +137,21 @@ public class KnowledgeBaseServiceImpl implements KnowledgeBaseService { @Override public BaseResult deleteKnowledge(String id) throws Exception { - - - boolean isExist = false; KnowledgeBase knowledgeBase = null; InterProcessMutex lock = new InterProcessMutex(client, ZK_LOCK_PATH); try { if (lock.acquire(10000, TimeUnit.SECONDS)) { List<KnowledgeBase> knowledgeBaseList = queryKnowledgeBaseList(); - for (int i = 0; i < knowledgeBaseList.size(); i++) { - knowledgeBase = knowledgeBaseList.get(i); - if (StringUtil.equals(id, knowledgeBase.getId()) && !StringUtil.equals(knowledgeBase.getVersion(), KnowledgeConstant.LATEST)) { - knowledgeBaseList.remove(i); - saveKnowledgeBaseList(knowledgeBaseList); - isExist = true; - break; + int originalSize = knowledgeBaseList.size(); + Iterator<KnowledgeBase> iterator = knowledgeBaseList.iterator(); + while (iterator.hasNext()) { + knowledgeBase = iterator.next(); + if (StringUtil.equals(id, knowledgeBase.getId())) { + iterator.remove(); } } - if (isExist) { + if (originalSize > knowledgeBaseList.size()) { + saveKnowledgeBaseList(knowledgeBaseList); String path = knowledgeBase.getPath(); Header header = new BasicHeader(KnowledgeConstant.TOKEN, hosConfig.getToken()); httpClientService.httpDelete(path, httpConfig.getServerResponseTimeOut(), header); |
