-
Notifications
You must be signed in to change notification settings - Fork 0
CPW-207 Assignment 2 Alex #27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,61 @@ | ||
| ## Conversation | ||
|
|
||
| **Responsibilities** | ||
| - Holds and receives messages sent by participants | ||
| - Maintains relationships between messages, their replies, and attachments | ||
| - Coordinates with read status tracking to determine which message each user last read. | ||
| - Contains the conversation image and title | ||
|
|
||
| **Collaborators** | ||
| - User | ||
| - Message | ||
| - WebSocket | ||
|
|
||
|
|
||
| ## WebSocket | ||
|
|
||
| **Responsibilities** | ||
| - Updates users in real time when a message, letter, invite, etc. shows up. | ||
| - Handles real-time chat events such as typing indicators and read status updates. | ||
|
|
||
| **Collaborators** | ||
| - User | ||
| - Conversation | ||
| - Notification (Inbox) | ||
|
|
||
|
|
||
| ## Message | ||
|
|
||
| **Responsibilities** | ||
| - Holds text info on the current message | ||
| - Keeps track of who sent the message and the date when it was sent | ||
|
|
||
| **Collaborators** | ||
| - Conversation | ||
| - User | ||
|
|
||
|
|
||
| ## Notification (Inbox) | ||
|
|
||
| **Responsibilities** | ||
| - Contains information about what's in the message | ||
| - Tracks who sent it and when | ||
| - Holds any associated package content or additional data | ||
|
|
||
| **Collaborators** | ||
| - User | ||
| - Conversation | ||
| - Friend | ||
|
|
||
|
|
||
| ## Friend | ||
|
|
||
| **Responsibilities** | ||
| - Represents a friendship relationship between users | ||
| - Stores friendship status and metadata (for example, when the friendship was created) | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Nice touch that Friend represents the relationship itself, including data about that friendship |
||
| - Supports friend-related actions such as sending and responding to friend requests | ||
|
|
||
| **Collaborators** | ||
| - User | ||
| - Notification (Inbox) | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Would friend collaborate with notifications, or would the conversation do that? Or are you referring to the friend request itself? |
||
| - Conversation | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The collaborator "Notification (Inbox)" references a class that doesn't have its own CRC card defined in this document. However, the codebase has a "Mail" table (DatabaseSetup.js lines 60-70) that appears to serve this purpose. Consider either adding a CRC card for Mail/Notification or removing this collaborator reference if it's not part of the messaging system being documented.