@@ -38,6 +38,16 @@ namespace triton { namespace server {
3838 } \
3939 } while (false )
4040
41+ #define RETURN_AND_RESPOND_IF_RESTRICTED (REQ, RESTRICTED_CATEGORY ) \
42+ do { \
43+ auto const & is_restricted_api = \
44+ restricted_apis_.IsRestricted (RESTRICTED_CATEGORY ); \
45+ auto const & restriction = restricted_apis_.Get (RESTRICTED_CATEGORY ); \
46+ if (is_restricted_api && RespondIfRestricted ((REQ ), restriction)) { \
47+ return ; \
48+ } \
49+ } while (false )
50+
4151namespace {
4252
4353void
@@ -170,25 +180,15 @@ SagemakerAPIServer::Handle(evhtp_request_t* req)
170180 if (multi_model_name.empty ()) {
171181 LOG_VERBOSE (1 ) << " SageMaker request: LIST ALL MODELS" ;
172182
173- if (restricted_apis_.IsRestricted (
174- RestrictedCategory::MODEL_REPOSITORY ) &&
175- RespondIfRestricted (
176- req,
177- restricted_apis_.Get (RestrictedCategory::MODEL_REPOSITORY ))) {
178- return ;
179- }
183+ RETURN_AND_RESPOND_IF_RESTRICTED (
184+ req, RestrictedCategory::MODEL_REPOSITORY );
180185 SageMakerMMEListModel (req);
181186 return ;
182187 } else {
183188 LOG_VERBOSE (1 ) << " SageMaker request: GET MODEL" ;
184189
185- if (restricted_apis_.IsRestricted (
186- RestrictedCategory::MODEL_REPOSITORY ) &&
187- RespondIfRestricted (
188- req,
189- restricted_apis_.Get (RestrictedCategory::MODEL_REPOSITORY ))) {
190- return ;
191- }
190+ RETURN_AND_RESPOND_IF_RESTRICTED (
191+ req, RestrictedCategory::MODEL_REPOSITORY );
192192 SageMakerMMEGetModel (req, multi_model_name.c_str ());
193193 return ;
194194 }
@@ -224,13 +224,8 @@ SagemakerAPIServer::Handle(evhtp_request_t* req)
224224 if (action.empty ()) {
225225 LOG_VERBOSE (1 ) << " SageMaker request: LOAD MODEL" ;
226226
227- if (restricted_apis_.IsRestricted (
228- RestrictedCategory::MODEL_REPOSITORY ) &&
229- RespondIfRestricted (
230- req,
231- restricted_apis_.Get (RestrictedCategory::MODEL_REPOSITORY ))) {
232- return ;
233- }
227+ RETURN_AND_RESPOND_IF_RESTRICTED (
228+ req, RestrictedCategory::MODEL_REPOSITORY );
234229 std::unordered_map<std::string, std::string> parse_load_map;
235230 ParseSageMakerRequest (req, &parse_load_map, " load" );
236231 if (!parse_load_map.empty ()) {
@@ -243,13 +238,8 @@ SagemakerAPIServer::Handle(evhtp_request_t* req)
243238 // UNLOAD MODEL
244239 LOG_VERBOSE (1 ) << " SageMaker request: UNLOAD MODEL" ;
245240
246- if (restricted_apis_.IsRestricted (
247- RestrictedCategory::MODEL_REPOSITORY ) &&
248- RespondIfRestricted (
249- req,
250- restricted_apis_.Get (RestrictedCategory::MODEL_REPOSITORY ))) {
251- return ;
252- }
241+ RETURN_AND_RESPOND_IF_RESTRICTED (
242+ req, RestrictedCategory::MODEL_REPOSITORY );
253243 req->method = htp_method_POST;
254244
255245 SageMakerMMEUnloadModel (req, multi_model_name.c_str ());
0 commit comments