mirror of
				https://github.com/continew-org/continew-starter.git
				synced 2025-10-30 23:00:11 +08:00 
			
		
		
		
	feat(core): ExceptionUtils 新增 exToThrow 方法
This commit is contained in:
		| @@ -24,6 +24,7 @@ import java.util.concurrent.CancellationException; | |||||||
| import java.util.concurrent.ExecutionException; | import java.util.concurrent.ExecutionException; | ||||||
| import java.util.concurrent.Future; | import java.util.concurrent.Future; | ||||||
| import java.util.function.Consumer; | import java.util.function.Consumer; | ||||||
|  | import java.util.function.Function; | ||||||
|  |  | ||||||
| /** | /** | ||||||
|  * 异常工具类 |  * 异常工具类 | ||||||
| @@ -107,6 +108,25 @@ public class ExceptionUtils { | |||||||
|         return exToDefault(exSupplier, defaultValue, null); |         return exToDefault(exSupplier, defaultValue, null); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |     /** | ||||||
|  |      * 如果有异常,抛出自定义异常 | ||||||
|  |      * | ||||||
|  |      * @param exSupplier      可能会出现异常的方法执行 | ||||||
|  |      * @param exceptionMapper 异常转换函数 | ||||||
|  |      * @param <T>             返回值类型 | ||||||
|  |      * @param <E>             自定义异常类型 | ||||||
|  |      * @return 执行结果 | ||||||
|  |      * @throws E 自定义异常 | ||||||
|  |      */ | ||||||
|  |     public static <T, E extends Exception> T exToThrow(ExSupplier<T> exSupplier, | ||||||
|  |                                                        Function<Exception, E> exceptionMapper) throws E { | ||||||
|  |         try { | ||||||
|  |             return exSupplier.get(); | ||||||
|  |         } catch (Exception e) { | ||||||
|  |             throw exceptionMapper.apply(e); | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  |  | ||||||
|     /** |     /** | ||||||
|      * 如果有异常,执行异常处理,返回默认值 |      * 如果有异常,执行异常处理,返回默认值 | ||||||
|      * |      * | ||||||
| @@ -140,5 +160,6 @@ public class ExceptionUtils { | |||||||
|          * @throws Exception / |          * @throws Exception / | ||||||
|          */ |          */ | ||||||
|         T get() throws Exception; |         T get() throws Exception; | ||||||
|  |  | ||||||
|     } |     } | ||||||
| } | } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user