Skip to content

Commit 8be065e

Browse files
authored
Merge pull request #179 from microsoft/ccs-python/beta/pipelinebuild/199559
Generated models and request builders
2 parents f5f44f9 + 4d0bb0b commit 8be065e

File tree

8 files changed

+289
-7
lines changed

8 files changed

+289
-7
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
from __future__ import annotations
2+
import datetime
3+
from collections.abc import Callable
4+
from dataclasses import dataclass, field
5+
from kiota_abstractions.serialization import AdditionalDataHolder, Parsable, ParseNode, SerializationWriter
6+
from kiota_abstractions.store import BackedModel, BackingStore, BackingStoreFactorySingleton
7+
from typing import Any, Optional, TYPE_CHECKING, Union
8+
9+
if TYPE_CHECKING:
10+
from .......models.artifact_type import ArtifactType
11+
12+
@dataclass
13+
class GetArtifactsPostRequestBody(AdditionalDataHolder, BackedModel, Parsable):
14+
# Stores model information.
15+
backing_store: BackingStore = field(default_factory=BackingStoreFactorySingleton(backing_store_factory=None).backing_store_factory.create_backing_store, repr=False)
16+
17+
# Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well.
18+
additional_data: dict[str, Any] = field(default_factory=dict)
19+
# The artifactTypes property
20+
artifact_types: Optional[list[ArtifactType]] = None
21+
# The maxResults property
22+
max_results: Optional[int] = None
23+
# The rangeInSec property
24+
range_in_sec: Optional[int] = None
25+
# The seedDateTime property
26+
seed_date_time: Optional[datetime.datetime] = None
27+
# The userId property
28+
user_id: Optional[str] = None
29+
30+
@staticmethod
31+
def create_from_discriminator_value(parse_node: ParseNode) -> GetArtifactsPostRequestBody:
32+
"""
33+
Creates a new instance of the appropriate class based on discriminator value
34+
param parse_node: The parse node to use to read the discriminator value and create the object
35+
Returns: GetArtifactsPostRequestBody
36+
"""
37+
if parse_node is None:
38+
raise TypeError("parse_node cannot be null.")
39+
return GetArtifactsPostRequestBody()
40+
41+
def get_field_deserializers(self,) -> dict[str, Callable[[ParseNode], None]]:
42+
"""
43+
The deserialization information for the current model
44+
Returns: dict[str, Callable[[ParseNode], None]]
45+
"""
46+
from .......models.artifact_type import ArtifactType
47+
48+
from .......models.artifact_type import ArtifactType
49+
50+
fields: dict[str, Callable[[Any], None]] = {
51+
"artifactTypes": lambda n : setattr(self, 'artifact_types', n.get_collection_of_enum_values(ArtifactType)),
52+
"maxResults": lambda n : setattr(self, 'max_results', n.get_int_value()),
53+
"rangeInSec": lambda n : setattr(self, 'range_in_sec', n.get_int_value()),
54+
"seedDateTime": lambda n : setattr(self, 'seed_date_time', n.get_datetime_value()),
55+
"userId": lambda n : setattr(self, 'user_id', n.get_str_value()),
56+
}
57+
return fields
58+
59+
def serialize(self,writer: SerializationWriter) -> None:
60+
"""
61+
Serializes information the current object
62+
param writer: Serialization writer to use to serialize this model
63+
Returns: None
64+
"""
65+
if writer is None:
66+
raise TypeError("writer cannot be null.")
67+
writer.write_collection_of_enum_values("artifactTypes", self.artifact_types)
68+
writer.write_int_value("maxResults", self.max_results)
69+
writer.write_int_value("rangeInSec", self.range_in_sec)
70+
writer.write_datetime_value("seedDateTime", self.seed_date_time)
71+
writer.write_str_value("userId", self.user_id)
72+
writer.write_additional_data_value(self.additional_data)
73+
74+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
from __future__ import annotations
2+
from collections.abc import Callable
3+
from dataclasses import dataclass, field
4+
from kiota_abstractions.base_request_builder import BaseRequestBuilder
5+
from kiota_abstractions.base_request_configuration import RequestConfiguration
6+
from kiota_abstractions.default_query_parameters import QueryParameters
7+
from kiota_abstractions.get_path_parameters import get_path_parameters
8+
from kiota_abstractions.method import Method
9+
from kiota_abstractions.request_adapter import RequestAdapter
10+
from kiota_abstractions.request_information import RequestInformation
11+
from kiota_abstractions.request_option import RequestOption
12+
from kiota_abstractions.serialization import Parsable, ParsableFactory
13+
from typing import Any, Optional, TYPE_CHECKING, Union
14+
from warnings import warn
15+
16+
if TYPE_CHECKING:
17+
from .......models.get_artifacts_response import GetArtifactsResponse
18+
from .......models.o_data_errors.o_data_error import ODataError
19+
from .get_artifacts_post_request_body import GetArtifactsPostRequestBody
20+
21+
class GetArtifactsRequestBuilder(BaseRequestBuilder):
22+
"""
23+
Provides operations to call the getArtifacts method.
24+
"""
25+
def __init__(self,request_adapter: RequestAdapter, path_parameters: Union[str, dict[str, Any]]) -> None:
26+
"""
27+
Instantiates a new GetArtifactsRequestBuilder and sets the default values.
28+
param path_parameters: The raw url or the url-template parameters for the request.
29+
param request_adapter: The request adapter to use to execute the requests.
30+
Returns: None
31+
"""
32+
super().__init__(request_adapter, "{+baseurl}/copilot/communications/realtimeActivityFeed/multiActivitySubscriptions/{multiActivitySubscription%2Did}/getArtifacts", path_parameters)
33+
34+
async def post(self,body: GetArtifactsPostRequestBody, request_configuration: Optional[RequestConfiguration[QueryParameters]] = None) -> Optional[GetArtifactsResponse]:
35+
"""
36+
Invoke action getArtifacts
37+
param body: The request body
38+
param request_configuration: Configuration for the request such as headers, query parameters, and middleware options.
39+
Returns: Optional[GetArtifactsResponse]
40+
"""
41+
if body is None:
42+
raise TypeError("body cannot be null.")
43+
request_info = self.to_post_request_information(
44+
body, request_configuration
45+
)
46+
from .......models.o_data_errors.o_data_error import ODataError
47+
48+
error_mapping: dict[str, type[ParsableFactory]] = {
49+
"XXX": ODataError,
50+
}
51+
if not self.request_adapter:
52+
raise Exception("Http core is null")
53+
from .......models.get_artifacts_response import GetArtifactsResponse
54+
55+
return await self.request_adapter.send_async(request_info, GetArtifactsResponse, error_mapping)
56+
57+
def to_post_request_information(self,body: GetArtifactsPostRequestBody, request_configuration: Optional[RequestConfiguration[QueryParameters]] = None) -> RequestInformation:
58+
"""
59+
Invoke action getArtifacts
60+
param body: The request body
61+
param request_configuration: Configuration for the request such as headers, query parameters, and middleware options.
62+
Returns: RequestInformation
63+
"""
64+
if body is None:
65+
raise TypeError("body cannot be null.")
66+
request_info = RequestInformation(Method.POST, self.url_template, self.path_parameters)
67+
request_info.configure(request_configuration)
68+
request_info.headers.try_add("Accept", "application/json")
69+
request_info.set_content_from_parsable(self.request_adapter, "application/json", body)
70+
return request_info
71+
72+
def with_url(self,raw_url: str) -> GetArtifactsRequestBuilder:
73+
"""
74+
Returns a request builder with the provided arbitrary URL. Using this method means any other path or query parameters are ignored.
75+
param raw_url: The raw URL to use for the request builder.
76+
Returns: GetArtifactsRequestBuilder
77+
"""
78+
if raw_url is None:
79+
raise TypeError("raw_url cannot be null.")
80+
return GetArtifactsRequestBuilder(self.request_adapter, raw_url)
81+
82+
@dataclass
83+
class GetArtifactsRequestBuilderPostRequestConfiguration(RequestConfiguration[QueryParameters]):
84+
"""
85+
Configuration for the request such as headers, query parameters, and middleware options.
86+
"""
87+
warn("This class is deprecated. Please use the generic RequestConfiguration class generated by the generator.", DeprecationWarning)
88+
89+

python/packages/microsoft_agents_m365copilot_beta/microsoft_agents_m365copilot_beta/generated/copilot/communications/realtime_activity_feed/multi_activity_subscriptions/item/multi_activity_subscription_item_request_builder.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
if TYPE_CHECKING:
1717
from ......models.multi_activity_subscription import MultiActivitySubscription
1818
from ......models.o_data_errors.o_data_error import ODataError
19+
from .get_artifacts.get_artifacts_request_builder import GetArtifactsRequestBuilder
1920

2021
class MultiActivitySubscriptionItemRequestBuilder(BaseRequestBuilder):
2122
"""
@@ -138,6 +139,15 @@ def with_url(self,raw_url: str) -> MultiActivitySubscriptionItemRequestBuilder:
138139
raise TypeError("raw_url cannot be null.")
139140
return MultiActivitySubscriptionItemRequestBuilder(self.request_adapter, raw_url)
140141

142+
@property
143+
def get_artifacts(self) -> GetArtifactsRequestBuilder:
144+
"""
145+
Provides operations to call the getArtifacts method.
146+
"""
147+
from .get_artifacts.get_artifacts_request_builder import GetArtifactsRequestBuilder
148+
149+
return GetArtifactsRequestBuilder(self.request_adapter, self.path_parameters)
150+
141151
@dataclass
142152
class MultiActivitySubscriptionItemRequestBuilderDeleteRequestConfiguration(RequestConfiguration[QueryParameters]):
143153
"""

0 commit comments

Comments
 (0)