@@ -644,20 +644,22 @@ async fn authenticated_tenant_context(
644644 RequestContext :: authenticated_tenant_from_headers ( headers)
645645}
646646
647- fn require_write_permission ( context : & AuthenticatedTenantContext ) -> Result < ( ) , Response > {
647+ fn write_permission_error ( context : & AuthenticatedTenantContext ) -> Option < Response > {
648648 if context. can_write ( ) {
649- return Ok ( ( ) ) ;
649+ return None ;
650650 }
651- Err ( (
652- StatusCode :: FORBIDDEN ,
653- Json ( ApiErrorResponse {
654- accepted : false ,
655- api_version : "v1" ,
656- error_code : "insufficient_role" ,
657- message : "Diese Rust-Route benoetigt eine schreibende ISCY-Rolle." . to_string ( ) ,
658- } ) ,
651+ Some (
652+ (
653+ StatusCode :: FORBIDDEN ,
654+ Json ( ApiErrorResponse {
655+ accepted : false ,
656+ api_version : "v1" ,
657+ error_code : "insufficient_role" ,
658+ message : "Diese Rust-Route benoetigt eine schreibende ISCY-Rolle." . to_string ( ) ,
659+ } ) ,
660+ )
661+ . into_response ( ) ,
659662 )
660- . into_response ( ) )
661663}
662664
663665async fn web_context_from_request (
@@ -1566,7 +1568,7 @@ async fn product_security_roadmap_task_update(
15661568 . into_response ( ) ;
15671569 }
15681570 } ;
1569- if let Err ( response) = require_write_permission ( & context) {
1571+ if let Some ( response) = write_permission_error ( & context) {
15701572 return response;
15711573 }
15721574
@@ -1641,7 +1643,7 @@ async fn product_security_vulnerability_update(
16411643 . into_response ( ) ;
16421644 }
16431645 } ;
1644- if let Err ( response) = require_write_permission ( & context) {
1646+ if let Some ( response) = write_permission_error ( & context) {
16451647 return response;
16461648 }
16471649
@@ -1834,7 +1836,7 @@ async fn risk_create(
18341836 . into_response ( ) ;
18351837 }
18361838 } ;
1837- if let Err ( response) = require_write_permission ( & context) {
1839+ if let Some ( response) = write_permission_error ( & context) {
18381840 return response;
18391841 }
18401842
@@ -1894,7 +1896,7 @@ async fn risk_update(
18941896 . into_response ( ) ;
18951897 }
18961898 } ;
1897- if let Err ( response) = require_write_permission ( & context) {
1899+ if let Some ( response) = write_permission_error ( & context) {
18981900 return response;
18991901 }
19001902
@@ -2027,7 +2029,7 @@ async fn evidence_need_sync(
20272029 . into_response ( ) ;
20282030 }
20292031 } ;
2030- if let Err ( response) = require_write_permission ( & context) {
2032+ if let Some ( response) = write_permission_error ( & context) {
20312033 return response;
20322034 }
20332035
@@ -2100,7 +2102,7 @@ async fn import_center_job(
21002102 . into_response ( ) ;
21012103 }
21022104 } ;
2103- if let Err ( response) = require_write_permission ( & context) {
2105+ if let Some ( response) = write_permission_error ( & context) {
21042106 return response;
21052107 }
21062108
@@ -2449,7 +2451,7 @@ async fn roadmap_task_update(
24492451 . into_response ( ) ;
24502452 }
24512453 } ;
2452- if let Err ( response) = require_write_permission ( & context) {
2454+ if let Some ( response) = write_permission_error ( & context) {
24532455 return response;
24542456 }
24552457
0 commit comments