@@ -57,28 +57,6 @@ class TargetManagerSettings(BaseSettings):
5757 target_rater : _TargetRaterChoice = _TargetRaterChoice .BRISQUE
5858
5959
60- @beartype
61- def _get_cloud_database (database_name : str ) -> CloudDatabase :
62- """Get a cloud database by name."""
63- (database ,) = (
64- database
65- for database in TARGET_MANAGER .cloud_databases
66- if database .database_name == database_name
67- )
68- return database
69-
70-
71- @beartype
72- def _get_vumark_database (database_name : str ) -> VuMarkDatabase :
73- """Get a VuMark database by name."""
74- (database ,) = (
75- database
76- for database in TARGET_MANAGER .vumark_databases
77- if database .database_name == database_name
78- )
79- return database
80-
81-
8260@TARGET_MANAGER_FLASK_APP .route (
8361 rule = "/cloud_databases/<string:database_name>" ,
8462 methods = [HTTPMethod .DELETE ],
@@ -90,11 +68,15 @@ def delete_cloud_database(database_name: str) -> Response:
9068 :status 200: The cloud database has been deleted.
9169 """
9270 try :
93- database = _get_cloud_database (database_name = database_name )
71+ (matching_database ,) = {
72+ database
73+ for database in TARGET_MANAGER .cloud_databases
74+ if database_name == database .database_name
75+ }
9476 except ValueError :
9577 return Response (response = "" , status = HTTPStatus .NOT_FOUND )
9678
97- TARGET_MANAGER .remove_cloud_database (cloud_database = database )
79+ TARGET_MANAGER .remove_cloud_database (cloud_database = matching_database )
9880 return Response (response = "" , status = HTTPStatus .OK )
9981
10082
@@ -109,11 +91,15 @@ def delete_vumark_database(database_name: str) -> Response:
10991 :status 200: The VuMark database has been deleted.
11092 """
11193 try :
112- database = _get_vumark_database (database_name = database_name )
94+ (matching_database ,) = {
95+ database
96+ for database in TARGET_MANAGER .vumark_databases
97+ if database_name == database .database_name
98+ }
11399 except ValueError :
114100 return Response (response = "" , status = HTTPStatus .NOT_FOUND )
115101
116- TARGET_MANAGER .remove_vumark_database (vumark_database = database )
102+ TARGET_MANAGER .remove_vumark_database (vumark_database = matching_database )
117103 return Response (response = "" , status = HTTPStatus .OK )
118104
119105
@@ -196,34 +182,43 @@ def create_cloud_database() -> Response:
196182
197183 :status 201: The cloud database has been successfully created.
198184 """
199- request_json = json .loads (s = request .data )
200185 random_database = CloudDatabase ()
201- database = CloudDatabase (
202- server_access_key = request_json .get (
203- "server_access_key" ,
204- random_database .server_access_key ,
205- ),
206- server_secret_key = request_json .get (
207- "server_secret_key" ,
208- random_database .server_secret_key ,
209- ),
210- client_access_key = request_json .get (
211- "client_access_key" ,
212- random_database .client_access_key ,
213- ),
214- client_secret_key = request_json .get (
215- "client_secret_key" ,
216- random_database .client_secret_key ,
217- ),
218- database_name = request_json .get (
219- "database_name" ,
220- random_database .database_name ,
221- ),
222- state = States [
223- request_json . get ( "state_name" , random_database . state . name )
224- ] ,
186+ request_json = json . loads ( s = request . data )
187+ server_access_key = request_json .get (
188+ "server_access_key" ,
189+ random_database .server_access_key ,
190+ )
191+ server_secret_key = request_json .get (
192+ "server_secret_key" ,
193+ random_database .server_secret_key ,
194+ )
195+ client_access_key = request_json .get (
196+ "client_access_key" ,
197+ random_database .client_access_key ,
198+ )
199+ client_secret_key = request_json .get (
200+ "client_secret_key" ,
201+ random_database .client_secret_key ,
202+ )
203+ database_name = request_json .get (
204+ "database_name" ,
205+ random_database .database_name ,
206+ )
207+ state_name = request_json . get (
208+ "state_name" ,
209+ random_database . state . name ,
225210 )
226211
212+ state = States [state_name ]
213+
214+ database = CloudDatabase (
215+ server_access_key = server_access_key ,
216+ server_secret_key = server_secret_key ,
217+ client_access_key = client_access_key ,
218+ client_secret_key = client_secret_key ,
219+ database_name = database_name ,
220+ state = state ,
221+ )
227222 try :
228223 TARGET_MANAGER .add_cloud_database (cloud_database = database )
229224 except ValueError as exc :
@@ -286,7 +281,11 @@ def create_vumark_database() -> Response:
286281@beartype
287282def create_target (database_name : str ) -> Response :
288283 """Create a new target in a given cloud database."""
289- database = _get_cloud_database (database_name = database_name )
284+ (database ,) = (
285+ database
286+ for database in TARGET_MANAGER .cloud_databases
287+ if database .database_name == database_name
288+ )
290289 request_json = json .loads (s = request .data )
291290 image_base64 = request_json ["image_base64" ]
292291 image_bytes = base64 .b64decode (s = image_base64 )
@@ -318,7 +317,11 @@ def create_target(database_name: str) -> Response:
318317@beartype
319318def create_vumark_target (database_name : str ) -> Response :
320319 """Create a new VuMark target in a given database."""
321- database = _get_vumark_database (database_name = database_name )
320+ (database ,) = (
321+ database
322+ for database in TARGET_MANAGER .vumark_databases
323+ if database .database_name == database_name
324+ )
322325 request_json = json .loads (s = request .data )
323326 target = VuMarkTarget .from_dict (target_dict = request_json )
324327 database .vumark_targets .add (target )
@@ -336,7 +339,11 @@ def create_vumark_target(database_name: str) -> Response:
336339@beartype
337340def delete_target (database_name : str , target_id : str ) -> Response :
338341 """Delete a target."""
339- database = _get_cloud_database (database_name = database_name )
342+ (database ,) = (
343+ database
344+ for database in TARGET_MANAGER .cloud_databases
345+ if database .database_name == database_name
346+ )
340347 target = database .get_target (target_id = target_id )
341348 now = datetime .datetime .now (tz = target .upload_date .tzinfo )
342349 # See https://github.com/facebook/pyrefly/issues/1897
@@ -358,7 +365,11 @@ def delete_target(database_name: str, target_id: str) -> Response:
358365)
359366def update_target (database_name : str , target_id : str ) -> Response :
360367 """Update a target."""
361- database = _get_cloud_database (database_name = database_name )
368+ (database ,) = (
369+ database
370+ for database in TARGET_MANAGER .cloud_databases
371+ if database .database_name == database_name
372+ )
362373 target = database .get_target (target_id = target_id )
363374
364375 request_json = json .loads (s = request .data )
0 commit comments