Skip to content

Commit da8660f

Browse files
committed
Implement model classes for large file upload
1 parent 6ed2bfa commit da8660f

File tree

2 files changed

+91
-3
lines changed

2 files changed

+91
-3
lines changed
Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,27 @@
11
from kiota_abstractions.serialization.additional_data_holder import AdditionalDataHolder
22
from kiota_abstractions.serialization.parsable import Parsable
3+
from kiota_abstractions.store.backed_model import BackedModel
4+
from kiota_abstractions.store.backing_store import BackingStore
5+
from kiota_abstractions.store.backing_store_factory_singleton import BackingStoreFactorySingleton
36

47

5-
class LargeFileUploadCreateSession(Parsable, AdditionalDataHolder):
6-
pass
8+
class LargeFileUploadCreateSessionBody(Parsable, AdditionalDataHolder):
9+
10+
def __init__(self):
11+
self.backing_store = BackingStoreFactorySingleton.get_instance().create_backing_store()
12+
self.set_additional_data([])
13+
14+
def get_additional_data(self):
15+
return self.backing_store.get('additional_data')
16+
17+
def set_additional_data(self, value):
18+
self.backing_store.set('additional_data', value)
19+
20+
def get_field_deserializers(self):
21+
return {}
22+
23+
def serialize(self, writer):
24+
writer.write_additional_data(self.get_additional_data())
25+
26+
def get_backing_store(self):
27+
return self.backing_store
Lines changed: 68 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,73 @@
1+
from typing import List, Dict, Optional
2+
from datetime import datetime
3+
14
from kiota_abstractions.serialization.additional_data_holder import AdditionalDataHolder
25
from kiota_abstractions.serialization.parsable import Parsable
6+
from kiota_abstractions.serialization.parse_node import ParseNode
7+
from kiota_abstractions.serialization.serialization_writer import SerializationWriter
38

49

510
class LargeFileUploadSession(Parsable, AdditionalDataHolder):
6-
pass
11+
12+
def __init__(self):
13+
self.upload_url: Optional[str] = None
14+
self.expiration_date_time: Optional[datetime] = None
15+
self.additional_data: Dict[str, any] = {}
16+
self.is_cancelled: Optional[bool] = False
17+
self.next_expected_ranges: Optional[List[str]] = None
18+
19+
def set_expiration_date_time(self, expiration_date_time: Optional[datetime]):
20+
self.expiration_date_time = expiration_date_time
21+
22+
def set_upload_url(self, upload_url: Optional[str]):
23+
self.upload_url = upload_url
24+
25+
def set_next_expected_ranges(self, next_expected_ranges: Optional[List[str]]):
26+
self.next_expected_ranges = next_expected_ranges
27+
28+
def get_next_expected_ranges(self) -> Optional[List[str]]:
29+
return self.next_expected_ranges
30+
31+
def get_expiration_date_time(self) -> Optional[datetime]:
32+
return self.expiration_date_time
33+
34+
def get_upload_url(self) -> Optional[str]:
35+
return self.upload_url
36+
37+
def set_is_cancelled(self, is_cancelled: Optional[bool]):
38+
self.is_cancelled = is_cancelled
39+
40+
def get_additional_data(self) -> Optional[Dict[str, any]]:
41+
return self.additional_data
42+
43+
def set_additional_data(self, value: Dict[str, any]):
44+
self.additional_data = value
45+
46+
@staticmethod
47+
def create_from_discriminator_value(
48+
parse_node: ParseNode
49+
) -> Optional['LargeFileUploadSession']:
50+
return LargeFileUploadSession()
51+
52+
def get_is_cancelled(self) -> Optional[bool]:
53+
return self.is_cancelled
54+
55+
def serialize(self, writer: SerializationWriter) -> None:
56+
writer.write_string_value('uploadUrl', self.upload_url)
57+
writer.write_date_time_value('expirationDateTime', self.expiration_date_time)
58+
writer.write_boolean_value('isCancelled', self.is_cancelled)
59+
writer.write_collection_of_primitive_values('nextExpectedRanges', self.next_expected_ranges)
60+
writer.write_additional_data(self.additional_data)
61+
62+
def get_field_deserializers(self) -> Dict[str, any]:
63+
return {
64+
'uploadUrl':
65+
lambda parse_node: self.set_upload_url(parse_node.get_string_value()),
66+
'expirationDateTime':
67+
lambda parse_node: self.set_expiration_date_time(parse_node.get_date_time_value()),
68+
'isCancelled':
69+
lambda parse_node: self.set_is_cancelled(parse_node.get_boolean_value()),
70+
'nextExpectedRanges':
71+
lambda parse_node: self.
72+
set_next_expected_ranges(parse_node.get_collection_of_primitive_values('string'))
73+
}

0 commit comments

Comments
 (0)