From 80b6cbfc9c861469146318d0b3dd5f8b8b525b8a Mon Sep 17 00:00:00 2001
From: xiejun <xiejun@vci-tech.com>
Date: 星期五, 01 十一月 2024 15:11:19 +0800
Subject: [PATCH] Revert "集成获取mdm分发通用数据格式接口集成"

---
 Source/BladeX-Tool/blade-core-tool/src/main/java/org/springblade/core/tool/support/Try.java |   88 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 88 insertions(+), 0 deletions(-)

diff --git a/Source/BladeX-Tool/blade-core-tool/src/main/java/org/springblade/core/tool/support/Try.java b/Source/BladeX-Tool/blade-core-tool/src/main/java/org/springblade/core/tool/support/Try.java
new file mode 100644
index 0000000..c453b50
--- /dev/null
+++ b/Source/BladeX-Tool/blade-core-tool/src/main/java/org/springblade/core/tool/support/Try.java
@@ -0,0 +1,88 @@
+package org.springblade.core.tool.support;
+
+import org.springblade.core.tool.utils.Exceptions;
+import org.springframework.lang.Nullable;
+
+import java.util.Objects;
+import java.util.function.Consumer;
+import java.util.function.Function;
+import java.util.function.Supplier;
+
+/**
+ * Lambda 鍙楁寮傚父澶勭悊
+ * https://segmentfault.com/a/1190000007832130
+ *
+ * @author Chill
+ */
+public class Try {
+
+	public static <T, R> Function<T, R> of(UncheckedFunction<T, R> mapper) {
+		Objects.requireNonNull(mapper);
+		return t -> {
+			try {
+				return mapper.apply(t);
+			} catch (Exception e) {
+				throw Exceptions.unchecked(e);
+			}
+		};
+	}
+
+	public static <T> Consumer<T> of(UncheckedConsumer<T> mapper) {
+		Objects.requireNonNull(mapper);
+		return t -> {
+			try {
+				mapper.accept(t);
+			} catch (Exception e) {
+				throw Exceptions.unchecked(e);
+			}
+		};
+	}
+
+	public static <T> Supplier<T> of(UncheckedSupplier<T> mapper) {
+		Objects.requireNonNull(mapper);
+		return () -> {
+			try {
+				return mapper.get();
+			} catch (Exception e) {
+				throw Exceptions.unchecked(e);
+			}
+		};
+	}
+
+	@FunctionalInterface
+	public interface UncheckedFunction<T, R> {
+		/**
+		 * apply
+		 *
+		 * @param t
+		 * @return
+		 * @throws Exception
+		 */
+		@Nullable
+		R apply(@Nullable T t) throws Exception;
+	}
+
+	@FunctionalInterface
+	public interface UncheckedConsumer<T> {
+		/**
+		 * accept
+		 *
+		 * @param t
+		 * @throws Exception
+		 */
+		@Nullable
+		void accept(@Nullable T t) throws Exception;
+	}
+
+	@FunctionalInterface
+	public interface UncheckedSupplier<T> {
+		/**
+		 * get
+		 *
+		 * @return
+		 * @throws Exception
+		 */
+		@Nullable
+		T get() throws Exception;
+	}
+}

--
Gitblit v1.9.3