From 012235d05d8dc7c2decdc7229d93033b0399ecbb Mon Sep 17 00:00:00 2001
From: xiejun <xiejun@vci-tech.com>
Date: 星期日, 10 十一月 2024 15:49:53 +0800
Subject: [PATCH] 集成获取mdm分发通用数据格式接口集成
---
Source/BladeX-Tool/blade-starter-http/src/main/java/org/springblade/core/http/FormBuilder.java | 68 ++++++++++++++++++++++++++++++++++
1 files changed, 68 insertions(+), 0 deletions(-)
diff --git a/Source/BladeX-Tool/blade-starter-http/src/main/java/org/springblade/core/http/FormBuilder.java b/Source/BladeX-Tool/blade-starter-http/src/main/java/org/springblade/core/http/FormBuilder.java
new file mode 100644
index 0000000..8c0c9a6
--- /dev/null
+++ b/Source/BladeX-Tool/blade-starter-http/src/main/java/org/springblade/core/http/FormBuilder.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright (c) 2018-2028, DreamLu All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: DreamLu 鍗㈡槬姊� (596392912@qq.com)
+ */
+package org.springblade.core.http;
+
+import okhttp3.FormBody;
+
+import javax.annotation.Nullable;
+import java.util.Map;
+
+/**
+ * 琛ㄥ崟鏋勯�犲櫒
+ *
+ * @author L.cm
+ */
+public class FormBuilder {
+ private final HttpRequest request;
+ private final FormBody.Builder formBuilder;
+
+ FormBuilder(HttpRequest request) {
+ this.request = request;
+ this.formBuilder = new FormBody.Builder();
+ }
+
+ public FormBuilder add(String name, @Nullable Object value) {
+ this.formBuilder.add(name, HttpRequest.handleValue(value));
+ return this;
+ }
+
+ public FormBuilder addMap(@Nullable Map<String, Object> formMap) {
+ if (formMap != null && !formMap.isEmpty()) {
+ formMap.forEach(this::add);
+ }
+ return this;
+ }
+
+ public FormBuilder addEncoded(String name, @Nullable Object encodedValue) {
+ this.formBuilder.addEncoded(name, HttpRequest.handleValue(encodedValue));
+ return this;
+ }
+
+ public HttpRequest build() {
+ FormBody formBody = formBuilder.build();
+ this.request.form(formBody);
+ return this.request;
+ }
+
+ public Exchange execute() {
+ return this.build().execute();
+ }
+
+ public AsyncCall async() {
+ return this.build().async();
+ }
+}
--
Gitblit v1.9.3