From 9acde1cb1e35e26c98ac20e272edb52297bcb613 Mon Sep 17 00:00:00 2001 From: liuy <37787198+LiuyCodes@users.noreply.github.com> Date: Thu, 15 May 2025 10:23:05 +0800 Subject: [PATCH] =?UTF-8?q?feat(nifi-client):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=8F=82=E6=95=B0=E4=B8=8A=E4=B8=8B=E6=96=87?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E5=B9=B6=E4=BC=98=E5=8C=96=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=E5=91=BD=E5=90=8D-=20=E5=9C=A8=20NifiClient=20=E4=B8=AD?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20delete=20=E6=96=B9=E6=B3=95=E6=94=AF?= =?UTF-8?q?=E6=8C=81=20DELETE=20=E8=AF=B7=E6=B1=82=20-=20=E5=9C=A8=20NifiA?= =?UTF-8?q?piService=20=E4=B8=AD=E5=AE=9E=E7=8E=B0=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E4=B8=8A=E4=B8=8B=E6=96=87=E7=9A=84=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=20-=20=E4=BC=98=E5=8C=96=E6=A8=A1=E5=9E=8B=E7=B1=BB?= =?UTF-8?q?=E5=91=BD=E5=90=8D=EF=BC=8C=E6=8F=90=E9=AB=98=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E5=8F=AF=E8=AF=BB=E6=80=A7=20-=20=E6=9B=B4=E6=96=B0=E5=8F=82?= =?UTF-8?q?=E6=95=B0=E4=B8=8A=E4=B8=8B=E6=96=87=E7=9B=B8=E5=85=B3=20API=20?= =?UTF-8?q?=E8=B0=83=E7=94=A8=E8=B7=AF=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzya/frame/nifi/client/NifiClient.java | 32 +++++++++++++++---- .../{Component.java => Component3.java} | 4 +-- .../{Parameter.java => Parameter2.java} | 2 +- .../ParameterContextsJoin.java | 2 +- .../{Parameters.java => Parameters2.java} | 4 +-- .../{Component.java => Component4.java} | 2 +- .../{Component2.java => Component5.java} | 2 +- .../processgrouproot/ParameterContext.java | 2 +- .../model/processgrouproot/ProcessGroups.java | 2 +- .../{Component.java => Component6.java} | 2 +- .../ParameterContext.java | 2 +- .../ParameterContextsResult.java | 2 +- .../resultparametercontexts/Parameters.java | 2 +- .../frame/nifi/service/NifiApiService.java | 21 +++++++++--- 14 files changed, 55 insertions(+), 26 deletions(-) rename fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/{Component.java => Component3.java} (79%) rename fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/{Parameter.java => Parameter2.java} (88%) rename fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/{Parameters.java => Parameters2.java} (66%) rename fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/{Component.java => Component4.java} (97%) rename fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/{Component2.java => Component5.java} (83%) rename fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/{Component.java => Component6.java} (92%) diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/client/NifiClient.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/client/NifiClient.java index c441151f..58748595 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/client/NifiClient.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/client/NifiClient.java @@ -6,17 +6,14 @@ import okhttp3.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import javax.net.ssl.SSLContext; -import javax.net.ssl.SSLSocketFactory; -import javax.net.ssl.TrustManager; -import javax.net.ssl.X509TrustManager; import java.io.IOException; import java.nio.charset.StandardCharsets; -import java.security.SecureRandom; -import java.security.cert.X509Certificate; +import java.util.Map; import java.util.concurrent.atomic.AtomicReference; /** + * nifi客户端请求处理 + * * @Author:liuyang * @Package:com.hzya.frame.nifi.client * @Project:fw-nifi @@ -68,6 +65,27 @@ public class NifiClient { }); } + public T delete(String path, Class responseType) throws IOException { + return executeRequestWithRetry(() -> { + Request request = new Request.Builder().url(config.getApiUrl() + path).delete().header("Authorization", "Bearer " + accessToken.get()).build(); + return executeRequest(request, responseType); + }); + } + + public T delete(String path, Map queryParams, Class responseType) throws IOException { + // 构建 URL 并添加查询参数 + HttpUrl.Builder urlBuilder = HttpUrl.parse(config.getApiUrl() + path).newBuilder(); + if (queryParams != null) { + queryParams.forEach(urlBuilder::addQueryParameter); + } + String url = urlBuilder.build().toString(); + + return executeRequestWithRetry(() -> { + Request request = new Request.Builder().url(url).delete().header("Authorization", "Bearer " + accessToken.get()).build(); + return executeRequest(request, responseType); + }); + } + private T executeRequestWithRetry(IOExceptionRunnable runnable) throws IOException { int maxRetries = 2; for (int attempt = 0; attempt < maxRetries; attempt++) { @@ -78,7 +96,7 @@ public class NifiClient { if (attempt == maxRetries - 1 || !isTokenExpiredError(e)) { throw e; } - System.out.println("令牌可能已过期,请刷新并重试。。。"); + System.out.println("令牌可能已过期,请刷新并重试..."); try { accessToken.set(getAccessToken()); tokenIssueTime = System.currentTimeMillis(); diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Component.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Component3.java similarity index 79% rename from fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Component.java rename to fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Component3.java index c88f7cd2..fe8c40a1 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Component.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Component3.java @@ -11,7 +11,7 @@ import java.util.List; * @website http://www.bejson.com/java2pojo/ */ @Data -public class Component { +public class Component3 { private String name; - private List parameters; + private List parameters; } \ No newline at end of file diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Parameter.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Parameter2.java similarity index 88% rename from fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Parameter.java rename to fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Parameter2.java index 3af1acf3..42762df1 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Parameter.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Parameter2.java @@ -3,7 +3,7 @@ package com.hzya.frame.nifi.model.joinparametercontexts; import lombok.Data; @Data -public class Parameter { +public class Parameter2 { private String name; private String value; private boolean sensitive; diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/ParameterContextsJoin.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/ParameterContextsJoin.java index 1516477d..558a3b0a 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/ParameterContextsJoin.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/ParameterContextsJoin.java @@ -5,5 +5,5 @@ import lombok.Data; @Data public class ParameterContextsJoin { private Revision revision; - private Component component; + private Component3 component; } \ No newline at end of file diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Parameters.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Parameters2.java similarity index 66% rename from fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Parameters.java rename to fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Parameters2.java index 024b66e1..ff6167d2 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Parameters.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/joinparametercontexts/Parameters2.java @@ -6,6 +6,6 @@ package com.hzya.frame.nifi.model.joinparametercontexts; import lombok.Data; @Data -public class Parameters { - private Parameter parameter; +public class Parameters2 { + private Parameter2 parameter; } \ No newline at end of file diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/Component.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/Component4.java similarity index 97% rename from fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/Component.java rename to fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/Component4.java index 5e79e2af..5ae41fa7 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/Component.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/Component4.java @@ -3,7 +3,7 @@ package com.hzya.frame.nifi.model.processgrouproot; import lombok.Data; @Data -public class Component { +public class Component4 { private String id; private String versionedComponentId; private String parentGroupId; diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/Component2.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/Component5.java similarity index 83% rename from fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/Component2.java rename to fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/Component5.java index 16164c5b..a9c5b8c6 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/Component2.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/Component5.java @@ -3,7 +3,7 @@ package com.hzya.frame.nifi.model.processgrouproot; import lombok.Data; @Data -public class Component2 { +public class Component5 { private String id; private String name; } \ No newline at end of file diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/ParameterContext.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/ParameterContext.java index fe77be98..ad196cf8 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/ParameterContext.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/ParameterContext.java @@ -14,5 +14,5 @@ import lombok.Data; public class ParameterContext { private String id; private Permissions permissions; - private Component2 component; + private Component5 component; } diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/ProcessGroups.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/ProcessGroups.java index ac1e25d4..fbebef08 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/ProcessGroups.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/processgrouproot/ProcessGroups.java @@ -12,7 +12,7 @@ public class ProcessGroups { private Position position; private Permissions permissions; private List bulletins; - private Component component; + private Component4 component; private Status status; private String runningCount; private String stoppedCount; diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/Component.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/Component6.java similarity index 92% rename from fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/Component.java rename to fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/Component6.java index 7bd81976..ce54a623 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/Component.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/Component6.java @@ -5,7 +5,7 @@ import lombok.Data; import java.util.List; @Data -public class Component { +public class Component6 { private String name; private List parameters; private List boundProcessGroups; diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/ParameterContext.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/ParameterContext.java index 7b745bbf..752d243c 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/ParameterContext.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/ParameterContext.java @@ -6,5 +6,5 @@ import lombok.Data; public class ParameterContext { private String id; private Permissions permissions; - private Component component; + private Component6 component; } \ No newline at end of file diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/ParameterContextsResult.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/ParameterContextsResult.java index 2611c045..0f7ae0a1 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/ParameterContextsResult.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/ParameterContextsResult.java @@ -8,5 +8,5 @@ public class ParameterContextsResult { private String id; private String uri; private Permissions permissions; - private Component component; + private Component6 component; } \ No newline at end of file diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/Parameters.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/Parameters.java index 9c85a6b9..a26fe39b 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/Parameters.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/model/resultparametercontexts/Parameters.java @@ -4,6 +4,6 @@ import lombok.Data; @Data public class Parameters { - private boolean canWrite; + private String canWrite; private Parameter parameter; } \ No newline at end of file diff --git a/fw-nifi/src/main/java/com/hzya/frame/nifi/service/NifiApiService.java b/fw-nifi/src/main/java/com/hzya/frame/nifi/service/NifiApiService.java index 1e98eb96..5241fd01 100644 --- a/fw-nifi/src/main/java/com/hzya/frame/nifi/service/NifiApiService.java +++ b/fw-nifi/src/main/java/com/hzya/frame/nifi/service/NifiApiService.java @@ -9,6 +9,8 @@ import com.hzya.frame.nifi.model.resultparametercontexts.ParameterContextsResult import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.Map; + /** * nifi api 服务类 * @@ -58,13 +60,9 @@ public class NifiApiService { * 更新参数上下文 */ public ParameterContextsResult updateParameterContexts(ParameterContextsResult parameterContextsJoin) throws Exception { - return client.post(StrUtil.format("/parameter-contexts/{contextId}/update-requests", parameterContextsJoin.getId()), parameterContextsJoin, ParameterContextsResult.class); + return client.post(StrUtil.format("/parameter-contexts/{}/update-requests", parameterContextsJoin.getId()), parameterContextsJoin, ParameterContextsResult.class); } - /** - * 删除参数上下文 - */ - /** * 查询参数上下文 */ @@ -72,4 +70,17 @@ public class NifiApiService { return client.get(StrUtil.format("/parameter-contexts/{}", paramContextsId), ParameterContextsResult.class); } + /** + * 删除参数上下文 + */ + public void deleteParameterContexts(String paramContextsId) throws Exception { + client.delete(StrUtil.format("/parameter-contexts/{}", paramContextsId), ParameterContextsResult.class); + } + + /** + * 删除参数上下文,待query参数 + */ + public ParameterContextsResult deleteParameterContexts(String id, Map queryParams) throws Exception { + return client.delete(StrUtil.format("/parameter-contexts/{}", id), queryParams, ParameterContextsResult.class); + } } \ No newline at end of file