mms-client 1.9.2__py3-none-any.whl → 1.9.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
mms_client/types/award.py CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  from decimal import Decimal
4
4
  from enum import Enum
5
+ from typing import Annotated
5
6
  from typing import List
6
7
  from typing import Optional
7
8
 
@@ -323,7 +324,7 @@ class AwardResult(Payload, tag="AwardResults"):
323
324
  direction: Direction = attr(name="Direction")
324
325
 
325
326
  # The bid awards associated with these parameters
326
- data: List[Award] = element(tag="AwardResultsData", min_length=1)
327
+ data: Annotated[List[Award], element(tag="AwardResultsData", min_length=1)]
327
328
 
328
329
  @field_serializer("start", "end")
329
330
  def encode_datetime(self, value: DateTime) -> str:
@@ -340,4 +341,4 @@ class AwardResponse(AwardQuery, tag="AwardResultsQuery"):
340
341
  """Contains the results of a bid award query."""
341
342
 
342
343
  # The bid awards associated with the query
343
- results: Optional[List[AwardResult]] = wrapped(default=None, path="AwardResultsQueryResponse")
344
+ results: Annotated[Optional[List[AwardResult]], wrapped(default=None, path="AwardResultsQueryResponse")]
mms_client/types/offer.py CHANGED
@@ -1,6 +1,7 @@
1
1
  """Contains objects for MMS offers."""
2
2
 
3
3
  from decimal import Decimal
4
+ from typing import Annotated
4
5
  from typing import List
5
6
  from typing import Optional
6
7
 
@@ -79,7 +80,7 @@ class OfferData(Payload):
79
80
  """Describes the data common to both offer requests and responses."""
80
81
 
81
82
  # The separate offers that make up the offer stack
82
- stack: List[OfferStack] = element(tag="OfferStack", min_length=1, max_length=20)
83
+ stack: Annotated[List[OfferStack], element(tag="OfferStack", min_length=1, max_length=20)]
83
84
 
84
85
  # The identifier for the power resource being traded
85
86
  resource: str = resource_name("ResourceName")
@@ -269,7 +269,7 @@ class NewReportRequest(ReportMetadata, tag="ReportCreateRequest"):
269
269
  bsp_name: Optional[str] = participant("BSPName", True)
270
270
 
271
271
  # Parameters to be use when configuring the report
272
- parameters: List[Parameter] = element(tag="Param", max_length=5)
272
+ parameters: Annotated[List[Parameter], element(tag="Param", max_length=5)]
273
273
 
274
274
 
275
275
  class NewReportResponse(NewReportRequest, tag="ReportCreateRequest"):
@@ -287,7 +287,7 @@ class ListReportResponse(ListReportRequest, tag="ReportListRequest"):
287
287
  """Represents the base fields for a list report response."""
288
288
 
289
289
  # The list of reports that match the query
290
- reports: List[ReportItem] = wrapped(path="ReportListResponse", entity=element(tag="ReportItem"))
290
+ reports: Annotated[List[ReportItem], wrapped(path="ReportListResponse", entity=element(tag="ReportItem"))]
291
291
 
292
292
 
293
293
  class ReportDownloadRequest(ReportData):
@@ -1,5 +1,6 @@
1
1
  """Contains objects for MMS reserve requirements."""
2
2
 
3
+ from typing import Annotated
3
4
  from typing import List
4
5
  from typing import Optional
5
6
 
@@ -71,7 +72,7 @@ class ReserveRequirement(Payload):
71
72
  area: AreaCode = attr(name="Area")
72
73
 
73
74
  # The requirements associated with the area
74
- requirements: List[Requirement] = element(tag="Requirement", min_length=1)
75
+ requirements: Annotated[List[Requirement], element(tag="Requirement", min_length=1)]
75
76
 
76
77
 
77
78
  class ReserveRequirementQuery(Payload):
@@ -328,7 +328,7 @@ class StartupPattern(Payload, tag="StartupPatternInfo"):
328
328
  pattern_name: str = pattern_name("PatternName")
329
329
 
330
330
  # The events associated with this startup pattern
331
- events: List[StartupEvent] = element(tag="StartupPatternEvent", min_length=6, max_length=25)
331
+ events: Annotated[List[StartupEvent], element(tag="StartupPatternEvent", min_length=6, max_length=25)]
332
332
 
333
333
 
334
334
  class ShutdownEvent(Payload):
@@ -366,34 +366,36 @@ class ShutdownPattern(Payload, tag="StopPatternInfo"):
366
366
  pattern_name: str = pattern_name("PatternName")
367
367
 
368
368
  # The events associated with this stop pattern
369
- events: List[ShutdownEvent] = element(tag="StopPatternEvent", min_length=2, max_length=21)
369
+ events: Annotated[List[ShutdownEvent], element(tag="StopPatternEvent", min_length=2, max_length=21)]
370
370
 
371
371
 
372
372
  class ResourceData(Payload, tag="Resource"):
373
373
  """Contains the data common to both resource requests and responses."""
374
374
 
375
375
  # The output bands associated with this resource
376
- output_bands: Optional[List[OutputBand]] = wrapped(default=None, path="OutputBand", min_length=1, max_length=20)
376
+ output_bands: Annotated[
377
+ Optional[List[OutputBand]], wrapped(default=None, path="OutputBand", min_length=1, max_length=20)
378
+ ]
377
379
 
378
380
  # The switching outputs associated with this resource
379
- switch_outputs: Optional[List[SwitchOutput]] = wrapped(
380
- default=None, path="SwitchOutput", min_length=1, max_length=20
381
- )
381
+ switch_outputs: Annotated[
382
+ Optional[List[SwitchOutput]], wrapped(default=None, path="SwitchOutput", min_length=1, max_length=20)
383
+ ]
382
384
 
383
385
  # The minimum EDC/LFC outputs associated with this resource
384
- afc_minimum_outputs: Optional[List[AfcMinimumOutput]] = wrapped(
385
- default=None, path="OutputRangeBelowAfc", min_length=1, max_length=20
386
- )
386
+ afc_minimum_outputs: Annotated[
387
+ Optional[List[AfcMinimumOutput]], wrapped(default=None, path="OutputRangeBelowAfc", min_length=1, max_length=20)
388
+ ]
387
389
 
388
390
  # The startup patterns associated with this resource
389
- startup_patterns: Optional[List[StartupPattern]] = wrapped(
390
- default=None, path="StartupPattern", min_length=1, max_length=20
391
- )
391
+ startup_patterns: Annotated[
392
+ Optional[List[StartupPattern]], wrapped(default=None, path="StartupPattern", min_length=1, max_length=20)
393
+ ]
392
394
 
393
395
  # The stop patterns associated with this resource
394
- shutdown_patterns: Optional[List[ShutdownPattern]] = wrapped(
395
- default=None, path="StopPattern", min_length=1, max_length=20
396
- )
396
+ shutdown_patterns: Annotated[
397
+ Optional[List[ShutdownPattern]], wrapped(default=None, path="StopPattern", min_length=1, max_length=20)
398
+ ]
397
399
 
398
400
  # Any comments attached to the resource
399
401
  comments: Optional[str] = element(
@@ -1,6 +1,7 @@
1
1
  """Contains the base types necessary for communication with the MMS server."""
2
2
 
3
3
  from enum import Enum
4
+ from typing import Annotated
4
5
  from typing import List
5
6
  from typing import Optional
6
7
 
@@ -87,7 +88,7 @@ class MmsRequest(BaseModel):
87
88
 
88
89
  # Any attached files to be sent with the request. Only 20 of these are allowed for OMI requests. For MI requests,
89
90
  # the limit is 40.
90
- attachments: List[Attachment] = Field(default=[], alias="attachmentData")
91
+ attachments: Annotated[List[Attachment], Field(alias="attachmentData")] = []
91
92
 
92
93
  def to_arguments(self) -> dict:
93
94
  """Convert the request to a dictionary of arguments for use in the MMS client."""
@@ -127,4 +128,4 @@ class MmsResponse(BaseModel):
127
128
  payload: bytes = Field(alias="responseData")
128
129
 
129
130
  # Any attached files to be sent with the response
130
- attachments: List[Attachment] = Field(default=[], alias="attachmentData")
131
+ attachments: Annotated[List[Attachment], Field(alias="attachmentData")] = []
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mms-client
3
- Version: 1.9.2
3
+ Version: 1.9.3
4
4
  Summary: API client for accessing the MMS
5
5
  Home-page: https://github.com/ElectroRoute-Japan/mms-client
6
6
  Author: Ryan Wood
@@ -18,24 +18,24 @@ mms_client/services/omi.py,sha256=UG1zYkFz0sFsEbhE6P0CLoAOZZOyEshkZ_b7D_e3CjQ,62
18
18
  mms_client/services/registration.py,sha256=XkXBgPK9PXFyNxo3ways_hUJ3E_vKTUlgCPgQQbDgWM,3839
19
19
  mms_client/services/report.py,sha256=hgRvjVxy8Hvbj5hQb0GMyDW0-1kMW2XFS5iKfO90YZY,6258
20
20
  mms_client/types/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
- mms_client/types/award.py,sha256=1Tew43jo0HfaGJy4Uu3zFrB3HBjdwwR9ca-PADhenTI,15722
21
+ mms_client/types/award.py,sha256=1-CHIE3x5zFWA8WccUkGwQFBpLdsm4VQ7rk8uOoyKVc,15771
22
22
  mms_client/types/base.py,sha256=VYXnUkEKcI1ki6Sk0ekklDLKDLkv03xrfbSFzzV_RXk,11240
23
23
  mms_client/types/enums.py,sha256=hALMuqRChLUJ1Eglll5R5mkYLpcO-ZIaEBps3MjkTg0,2534
24
24
  mms_client/types/fields.py,sha256=pa5qvQVwEr8dh44IGHyYqgJYTYyTIeAjBW6CylXrkP0,14785
25
25
  mms_client/types/market.py,sha256=D5tZB97ewHfwG9gVC35bHfdlGthi5GBeMaGBk5393wY,2577
26
- mms_client/types/offer.py,sha256=K6B8TgolIepJgveHz70I-dpE-ZSalcoFKKgH7C6b7P4,7921
26
+ mms_client/types/offer.py,sha256=Dtx7ftLgaJONVEetalXaXmJM4bJ65NBMFFNTGwgLF90,7960
27
27
  mms_client/types/registration.py,sha256=bPA_FQwLVIwb5CRqK8F3YqeV0dEeN04j1wMsClrV5Wc,1252
28
- mms_client/types/report.py,sha256=mIsqkF6pbzUBVpY-ushO_mxhMO1WeBw7jWtAEiD1O50,23667
29
- mms_client/types/reserve.py,sha256=mTWv1uUHImkucPyrp2SxUSE5zabggcjLT7qBiyEJxrg,3257
30
- mms_client/types/resource.py,sha256=749SNzqK1UVwzS2Ct_Q-a30PgnVQPp-CUQkoO_LCkao,65300
31
- mms_client/types/transport.py,sha256=-hRmhv1VdMiby6zQJjqNRO7TkatRU-ZEqoCdtQMpgdg,4407
28
+ mms_client/types/report.py,sha256=7ENst_h1V2DG342UwL9ZltdRK2TaI-P1QW26qwjb6ao,23687
29
+ mms_client/types/reserve.py,sha256=nsFJ0oSEuoCf82CtZEFa_-1UKAj-5Ssf1gEoWTlYiCI,3296
30
+ mms_client/types/resource.py,sha256=4WhrSKOAXGrkg04r9f8f5kC3r0XDIKLarOFtBd2f7NI,65384
31
+ mms_client/types/transport.py,sha256=4iEYod4DbqBBRXMH_VBqK9ORwR2q7MxSwwfWQAeHcT4,4442
32
32
  mms_client/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
33
  mms_client/utils/errors.py,sha256=6k-NOjGZyTbTUISzN7B4JrmU2P8cwjpFFmFC7kJOQFQ,3005
34
34
  mms_client/utils/multipart_transport.py,sha256=GJvjdlmXituiT78f5XuhpPkcHdDHFtVELa-F3eqUvbk,9981
35
35
  mms_client/utils/plugin.py,sha256=_Jymcny5ta9uV4CMLGDX7O5xSQIhuu76rb-A6uhtFSY,2013
36
36
  mms_client/utils/serialization.py,sha256=weXZQOqAiQ4ga-vAVz8PQ1JR_iX2iN0lyMimqqC3mio,33783
37
37
  mms_client/utils/web.py,sha256=Qk8azZpxAIEtI9suOikxBNtFQFNuWh-92DaUBU1qX8s,10927
38
- mms_client-1.9.2.dist-info/LICENSE,sha256=awOCsWJ58m_2kBQwBUGWejVqZm6wuRtCL2hi9rfa0X4,1211
39
- mms_client-1.9.2.dist-info/METADATA,sha256=-yJYul50gvrgYVeGQymBe5TCDL47TJ-V_1VzF3nb74Y,16578
40
- mms_client-1.9.2.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
41
- mms_client-1.9.2.dist-info/RECORD,,
38
+ mms_client-1.9.3.dist-info/LICENSE,sha256=awOCsWJ58m_2kBQwBUGWejVqZm6wuRtCL2hi9rfa0X4,1211
39
+ mms_client-1.9.3.dist-info/METADATA,sha256=4B5nkY4Olo0baPTUO9BWZC-k6Q4t3QQseVOBrSstQ80,16578
40
+ mms_client-1.9.3.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
41
+ mms_client-1.9.3.dist-info/RECORD,,