@@ -43,7 +43,7 @@ internal sealed class StreamPoll : StreamStatefulModelBase<StreamPoll>,
4343
4444 public string Id { get ; private set ; }
4545
46- public bool ? IsClosed
46+ public bool IsClosed
4747 {
4848 get => _isClosed ;
4949 private set
@@ -117,8 +117,7 @@ public async Task UpdateAsync(StreamUpdatePollRequest updateRequest)
117117
118118 var response = await LowLevelClient . InternalPollsApi . UpdatePollAsync ( Id , requestDto ) ;
119119
120- // Update from response
121- this . TryUpdateFromDto < PollResponseDataInternalDTO , StreamPoll > ( response . Poll , Cache ) ;
120+ this . TryUpdateFromDto ( response . Poll , Cache ) ;
122121 }
123122
124123 public async Task CloseAsync ( )
@@ -133,8 +132,7 @@ public async Task CloseAsync()
133132
134133 var response = await LowLevelClient . InternalPollsApi . UpdatePollPartialAsync ( Id , request ) ;
135134
136- // Update from response
137- this . TryUpdateFromDto < PollResponseDataInternalDTO , StreamPoll > ( response . Poll , Cache ) ;
135+ this . TryUpdateFromDto ( response . Poll , Cache ) ;
138136 }
139137
140138 public async Task < StreamPollOption > AddOptionAsync ( string text )
@@ -148,8 +146,6 @@ public async Task<StreamPollOption> AddOptionAsync(string text)
148146
149147 var response = await LowLevelClient . InternalPollsApi . CreatePollOptionAsync ( Id , request ) ;
150148
151-
152- // Return the option as public model
153149 return new StreamPollOption ( ) . TryLoadFromDto < PollOptionResponseDataInternalDTO , StreamPollOption > ( response . PollOption , Cache ) ;
154150 }
155151
@@ -193,7 +189,11 @@ void IUpdateableFrom<PollResponseDataInternalDTO, StreamPoll>.UpdateFromDto(Poll
193189 Description = dto . Description ;
194190 EnforceUniqueVote = dto . EnforceUniqueVote ;
195191 Id = dto . Id ;
196- IsClosed = dto . IsClosed ;
192+
193+ if ( dto . IsClosed . HasValue )
194+ {
195+ IsClosed = dto . IsClosed . Value ;
196+ }
197197
198198 if ( dto . LatestAnswers != null )
199199 {
@@ -239,25 +239,24 @@ void IUpdateableFrom<PollResponseDataInternalDTO, StreamPoll>.UpdateFromDto(Poll
239239
240240 VotingVisibility = dto . VotingVisibility ;
241241
242- LoadAdditionalProperties ( dto . AdditionalProperties ) ;
242+ LoadAdditionalProperties ( dto . Custom ) ;
243243
244- // Notify subscribers that poll was updated
245244 Updated ? . Invoke ( this ) ;
246245 }
247246
248247 internal void HandlePollClosedEvent ( PollClosedEventInternalDTO dto )
249248 {
250- this . TryUpdateFromDto < PollResponseDataInternalDTO , StreamPoll > ( dto . Poll , Cache ) ;
249+ this . TryUpdateFromDto ( dto . Poll , Cache ) ;
251250 }
252251
253252 internal void HandlePollUpdatedEvent ( PollUpdatedEventInternalDTO dto )
254253 {
255- this . TryUpdateFromDto < PollResponseDataInternalDTO , StreamPoll > ( dto . Poll , Cache ) ;
254+ this . TryUpdateFromDto ( dto . Poll , Cache ) ;
256255 }
257256
258257 internal void HandlePollVoteCastedEvent ( PollVoteCastedEventInternalDTO dto )
259258 {
260- this . TryUpdateFromDto < PollResponseDataInternalDTO , StreamPoll > ( dto . Poll , Cache ) ;
259+ this . TryUpdateFromDto ( dto . Poll , Cache ) ;
261260
262261 if ( dto . PollVote != null )
263262 {
@@ -268,7 +267,7 @@ internal void HandlePollVoteCastedEvent(PollVoteCastedEventInternalDTO dto)
268267
269268 internal void HandlePollVoteChangedEvent ( PollVoteChangedEventInternalDTO dto )
270269 {
271- this . TryUpdateFromDto < PollResponseDataInternalDTO , StreamPoll > ( dto . Poll , Cache ) ;
270+ this . TryUpdateFromDto ( dto . Poll , Cache ) ;
272271
273272 if ( dto . PollVote != null )
274273 {
@@ -279,7 +278,7 @@ internal void HandlePollVoteChangedEvent(PollVoteChangedEventInternalDTO dto)
279278
280279 internal void HandlePollVoteRemovedEvent ( PollVoteRemovedEventInternalDTO dto )
281280 {
282- this . TryUpdateFromDto < PollResponseDataInternalDTO , StreamPoll > ( dto . Poll , Cache ) ;
281+ this . TryUpdateFromDto ( dto . Poll , Cache ) ;
283282
284283 if ( dto . PollVote != null )
285284 {
@@ -306,7 +305,7 @@ internal StreamPoll(string uniqueId, ICacheRepository<StreamPoll> repository,
306305 {
307306 }
308307
309- private bool ? _isClosed ;
308+ private bool _isClosed ;
310309 private IStreamChannel _channel ;
311310 private readonly List < StreamPollVote > _latestAnswers = new List < StreamPollVote > ( ) ;
312311 private readonly Dictionary < string , IReadOnlyList < StreamPollVote > > _latestVotesByOption = new Dictionary < string , IReadOnlyList < StreamPollVote > > ( ) ;
0 commit comments