-
Notifications
You must be signed in to change notification settings - Fork 26
Open
Description
Adding custom activities in a feed causes a parsing error unless the entire feed contains the same activities
final class GossipActivity: EnrichedActivity<GetStream.User, String, DefaultReaction> {
private enum CodingKeys: String, CodingKey {
case user
}
var user: AvatarLead
init(verb: Verb, object: String, user: AvatarLead, startDate: Date = Date()) {
self.user = user
super.init(actor: .init(id: user.id), verb: verb, object: object)
}
required init(from decoder: Decoder) throws {
let container = try decoder.container(keyedBy: CodingKeys.self)
user = try container.decode(AvatarLead.self, forKey: .user)
try super.init(from: decoder)
}
override public func encode(to encoder: Encoder) throws {
var container = encoder.container(keyedBy: CodingKeys.self)
try container.encode(user, forKey: .user)
try super.encode(to: encoder)
}
}self.userFeed?.get(typeOf: GossipActivity.self, completion: { result in
switch result {
case .success(let activiti):
self.gossip = activiti.results
case .failure(let e):
print(e)
}
})This is dangerous because if one activity does not confirm to GossipActivity then the entire feed disappears.
Metadata
Metadata
Assignees
Labels
No labels