Skip to content

Commit 270d2c1

Browse files
adapts selected motor kind to new API interface
1 parent c61543e commit 270d2c1

File tree

5 files changed

+14
-12
lines changed

5 files changed

+14
-12
lines changed

lib/models/motor.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from enum import Enum
22
from typing import Optional, Tuple, List, Union, Self, ClassVar, Literal
3-
from pydantic import PrivateAttr, model_validator
3+
from pydantic import PrivateAttr, model_validator, computed_field
44

55
from lib.models.interface import ApiBaseModel
66
from lib.models.sub.tanks import MotorTank
@@ -65,9 +65,10 @@ def validate_motor_kind(self):
6565
raise ValueError("Tanks must be provided for liquid and hybrid motors.")
6666
return self
6767

68+
@computed_field
6869
@property
69-
def motor_kind(self) -> MotorKinds:
70-
return self._motor_kind
70+
def selected_motor_kind(self) -> str:
71+
return self._motor_kind.value
7172

7273
def set_motor_kind(self, motor_kind: MotorKinds):
7374
self._motor_kind = motor_kind

lib/services/flight.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@
77

88
from lib.services.environment import EnvironmentService
99
from lib.services.rocket import RocketService
10-
from lib.views.flight import FlightSummary, FlightView
10+
from lib.models.flight import FlightModel
11+
from lib.views.flight import FlightSummary
1112

1213

1314
class FlightService:
@@ -17,7 +18,7 @@ def __init__(self, flight: RocketPyFlight = None):
1718
self._flight = flight
1819

1920
@classmethod
20-
def from_flight_model(cls, flight: FlightView) -> Self:
21+
def from_flight_model(cls, flight: FlightModel) -> Self:
2122
"""
2223
Get the rocketpy flight object.
2324

lib/services/motor.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616
)
1717

1818
from lib.models.sub.tanks import TankKinds
19-
from lib.models.motor import MotorKinds
20-
from lib.views.motor import MotorSummary, MotorView
19+
from lib.models.motor import MotorKinds, MotorModel
20+
from lib.views.motor import MotorSummary
2121

2222

2323
class MotorService:
@@ -27,7 +27,7 @@ def __init__(self, motor: RocketPyMotor = None):
2727
self._motor = motor
2828

2929
@classmethod
30-
def from_motor_model(cls, motor: MotorView) -> Self:
30+
def from_motor_model(cls, motor: MotorModel) -> Self:
3131
"""
3232
Get the rocketpy motor object.
3333

lib/services/rocket.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@
1414
from rocketpy.utilities import get_instance_attributes
1515

1616
from lib import logger
17-
from lib.models.rocket import Parachute
17+
from lib.models.rocket import RocketModel, Parachute
1818
from lib.models.sub.aerosurfaces import NoseCone, Tail, Fins
1919
from lib.services.motor import MotorService
20-
from lib.views.rocket import RocketView, RocketSummary
20+
from lib.views.rocket import RocketSummary
2121

2222

2323
class RocketService:
@@ -27,7 +27,7 @@ def __init__(self, rocket: RocketPyRocket = None):
2727
self._rocket = rocket
2828

2929
@classmethod
30-
def from_rocket_model(cls, rocket: RocketView) -> Self:
30+
def from_rocket_model(cls, rocket: RocketModel) -> Self:
3131
"""
3232
Get the rocketpy rocket object.
3333

lib/views/motor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ class MotorSummary(BaseModel):
7373

7474
class MotorView(MotorModel):
7575
motor_id: Optional[str] = None
76-
selected_motor_kind: MotorKinds
76+
selected_motor_kind: str
7777

7878

7979
class MotorCreated(ApiBaseView):

0 commit comments

Comments
 (0)