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-starter-redis/src/main/java/org/springblade/core/redis/lock/RedisLock.java | 82 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 82 insertions(+), 0 deletions(-) diff --git a/Source/BladeX-Tool/blade-starter-redis/src/main/java/org/springblade/core/redis/lock/RedisLock.java b/Source/BladeX-Tool/blade-starter-redis/src/main/java/org/springblade/core/redis/lock/RedisLock.java new file mode 100644 index 0000000..d8d20c6 --- /dev/null +++ b/Source/BladeX-Tool/blade-starter-redis/src/main/java/org/springblade/core/redis/lock/RedisLock.java @@ -0,0 +1,82 @@ +/* + * 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.redis.lock; + +import java.lang.annotation.*; +import java.util.concurrent.TimeUnit; + +/** + * 鍒嗗竷寮忛攣娉ㄨВ锛宺edisson锛屾敮鎸佺殑閿佺殑绉嶇被鏈夊緢澶氾紝閫傚悎娉ㄨВ褰㈠紡鐨勫彧鏈夐噸鍏ラ攣銆佸叕骞抽攣 + * + * <p> + * 1. 鍙噸鍏ラ攣锛圧eentrant Lock锛� + * 2. 鍏钩閿侊紙Fair Lock锛� + * 3. 鑱旈攣锛圡ultiLock锛� + * 4. 绾㈤攣锛圧edLock锛� + * 5. 璇诲啓閿侊紙ReadWriteLock锛� + * </p> + * + * @author L.cm + */ +@Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.METHOD) +@Documented +public @interface RedisLock { + + /** + * 鍒嗗竷寮忛攣鐨� key锛屽繀椤伙細璇蜂繚鎸佸敮涓�鎬� + * + * @return key + */ + String value(); + + /** + * 鍒嗗竷寮忛攣鍙傛暟锛屽彲閫夛紝鏀寔 spring el # 璇诲彇鏂规硶鍙傛暟鍜� @ 璇诲彇 spring bean + * + * @return param + */ + String param() default ""; + + /** + * 绛夊緟閿佽秴鏃舵椂闂达紝榛樿30 + * + * @return int + */ + long waitTime() default 30; + + /** + * 鑷姩瑙i攣鏃堕棿锛岃嚜鍔ㄨВ閿佹椂闂翠竴瀹氬緱澶т簬鏂规硶鎵ц鏃堕棿锛屽惁鍒欎細瀵艰嚧閿佹彁鍓嶉噴鏀撅紝榛樿100 + * + * @return int + */ + long leaseTime() default 100; + + /** + * 鏃堕棿鍗曟俯锛岄粯璁や负绉� + * + * @return 鏃堕棿鍗曚綅 + */ + TimeUnit timeUnit() default TimeUnit.SECONDS; + + /** + * 榛樿鍏钩閿� + * + * @return LockType + */ + LockType type() default LockType.FAIR; +} -- Gitblit v1.9.3