File tree 1 file changed +8
-3
lines changed
springboot-starter/src/main/java/com/codingapi/springboot/framework/trigger
1 file changed +8
-3
lines changed Original file line number Diff line number Diff line change 1
1
package com .codingapi .springboot .framework .trigger ;
2
2
3
+ import lombok .extern .slf4j .Slf4j ;
4
+
3
5
import java .lang .reflect .ParameterizedType ;
6
+ import java .util .ArrayList ;
4
7
import java .util .Iterator ;
5
8
import java .util .List ;
6
9
import java .util .Map ;
7
10
import java .util .concurrent .ConcurrentHashMap ;
8
- import java .util .concurrent .CopyOnWriteArrayList ;
9
11
10
12
11
13
/**
15
17
* Trigger是单独的消息数据不占用Event的通道。由于Event利用了Spring的事件底层,因此在大规模的事件情况下会堵塞spring的事件通道。
16
18
*/
17
19
@ SuppressWarnings ("all" )
20
+ @ Slf4j
18
21
public class TriggerContext {
19
22
20
23
public static TriggerContext getInstance () {
@@ -38,7 +41,7 @@ public void addTrigger(TriggerHandler handler){
38
41
Class <? extends Trigger > clazz = getTriggerClass (handler );
39
42
List <TriggerHandler > triggerList = this .triggers .get (clazz );
40
43
if (triggerList ==null ){
41
- triggerList = new CopyOnWriteArrayList <>();
44
+ triggerList = new ArrayList <>();
42
45
this .triggers .put (clazz ,triggerList );
43
46
}
44
47
triggerList .add (handler );
@@ -74,7 +77,9 @@ public void trigger(Trigger trigger){
74
77
iterator .remove ();
75
78
}
76
79
}
77
- }catch (Exception e ){}
80
+ }catch (Exception e ){
81
+ log .warn ("trigger error:{}" ,e .getLocalizedMessage ());
82
+ }
78
83
}
79
84
}
80
85
}
You can’t perform that action at this time.
0 commit comments