11# coding=utf-8
2-
3-
4- def check_common_request_interceptor (interceptor ):
5- if not interceptor .is_common ():
6- raise Exception ("interceptor is not common" )
7- if not interceptor .is_request ():
8- raise Exception ("interceptor is not for request" )
9- if not interceptor .name ():
10- raise Exception ("interceptor name is not defined" )
11-
12-
13- def check_common_response_interceptor (interceptor ):
14- if not interceptor .is_common ():
15- raise Exception ("interceptor is not common" )
16- if not interceptor .is_response ():
17- raise Exception ("interceptor is not for response" )
18- if not interceptor .name ():
19- raise Exception ("interceptor name is not defined" )
2+ from volcenginesdkcore .interceptor import RequestInterceptor , ResponseInterceptor
203
214
225def check_request_interceptor (interceptor ):
23- if interceptor .is_common ():
24- raise Exception ("interceptor is common" )
25- if not interceptor .is_request ():
6+ if not issubclass (interceptor .__class__ , RequestInterceptor ):
267 raise Exception ("interceptor is not for request" )
27- if not interceptor .name ():
28- raise Exception ("interceptor name is not defined" )
298
309
3110def check_response_interceptor (interceptor ):
32- if interceptor .is_common ():
33- raise Exception ("interceptor is common" )
34- if not interceptor .is_response ():
11+ if not issubclass (interceptor .__class__ , ResponseInterceptor ):
3512 raise Exception ("interceptor is not for response" )
36- if not interceptor .name ():
37- raise Exception ("interceptor name is not defined" )
3813
3914
4015def insert_interceptor (chain , interceptor , after_name = '' ):
@@ -54,21 +29,9 @@ class InterceptorChain:
5429 """拦截器链"""
5530
5631 def __init__ (self ):
57- self .common_request_interceptors = []
5832 self .request_interceptors = []
59- self .common_response_interceptors = []
6033 self .response_interceptors = []
6134
62- def append_common_request_interceptor (self , interceptor ):
63- check_common_request_interceptor (interceptor )
64- self .common_request_interceptors .append (interceptor )
65- return self
66-
67- def insert_common_request_interceptor (self , interceptor , after_name = '' ):
68- check_common_request_interceptor (interceptor )
69- self .common_request_interceptors = insert_interceptor (self .common_request_interceptors , interceptor , after_name )
70- return self
71-
7235 def append_request_interceptor (self , interceptor ):
7336 check_request_interceptor (interceptor )
7437 self .request_interceptors .append (interceptor )
@@ -79,16 +42,6 @@ def insert_request_interceptor(self, interceptor, after_name=''):
7942 self .request_interceptors = insert_interceptor (self .request_interceptors , interceptor , after_name )
8043 return self
8144
82- def append_common_response_interceptor (self , interceptor ):
83- check_common_response_interceptor (interceptor )
84- self .common_response_interceptors .append (interceptor )
85- return self
86-
87- def insert_common_response_interceptor (self , interceptor , after_name = '' ):
88- check_common_response_interceptor (interceptor )
89- self .common_response_interceptors = insert_interceptor (self .common_response_interceptors , interceptor ,
90- after_name )
91-
9245 def append_response_interceptor (self , interceptor ):
9346 check_response_interceptor (interceptor )
9447 self .response_interceptors .append (interceptor )
@@ -99,18 +52,12 @@ def insert_response_interceptor(self, interceptor, after_name=''):
9952 self .response_interceptors = insert_interceptor (self .response_interceptors , interceptor , after_name )
10053
10154 def execute_request (self , context ):
102- for interceptor in self .common_request_interceptors :
103- context = interceptor .intercept (context )
104-
10555 for interceptor in self .request_interceptors :
10656 context = interceptor .intercept (context )
10757
10858 return context
10959
11060 def execute_response (self , context ):
111- for interceptor in self .common_response_interceptors :
112- context = interceptor .intercept (context )
113-
11461 for interceptor in self .response_interceptors :
11562 context = interceptor .intercept (context )
11663
0 commit comments