Commit Graph

5 Commits (a0df56a68e5db7729a209b069bcdfd56e6d7e92a)

Author SHA1 Message Date
Michael Kirk fb9f0f9a4d Some nullability annotations
- prefer empty list (null object pattern!) for attachments vs nil
- stop passing nil args to init

// FREEBIE
9 years ago
Michael Kirk 28281ccfdd Delete lingering group avatar attachments
The images for group avatars are stored directly in the datbase, which
is fine since they are small. But then there's no reason to have them
lingering on the filesystem.

Also removed the unused group associatedAttachmentId property.

// FREEBIE
9 years ago
Michael Kirk e61c818738 Clarify message.attachments -> attachmentIds
What we *previously* refered to as attachments are actually just the
attachment's id (NSString). This has tripped me up a few too many
times.

Also, use generics with attachment id's array.

// FREEBIE
9 years ago
Michael Kirk 0f9a3334c1 Ensure interactions removed when thread is deleted
In theory, this should have already been handled by the
YapDatabaseRelationship extension via edges.

However, in practice, there were situations (cause unknown) where
interactions would exist without an edge to their corresponding thread.

Rather than being clever with the edge/callback machinery, now threads
explicitly delete all their interactions, and interactions delete all
their attachments (when applicable).

Also, a class to clean up spurious interactions / attachments

In the process:
- refactored TSYapDatabaseObject init to specify designated initializer
- added some testing niceties to TSYapDatabaseObject

// FREEBIE
9 years ago
Michael Kirk 3024225655 Get tests + ci running 10 years ago