@@ -20,10 +20,10 @@ class SecretProperties(object):
2020 """A secret's id and attributes."""
2121
2222 def __init__ (self , attributes , vault_id , ** kwargs ):
23- # type: (_models.SecretAttributes, str, **Any) -> None
23+ # type: (Optional[ _models.SecretAttributes], Optional[ str] , **Any) -> None
2424 self ._attributes = attributes
2525 self ._id = vault_id
26- self ._vault_id = KeyVaultSecretIdentifier (vault_id )
26+ self ._vault_id = KeyVaultSecretIdentifier (vault_id ) if vault_id else None
2727 self ._content_type = kwargs .get ("content_type" , None )
2828 self ._key_id = kwargs .get ("key_id" , None )
2929 self ._managed = kwargs .get ("managed" , None )
@@ -60,82 +60,82 @@ def _from_secret_item(cls, secret_item):
6060
6161 @property
6262 def content_type (self ):
63- # type: () -> str
63+ # type: () -> Optional[ str]
6464 """An arbitrary string indicating the type of the secret
6565
66- :rtype: str
66+ :rtype: str or None
6767 """
6868 return self ._content_type
6969
7070 @property
7171 def id (self ):
72- # type: () -> str
72+ # type: () -> Optional[ str]
7373 """The secret's id
7474
75- :rtype: str
75+ :rtype: str or None
7676 """
7777 return self ._id
7878
7979 @property
8080 def key_id (self ):
81- # type: () -> str
81+ # type: () -> Optional[ str]
8282 """If this secret backs a certificate, this property is the identifier of the corresponding key.
8383
84- :rtype: str
84+ :rtype: str or None
8585 """
8686 return self ._key_id
8787
8888 @property
8989 def enabled (self ):
90- # type: () -> bool
90+ # type: () -> Optional[ bool]
9191 """Whether the secret is enabled for use
9292
93- :rtype: bool
93+ :rtype: bool or None
9494 """
95- return self ._attributes .enabled
95+ return self ._attributes .enabled if self . _attributes else None
9696
9797 @property
9898 def not_before (self ):
99- # type: () -> datetime
99+ # type: () -> Optional[ datetime]
100100 """The time before which the secret can not be used, in UTC
101101
102- :rtype: ~datetime.datetime
102+ :rtype: ~datetime.datetime or None
103103 """
104- return self ._attributes .not_before
104+ return self ._attributes .not_before if self . _attributes else None
105105
106106 @property
107107 def expires_on (self ):
108- # type: () -> datetime
108+ # type: () -> Optional[ datetime]
109109 """When the secret expires, in UTC
110110
111- :rtype: ~datetime.datetime
111+ :rtype: ~datetime.datetime or None
112112 """
113- return self ._attributes .expires
113+ return self ._attributes .expires if self . _attributes else None
114114
115115 @property
116116 def created_on (self ):
117- # type: () -> datetime
117+ # type: () -> Optional[ datetime]
118118 """When the secret was created, in UTC
119119
120- :rtype: ~datetime.datetime
120+ :rtype: ~datetime.datetime or None
121121 """
122- return self ._attributes .created
122+ return self ._attributes .created if self . _attributes else None
123123
124124 @property
125125 def updated_on (self ):
126- # type: () -> datetime
126+ # type: () -> Optional[ datetime]
127127 """When the secret was last updated, in UTC
128128
129- :rtype: ~datetime.datetime
129+ :rtype: ~datetime.datetime or None
130130 """
131- return self ._attributes .updated
131+ return self ._attributes .updated if self . _attributes else None
132132
133133 @property
134134 def recoverable_days (self ):
135135 # type: () -> Optional[int]
136136 """The number of days the key is retained before being deleted from a soft-delete enabled Key Vault.
137137
138- :rtype: int
138+ :rtype: int or None
139139 """
140140 # recoverable_days was added in 7.1-preview
141141 if self ._attributes and hasattr (self ._attributes , "recoverable_days" ):
@@ -144,54 +144,55 @@ def recoverable_days(self):
144144
145145 @property
146146 def recovery_level (self ):
147- # type: () -> str
147+ # type: () -> Optional[ str]
148148 """The vault's deletion recovery level for secrets
149149
150- :rtype: str
150+ :rtype: str or None
151151 """
152- return self ._attributes .recovery_level
152+ return self ._attributes .recovery_level if self . _attributes else None
153153
154154 @property
155155 def vault_url (self ):
156- # type: () -> str
156+ # type: () -> Optional[ str]
157157 """URL of the vault containing the secret
158158
159- :rtype: str
159+ :rtype: str or None
160160 """
161- return self ._vault_id .vault_url
161+ return self ._vault_id .vault_url if self . _vault_id else None
162162
163163 @property
164164 def name (self ):
165- # type: () -> str
165+ # type: () -> Optional[ str]
166166 """The secret's name
167167
168- :rtype: str
168+ :rtype: str or None
169169 """
170- return self ._vault_id .name
170+ return self ._vault_id .name if self . _vault_id else None
171171
172172 @property
173173 def version (self ):
174- # type: () -> str
174+ # type: () -> Optional[ str]
175175 """The secret's version
176176
177- :rtype: str
177+ :rtype: str or None
178178 """
179- return self ._vault_id .version
179+ return self ._vault_id .version if self . _vault_id else None
180180
181181 @property
182182 def tags (self ):
183- # type: () -> Dict[str, str]
183+ # type: () -> Optional[ Dict[str, str] ]
184184 """Application specific metadata in the form of key-value pairs
185185
186- :rtype: dict"""
186+ :rtype: dict or None
187+ """
187188 return self ._tags
188189
189190
190191class KeyVaultSecret (object ):
191192 """All of a secret's properties, and its value."""
192193
193194 def __init__ (self , properties , value ):
194- # type: (SecretProperties, str) -> None
195+ # type: (SecretProperties, Optional[ str] ) -> None
195196 self ._properties = properties
196197 self ._value = value
197198
@@ -210,19 +211,19 @@ def _from_secret_bundle(cls, secret_bundle):
210211
211212 @property
212213 def name (self ):
213- # type: () -> str
214+ # type: () -> Optional[ str]
214215 """The secret's name
215216
216- :rtype: str
217+ :rtype: str or None
217218 """
218219 return self ._properties .name
219220
220221 @property
221222 def id (self ):
222- # type: () -> str
223+ # type: () -> Optional[ str]
223224 """The secret's id
224225
225- :rtype: str
226+ :rtype: str or None
226227 """
227228 return self ._properties .id
228229
@@ -237,10 +238,10 @@ def properties(self):
237238
238239 @property
239240 def value (self ):
240- # type: () -> str
241+ # type: () -> Optional[ str]
241242 """The secret's value
242243
243- :rtype: str
244+ :rtype: str or None
244245 """
245246 return self ._value
246247
@@ -329,19 +330,19 @@ def _from_deleted_secret_item(cls, deleted_secret_item):
329330
330331 @property
331332 def name (self ):
332- # type: () -> str
333+ # type: () -> Optional[ str]
333334 """The secret's name
334335
335- :rtype: str
336+ :rtype: str or None
336337 """
337338 return self ._properties .name
338339
339340 @property
340341 def id (self ):
341- # type: () -> str
342+ # type: () -> Optional[ str]
342343 """The secret's id
343344
344- :rtype: str
345+ :rtype: str or None
345346 """
346347 return self ._properties .id
347348
@@ -356,27 +357,27 @@ def properties(self):
356357
357358 @property
358359 def deleted_date (self ):
359- # type: () -> datetime
360+ # type: () -> Optional[ datetime]
360361 """When the secret was deleted, in UTC
361362
362- :rtype: ~datetime.datetime
363+ :rtype: ~datetime.datetime or None
363364 """
364365 return self ._deleted_date
365366
366367 @property
367368 def recovery_id (self ):
368- # type: () -> str
369+ # type: () -> Optional[ str]
369370 """An identifier used to recover the deleted secret. Returns ``None`` if soft-delete is disabled.
370371
371- :rtype: str
372+ :rtype: str or None
372373 """
373374 return self ._recovery_id
374375
375376 @property
376377 def scheduled_purge_date (self ):
377- # type: () -> datetime
378+ # type: () -> Optional[ datetime]
378379 """When the secret is scheduled to be purged, in UTC. Returns ``None`` if soft-delete is disabled.
379380
380- :rtype: ~datetime.datetime
381+ :rtype: ~datetime.datetime or None
381382 """
382383 return self ._scheduled_purge_date
0 commit comments