Skip to content
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

[CS2113-T11-3] MeetingJio #34

Open
wants to merge 690 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
690 commits
Select commit Hold shift + click to select a range
e06aa8b
Handle exception when free command is used with an event starting bef…
angyongming Apr 6, 2022
a22fae6
Modify JavaDoc to take into account changes to free command
angyongming Apr 6, 2022
caab62d
Revamp free command to take into account 0000-0800
angyongming Apr 6, 2022
808b07e
Update exception handling, error messages, javadoc and JUnit testing …
angyongming Apr 6, 2022
9f6d1f5
Minor edits to free command and update user guide
angyongming Apr 6, 2022
d3f3eee
Modify according to TA's code review
angyongming Apr 6, 2022
170d290
Merge pull request #220 from angyongming/free-error-catching-branch
Apr 6, 2022
5fea7ae
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 6, 2022
6130c8e
Edit error message for user does not exist to suggest user to add_use…
angyongming Apr 6, 2022
6b40637
Update user guide and developer guide
angyongming Apr 6, 2022
36551a6
Do up PPP
angyongming Apr 6, 2022
878a500
Merge pull request #221 from angyongming/ppp-branch
ibrahimisramos Apr 6, 2022
8708046
Fix minor issues and checkstyle
yanjie1017 Apr 6, 2022
48431d4
Add checkName
yanjie1017 Apr 6, 2022
2fda9a5
Format error messages
yanjie1017 Apr 6, 2022
5e4c8f5
Make meetings non-editable
yanjie1017 Apr 6, 2022
c95ac26
Fix bug in prepareEdit
yanjie1017 Apr 6, 2022
c403530
Fix checkstyle
yanjie1017 Apr 6, 2022
b7ba033
Fix checkstyle
yanjie1017 Apr 6, 2022
84d452e
Fix checkstyle
yanjie1017 Apr 6, 2022
760d2b8
Fix checkstyle
yanjie1017 Apr 6, 2022
f5efa3e
Fix checkstyle
yanjie1017 Apr 6, 2022
e1aa56b
Fix checkstyle
yanjie1017 Apr 6, 2022
1c57d14
Fix checkstyle
yanjie1017 Apr 6, 2022
157b2f5
Fix checktstyle
yanjie1017 Apr 6, 2022
71473dd
Fix bugs in I/O redirection test
yanjie1017 Apr 6, 2022
046f728
Add existing meetings to new timetable
yanjie1017 Apr 6, 2022
4173d9e
Fix I/O redirection test
yanjie1017 Apr 6, 2022
df9034d
Merge branch 'master' of https://github.com/ibrahimisramos/tp
ibrahimisramos Apr 7, 2022
561c55b
Edit PPP
ibrahimisramos Apr 7, 2022
efa2e68
Add Pipe border for condense diagram
ibrahimisramos Apr 7, 2022
afc5da9
Update sequence diagram of delete command
ibrahimisramos Apr 7, 2022
c6ff9f7
Merge pull request #5 from yanjie1017/branch-v2.1
yanjie1017 Apr 7, 2022
b3b5925
Edit sequence diagram for clearcommand
ibrahimisramos Apr 7, 2022
03e3bf2
Refactor test file
yanjie1017 Apr 7, 2022
af2acc8
Edit AddMeeting sequence diagram
ibrahimisramos Apr 7, 2022
2a3edeb
Update Delete sequence diagram
ibrahimisramos Apr 7, 2022
c083bab
Add JUnit test for prepAddUser and prepEdit
yanjie1017 Apr 7, 2022
bea75da
Remove sort from addEvent methods
yanjie1017 Apr 7, 2022
50e84d2
Edit Sequence diagram for add meeting command
ibrahimisramos Apr 7, 2022
0c55f2c
Remove mode check in equals method
yanjie1017 Apr 7, 2022
a18f9f5
Add JUnit test for timetables
yanjie1017 Apr 7, 2022
3d60910
Change AddUserCommandTest
yanjie1017 Apr 7, 2022
2c4f808
Edit Delete and AddMeeting Command sequence diagram
ibrahimisramos Apr 7, 2022
6fea9e7
Edit ClearCommand sequence diagram
ibrahimisramos Apr 7, 2022
203b563
Merge pull request #224 from ibrahimisramos/edit-dg-and-sequence-diagram
Apr 7, 2022
52ba42f
Change TimetableTest.java
yanjie1017 Apr 7, 2022
4c302c3
Add ExtraParametersException
yanjie1017 Apr 7, 2022
818ac6d
Update ParserTest
yanjie1017 Apr 7, 2022
db391d6
Change message
yanjie1017 Apr 7, 2022
8ded86a
Merge pull request #226 from yanjie1017/branch-ExtraParams
ibrahimisramos Apr 7, 2022
e0f3010
Update UG
yanjie1017 Apr 7, 2022
511c2d5
Merge pull request #222 from yanjie1017/master
angyongming Apr 7, 2022
807ba3b
Merge pull request #228 from yanjie1017/branch-UG
Apr 7, 2022
bcb44aa
Remove redundant lines
yanjie1017 Apr 7, 2022
6d9b8b1
Change PPP
yanjie1017 Apr 7, 2022
34d718f
Merge pull request #229 from yanjie1017/branch-Doc
yanjie1017 Apr 7, 2022
a3ac2d7
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 7, 2022
a91bc94
refactored methods in free command to avoid cyclic dependencies
angyongming Apr 7, 2022
95fceb1
Merge pull request #231 from angyongming/free-refactor-branch
yanjie1017 Apr 7, 2022
c76645a
Edit exit command
Apr 7, 2022
735d412
Update Project Portfolio Page
Apr 7, 2022
61d3ea1
Merge pull request #232 from lihao-InfoSec/master
angyongming Apr 7, 2022
e4bf253
Rename PPP
yanjie1017 Apr 7, 2022
fc04414
Merge pull request #233 from yanjie1017/master
yanjie1017 Apr 7, 2022
5a2574a
Merge branch 'master' of https://github.com/ibrahimisramos/tp
ibrahimisramos Apr 8, 2022
ed9d41f
Edit sequence diagram for clear command
ibrahimisramos Apr 8, 2022
a44ed52
Remove magic string
ibrahimisramos Apr 8, 2022
f24fda4
Change boolean methods to follow conventions
ibrahimisramos Apr 8, 2022
603a8e8
Rectify Code Quality violations
ibrahimisramos Apr 8, 2022
423f434
Fix #198, #128, #39, #189, #192, #213, #230
ibrahimisramos Apr 8, 2022
50a76e2
Merge pull request #234 from ibrahimisramos/code-quality
Apr 8, 2022
278840f
Add Junit Testing for ParserLocalData
Apr 8, 2022
6f92911
Update user guide on data file format
Apr 8, 2022
899d59c
Add exception handle for NoSuchElementException
Apr 8, 2022
a786440
Rectify Code Quality violations
Apr 8, 2022
8472f87
Update PPP
Apr 8, 2022
2af69d6
Rename boolean variables
yanjie1017 Apr 8, 2022
46860e5
Fix bugs in ParserArguments
yanjie1017 Apr 8, 2022
36582df
Fix bugs in ParserArguments
yanjie1017 Apr 8, 2022
59bafd0
Merge pull request #237 from lihao-InfoSec/master
ibrahimisramos Apr 8, 2022
4c5119c
Merge branch 'master' into branch-yj
yanjie1017 Apr 8, 2022
64461ad
Merge pull request #238 from yanjie1017/branch-yj
ibrahimisramos Apr 8, 2022
094c1a8
Add general sequence diagram
yanjie1017 Apr 8, 2022
f853d3f
Add EditCommandSequenceDiagram
yanjie1017 Apr 8, 2022
5e7996c
Merge pull request #239 from yanjie1017/branch-DG
ibrahimisramos Apr 9, 2022
79ad211
Merge branch 'master' of https://github.com/ibrahimisramos/tp
ibrahimisramos Apr 9, 2022
1bd36bc
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 9, 2022
6f2f576
edit junit testing for delete command
angyongming Apr 9, 2022
4b6c36e
Correct checkstyle violations
angyongming Apr 9, 2022
9073bf7
Merge pull request #240 from angyongming/delete-junit-branch
ibrahimisramos Apr 9, 2022
c5b0eed
Merge branch 'master' of https://github.com/ibrahimisramos/tp
ibrahimisramos Apr 9, 2022
21a408a
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 9, 2022
e52afac
Add Class Diagram for Timetable
ibrahimisramos Apr 9, 2022
d3fe687
Edit DG sections to be pased on packages
ibrahimisramos Apr 9, 2022
c289b09
Remove use of meetinglist and its relevant methods as it is redundant
ibrahimisramos Apr 9, 2022
7164a1f
Add Parser class diagrams
yanjie1017 Apr 9, 2022
ddf5101
Merge branch 'master' into master
yanjie1017 Apr 9, 2022
ef268f6
Merge pull request #241 from yanjie1017/master
angyongming Apr 9, 2022
644fc9e
Add class diagram for mastertimetable
ibrahimisramos Apr 9, 2022
d776ee0
Add class diagram for event class
angyongming Apr 9, 2022
693cec5
Add class diagram for Ui class
angyongming Apr 9, 2022
d2f4116
Edit free command sequence diagram
angyongming Apr 9, 2022
c8e9818
Edit list command sequence diagram
angyongming Apr 9, 2022
5a712a6
Change class diagram of timetable name
ibrahimisramos Apr 9, 2022
55c636e
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 9, 2022
4c0ce0b
Merge branch 'master' into class-diagram-branch
angyongming Apr 9, 2022
ecfa9d0
Revert "Remove use of meetinglist and its relevant methods as it is r…
ibrahimisramos Apr 9, 2022
bf58b9d
Merge pull request #243 from angyongming/class-diagram-branch
yanjie1017 Apr 9, 2022
d680c6e
Revert the remove of meeting list
ibrahimisramos Apr 9, 2022
1fcfc1a
Add in Acknowledgements
ibrahimisramos Apr 9, 2022
05535b5
Fix parser test issue of failing tp-check
ibrahimisramos Apr 9, 2022
ac0e993
Add user stories
yanjie1017 Apr 9, 2022
ca25c88
Merge pull request #242 from ibrahimisramos/timetable-dg
angyongming Apr 9, 2022
4055810
Merge branch 'class-diagram-branch'
angyongming Apr 9, 2022
e896802
Change DG
yanjie1017 Apr 9, 2022
5603b29
Update NFR and instructions for manaul testing for developer guide
angyongming Apr 9, 2022
143326e
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 9, 2022
8671b4f
Merge branch 'master' into dg-branch
angyongming Apr 9, 2022
68d5de9
Add command class diagram and storage class diagram
Apr 9, 2022
9ce6826
Add EditCommand in DG
yanjie1017 Apr 9, 2022
e3cdcb1
test
ibrahimisramos Apr 9, 2022
24dc1b7
Update link to v2.1
angyongming Apr 9, 2022
96e5df4
Merge branch 'master' of https://github.com/ibrahimisramos/tp
ibrahimisramos Apr 9, 2022
8252a73
Merge pull request #246 from angyongming/dg-branch
Apr 9, 2022
446db4e
Merge branch 'master' into master
ibrahimisramos Apr 9, 2022
52107c7
Merge branch 'master' into master
Apr 9, 2022
655300a
Edit version to 2.1
ibrahimisramos Apr 9, 2022
d3c9ba2
Merge pull request #247 from yanjie1017/master
ibrahimisramos Apr 9, 2022
ef6e20b
Merge pull request #248 from lihao-InfoSec/master
yanjie1017 Apr 9, 2022
2753457
edit user command output for add_user and add_lesson
ibrahimisramos Apr 9, 2022
840b728
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 9, 2022
e297649
Update DG
Apr 9, 2022
7cc538e
Merge pull request #249 from lihao-InfoSec/master
ibrahimisramos Apr 9, 2022
f36230a
Add JavaDocs
yanjie1017 Apr 9, 2022
3ebdaec
Edit UG to have consistent user output
ibrahimisramos Apr 9, 2022
0717535
Remove asking of name from welcome message
ibrahimisramos Apr 9, 2022
571483e
Edit DG and refactor diagrams
angyongming Apr 9, 2022
ae3d805
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 9, 2022
a7cbd6e
Merge branch 'master' into edit-dg-branch
angyongming Apr 9, 2022
98de929
Fix checkstyle
yanjie1017 Apr 9, 2022
b687f12
Edit english of UG
ibrahimisramos Apr 9, 2022
123a5a5
Update Javadocs
yanjie1017 Apr 9, 2022
43ab3ab
Merge pull request #250 from yanjie1017/master
Apr 9, 2022
7733918
Merge pull request #251 from ibrahimisramos/user-guide
yanjie1017 Apr 9, 2022
9383b88
Edit list and free feature in DG
angyongming Apr 9, 2022
127640d
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 9, 2022
888e9f1
Merge branch 'master' into edit-dg-branch
angyongming Apr 9, 2022
e5e9ded
Change checkName
yanjie1017 Apr 9, 2022
0fa70d0
Merge pull request #252 from angyongming/edit-dg-branch
yanjie1017 Apr 9, 2022
0bdf164
Edit add_user description to be more specific
ibrahimisramos Apr 9, 2022
38cd27d
Merge branch 'AY2122S2-CS2113-T11-3:master' into master
yanjie1017 Apr 9, 2022
fe9c00f
Merge pull request #254 from ibrahimisramos/user-guide
Apr 9, 2022
91f5dd7
Merge pull request #253 from yanjie1017/master
Apr 9, 2022
be647ef
Add Parser components to DG
yanjie1017 Apr 9, 2022
0d84291
Merge branch 'master' of https://github.com/ibrahimisramos/tp
ibrahimisramos Apr 9, 2022
6b11693
Merge pull request #255 from yanjie1017/master
ibrahimisramos Apr 9, 2022
f45bbfc
Merge branch 'master' of https://github.com/ibrahimisramos/tp
ibrahimisramos Apr 9, 2022
2d04853
Merge branch 'master' into edit-dg
ibrahimisramos Apr 9, 2022
29dfc43
Add in timetables component into DG
ibrahimisramos Apr 9, 2022
9b1110c
Edit AddMeetingSequence
ibrahimisramos Apr 9, 2022
017d71c
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 9, 2022
5647b85
Edit SQ of AddMeeting
ibrahimisramos Apr 9, 2022
1033fe1
Edit SQ
ibrahimisramos Apr 9, 2022
f1e1f5e
Update sequence diagram for list and free
angyongming Apr 9, 2022
62d093b
Fix error found in loading data
Apr 9, 2022
cccc0fa
Change ClearCommand to list.clear() and remove extra methods
ibrahimisramos Apr 9, 2022
dffac24
Merge pull request #256 from angyongming/terminate-dg-branch
Apr 9, 2022
24803d8
fix style
Apr 9, 2022
25e0c51
Merge branch 'master' of https://github.com/AY2122S2-CS2113-T11-3/tp
Apr 9, 2022
2934d16
Edit Clear SQ diagram
ibrahimisramos Apr 9, 2022
554bb39
Merge pull request #259 from ibrahimisramos/edit-dg
angyongming Apr 9, 2022
69be4a8
Merge pull request #258 from lihao-InfoSec/master
yanjie1017 Apr 9, 2022
4936cf3
Merge branch 'master' of https://github.com/ibrahimisramos/tp
ibrahimisramos Apr 11, 2022
51f7840
Add sq for Clear Command but not updated in DG yet
ibrahimisramos Apr 11, 2022
aba9c9a
Edit timetable class diagram
ibrahimisramos Apr 11, 2022
9c14896
Edit PPP
ibrahimisramos Apr 11, 2022
f6318c8
Edit Delete SQ
ibrahimisramos Apr 11, 2022
53ef3f1
Merge pull request #260 from ibrahimisramos/edit-dg-clear
Apr 11, 2022
9bef13b
Update sequence diagram
yanjie1017 Apr 11, 2022
06bde4a
Formatting UG and DG
yanjie1017 Apr 11, 2022
aa5ab13
Add EditCommandTest
yanjie1017 Apr 11, 2022
a7ee1c5
Change PPP link
yanjie1017 Apr 11, 2022
f3612fb
Merge pull request #261 from yanjie1017/master
Apr 11, 2022
89fac75
Update PPP
yanjie1017 Apr 11, 2022
36a598c
Merge pull request #262 from yanjie1017/master
yanjie1017 Apr 11, 2022
4f04f0e
Change sequence diagram
yanjie1017 Apr 11, 2022
afa8c72
Merge pull request #263 from yanjie1017/master
ibrahimisramos Apr 11, 2022
fc9ce88
Merge branch 'master' of https://github.com/ibrahimisramos/tp
ibrahimisramos Apr 11, 2022
e998247
Change method name AddMeeting test
ibrahimisramos Apr 11, 2022
d055461
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 11, 2022
60d7024
Add photo
yanjie1017 Apr 11, 2022
4b07742
edit dg
angyongming Apr 11, 2022
2649260
update about us
Apr 11, 2022
08d3321
rename PPP
Apr 11, 2022
ddf699c
Change naming of clearcommand
ibrahimisramos Apr 11, 2022
0b20b14
Merge branch 'master' into change-test-method-name
ibrahimisramos Apr 11, 2022
a6cad4e
Merge pull request #265 from lihao-InfoSec/master
ibrahimisramos Apr 11, 2022
f61013f
Update PP
yanjie1017 Apr 11, 2022
482d51a
Merge branch 'master' of https://github.com/ibrahimisramos/tp
ibrahimisramos Apr 11, 2022
dc0d84e
Merge pull request #264 from ibrahimisramos/change-test-method-name
yanjie1017 Apr 11, 2022
7f0c5f6
change naming conventions for junit testing for list and free command
angyongming Apr 11, 2022
fca3fa5
Merge branch 'master' into master
yanjie1017 Apr 11, 2022
af3b48d
Merge pull request #266 from yanjie1017/master
yanjie1017 Apr 11, 2022
91ec4a2
Merge pull request #267 from angyongming/testing-naming-convention-br…
yanjie1017 Apr 11, 2022
08cd9eb
Add case where ctrl c is placed, print error message, everything cleared
ibrahimisramos Apr 11, 2022
9512669
Add in Ctrl-C case in UG under limitations
ibrahimisramos Apr 11, 2022
f26c8ea
fix styling
Apr 11, 2022
3d49e55
Merge branch 'master' of https://github.com/AY2122S2-CS2113-T11-3/tp
Apr 11, 2022
5cf144c
Edit DG to standardise and remove architecture
ibrahimisramos Apr 11, 2022
a5580ac
Merge pull request #268 from ibrahimisramos/all-test-works
yanjie1017 Apr 11, 2022
1affd27
fix styling
Apr 11, 2022
64237f3
Merge branch 'master' of https://github.com/AY2122S2-CS2113-T11-3/tp
Apr 11, 2022
eb2ab18
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 11, 2022
ed39713
Merge pull request #269 from lihao-InfoSec/master
angyongming Apr 11, 2022
7aa2a22
Change error meggaes
yanjie1017 Apr 11, 2022
4d1adc2
fix styling
Apr 11, 2022
ac5024d
Edit free error message
ibrahimisramos Apr 11, 2022
e3f7f44
Merge pull request #270 from yanjie1017/master
Apr 11, 2022
e7aca37
Merge pull request #272 from ibrahimisramos/Minor-edits
Apr 11, 2022
a96265f
make changes to class diagrams and user guide
Apr 11, 2022
d0c580a
Merge branch 'master' of https://github.com/AY2122S2-CS2113-T11-3/tp
Apr 11, 2022
8965e3c
Change DG
yanjie1017 Apr 11, 2022
1a0c0fc
Merge pull request #271 from lihao-InfoSec/master
ibrahimisramos Apr 11, 2022
9e26550
Edit the remaining changes
ibrahimisramos Apr 11, 2022
f475ec3
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 11, 2022
feec4a7
Merge pull request #273 from yanjie1017/master
Apr 11, 2022
9a41220
rectify formatting error in ppp
angyongming Apr 11, 2022
362ec6b
Merge pull request #275 from angyongming/ppp-format-branch
Apr 11, 2022
9fb32d8
Merge pull request #274 from ibrahimisramos/Minor-edits
yanjie1017 Apr 11, 2022
3476f7c
Edit sq for delete command activation bar
ibrahimisramos Apr 11, 2022
a0008ec
Merge branch 'master' of https://github.com/angyongming/tp
angyongming Apr 11, 2022
863f873
Add photo
angyongming Apr 11, 2022
281a46b
Edit ppp
angyongming Apr 11, 2022
bf1eae7
Merge pull request #276 from ibrahimisramos/Minor-edits
Apr 11, 2022
a43de92
Merge pull request #277 from angyongming/photo-branch
ibrahimisramos Apr 11, 2022
55244e6
Change sequence diagram
yanjie1017 Apr 11, 2022
c239e6a
Merge pull request #278 from yanjie1017/master
yanjie1017 Apr 11, 2022
71a5550
Edit sequence diagrams
ibrahimisramos Apr 11, 2022
40e6a55
Format link in DG
yanjie1017 Apr 11, 2022
e92392e
Edit load and save sequence diagram
Apr 11, 2022
9a61d10
Merge branch 'master' of https://github.com/AY2122S2-CS2113-T11-3/tp
Apr 11, 2022
7a7daa9
Merge branch 'master' of https://github.com/ibrahimisramos/tp
ibrahimisramos Apr 11, 2022
fa399c5
Merge branch 'master' into new-changes-sq
ibrahimisramos Apr 11, 2022
de19a9a
Merge pull request #281 from lihao-InfoSec/master
angyongming Apr 11, 2022
0a3ccc7
Merge pull request #280 from yanjie1017/master
yanjie1017 Apr 11, 2022
14c3c43
Merge pull request #279 from ibrahimisramos/new-changes-sq
yanjie1017 Apr 11, 2022
2076b34
update user guide and load sequence diagram
Apr 11, 2022
4e862f1
Merge branch 'master' of https://github.com/AY2122S2-CS2113-T11-3/tp
Apr 11, 2022
5872042
Merge pull request #282 from lihao-InfoSec/master
ibrahimisramos Apr 11, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ src/main/resources/docs/
# MacOS custom attributes files created by Finder
.DS_Store
*.iml
MeetingJio.txt
bin/

/text-ui-test/ACTUAL.txt
Expand Down
20 changes: 20 additions & 0 deletions MeetingJio.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
ibra
1.[M] TITLE: meeting5 DAY: wednesday START: 1230 END: 1330 MODE: online
2.[M] TITLE: meeting5 DAY: thursday START: 1230 END: 1330 MODE: online
3.[L] TITLE: cs2113 DAY: friday START: 1100 END: 1300 MODE: online
4.[L] TITLE: cs2113 DAY: friday START: 1430 END: 1530 MODE: online
5.[L] TITLE: abc DAY: saturday START: 1230 END: 1330 MODE: physical
ym
1.[M] TITLE: meeting2 DAY: wednesday START: 1230 END: 1330 MODE: online
2.[M] TITLE: meeting DAY: thursday START: 1230 END: 1330 MODE: online
3.[L] TITLE: cs2113 DAY: friday START: 1230 END: 1330 MODE: online
4.[L] TITLE: cs2113 DAY: friday START: 1430 END: 1530 MODE: online
john
1.[L] TITLE: cs2113 DAY: monday START: 1200 END: 1300 MODE: online
2.[L] TITLE: cs2102 DAY: monday START: 1300 END: 1400 MODE: online
3.[M] TITLE: meeting2 DAY: wednesday START: 1230 END: 1330 MODE: online
4.[M] TITLE: meeting4 DAY: thursday START: 1230 END: 1330 MODE: online
peter
1.[L] TITLE: cs2113 DAY: monday START: 1200 END: 1300 MODE: online
2.[M] TITLE: meeting2 DAY: wednesday START: 1230 END: 1330 MODE: online
3.[M] TITLE: meeting DAY: thursday START: 1230 END: 1330 MODE: online
5 changes: 3 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@ test {
}

application {
mainClassName = "seedu.duke.Duke"
mainClassName = "seedu.meetingjio.MeetingJio"
}

shadowJar {
archiveBaseName = "duke"
archiveBaseName = "meetingjio"
archiveClassifier = null
}

Expand All @@ -43,4 +43,5 @@ checkstyle {

run{
standardInput = System.in
enableAssertions = true
}
15 changes: 8 additions & 7 deletions docs/AboutUs.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
# About us

Display | Name | Github Profile | Portfolio
--------|:----:|:--------------:|:---------:
![](https://via.placeholder.com/100.png?text=Photo) | John Doe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md)
![](https://via.placeholder.com/100.png?text=Photo) | Don Joe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md)
![](https://via.placeholder.com/100.png?text=Photo) | Ron John | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md)
![](https://via.placeholder.com/100.png?text=Photo) | John Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md)
![](https://via.placeholder.com/100.png?text=Photo) | Don Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md)

| Display | Name | Github Profile | Portfolio |
|-----------------------------------------------------|:--------------:|:-------------------------------------------:|:----------------------------------:|
| ![](https://via.placeholder.com/100.png?text=Photo) | Ibrahim Sharul | [Github](https://github.com/ibrahimisramos) | [Portfolio](team/ibrahimsharul.md) |
| ![](https://via.placeholder.com/100.png?text=Photo) | Ang Yong Ming | [Github](https://github.com/angyongming) | [Portfolio](team/angyongming.md) |
| ![](https://via.placeholder.com/100.png?text=Photo) | Toh Yan Jie | [Github](https://github.com/yanjie1017) | [Portfolio](team/tohyanjie.md) |
| ![](https://via.placeholder.com/100.png?text=Photo) | Li Hao | [Github](https://github.com/lihao-InfoSec) | [Portfolio](team/lihao.md) |

201 changes: 194 additions & 7 deletions docs/DeveloperGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,207 @@

{list here sources of all reused/adapted ideas, code, documentation, and third-party libraries -- include links to the original source as well}
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be updated?


## Design & implementation
# 1. Overview
MeetingJio is a program for **finding potential time slots for team meetings based on everyone’s availability**.

# 2. Design

## 2.1 Architecture

{Describe the design and implementation of the product. Use UML diagrams and short code snippets where applicable.}

## 2.2 UI Component

## 2.3 Logic Component
- Parsers
- Commands

## 2.4 Model Component
- Timetables
- Events

## 2.5 Storage Component
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps StorageFile class can be mentioned here.


# 3. Implementation
This section describes some noteworthy details on how certain features are implemented.

## 3.1 Add Feature
The `add` command is a command that allows user to
1. add new users to the master timetable.
2. add new events to the timetables.

The following sequence diagram shows how the `add` operation generally works.

![AddCommandSequenceDiagram](diagrams/AddCommandSequenceDiagram.png)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should parseCommand() call be a solid line?
image
Perhaps the deletion cross should end the life line, rather than the activation bar?
image
E.g.
image


**_Note:_**

This is a condensed diagram. Several terms in the sequence diagram above have been substituted by a common term.

Common Term | User-specific term | Lesson-specific term | Meeting-specific term |
------------|-------------------|----------------------|----------------------------|
add | `"add_user ..."` | `"add_lesson ..."` | `"add_meeting ..."`
AddCommand | `AddUserCommand` | `AddLessonCommand` | `AddMeetingCommand`
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This annotaion is very clear and rigorous. Good job!



## 3.1.1 Add User Feature
`add_user` adds new user and his or her timetable into the master timetable.

The following sequence diagram shows how the `add_user` command works:
![AddUserCommandSequenceDiagram](diagrams/AddUserCommandSequenceDiagram.png)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider using

[ -> Command instead of none -> Command.

image

This can help you remove the "Unspecified" object.



## 3.1.2 Add Events Feature

`add_lesson` allows users to create a new lesson and add it to their own timetables.

`add_meeting` allows users to create a new meeting and add it to all the existing timetables.


The following sequence diagram shows how the `add_lesson` operation works in detail.
![AddMeetingCommandSequenceDiagram](diagrams/AddLessonCommandSequenceDiagram.png)

Given below is the steps on how the `add_lesson` operation works.

>To be added

The following sequence diagram shows how the `add_meeting` operation works in detail.
![AddMeetingCommandSequence](diagrams/AddMeetingCommandSequence.png)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't a box in a sequence diagram be labeled as opt instead of alt if there is no else case?
image

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you think that the formatting of the conditions is ambiguous?
check if meeting clash with any event and if meeting exists already could be better phrased as a boolean and add meeting does not tell me the condition for this block
image
image

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the object for DeleteCommand necessary?
image

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the constructor of Meeting calling a method of AddMethodCommand?
image

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are ERROR_OVERRLAPPING_MEETING and ERROR_DUPLICATE_MEETING methods of the UI class?
image
They seem to be labeled as a method invocation

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the checkIfClash() method is always called, perhaps it should not be inside the opt frame. Rather, the guard condition can be "[If clash]", then only the returning error message part is inside the opt frame.
Similarly for the checkIfMeetingExistsAready() part.


Given below is the steps on how the `add_meeting` operation works.

>To be added
>
## 3.2 Listing Events Feature
The `list` command is a command that the user can input in order to list out the events he has in his timetable.

`list [user]` displays the timetable for the particular user.

`list all` displays the timetable for all users.

In essence, the `list all` command repeatedly calls `list [user]` for all users.

Before the timetable is listed out, it will also be sorted according to day and time for easy reading.

The following sequence diagram shows how the command `` is executed.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Which command is executed?

![ListCommandSequenceDiagram](diagrams/ListCommandSequenceDiagram.png)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Diagram formatting is inconsistent. Consider deciding whether to include the bottom row of boxes or not
image
image

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(Not too sure)
Can you remove the return types when constructing an object? I think you can omit return types when calling constructors.
image


## 3.3 Finding Common Free Timeslots Feature
The `free` command is a command that the user can input in order to find timeslots where all users are free.

For greater customisation, `free [duration]` displays all common timeslots which has a duration longer than specified.

The searching algorithm works by marking the busy slots of each timetable first.
Timings that are not marked 'busy' are then identified as free time slots.

The following sequence diagram shows how the command `free` is executed.
![FreeCommandSequenceDiagram](diagrams/FreeCommandSequenceDiagram.png)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can the footer be removed?

hide footbox

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider adding in object deletion notations where appropriate


## 3.4 Delete events `delete`

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the additional delete in this line intentional? Seems inconsistent compared to the rest of the document

Deletes an event from the user's specified timetable

**Format:** ` delete n/NAME i/INDEX`

* Deletes from the timetable of user
* Deletes the lesson at the specified `INDEX`.
* The `INDEX` refers to the index number shown in the displayed lesson list.

Example of usage:

`delete n/John i/1`

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps there is a lack of example inputs/outputs? Consider adding this for your add portion as well


If the event is a meeting, it will delete this event from all users

The following sequence diagram shows how the `delete` command works:
![DeleteCommandSequenceDiagram](diagrams/DeleteCommandSequenceDiagram.png)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it possible to use ref to break up the diagrams into smaller pieces?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How does the control flow go from 1 to 2? Or should the activation bar end at 1?
image


Before the timetable is listed out, it will also be sorted according to day and time for easy reading.

## 3.4 Data Saving Feature

The save mechanism is facilitated by StorageFile. It creates a text file in the local machine and writes all the elements
in the MasterTimetable and Timetable to the text file in human-readable format.

Given below is the steps on how the save operation works.

Step 1: When the user exits the application. The StorageFile.saveData will be initialized.

Step 2: It will check for the existence of the data file. If the file is not found, it will create the file.
Else do nothing.

Step 3: After creating the file, collateAll method will be called to consolidate all elements in the MasterTimetable and Timetable list,
and write them into the data file.

Step 4: A message will be shown to the user, informing him that the data has been saved successfully. For any exception
encountered along the way, an error message will be shown.

The following sequence diagram shows how the save operation works:
![SaveSequenceDiagram](diagrams/SaveSequenceDiagram.png)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should the lifeline extend past the point where an object is deleted?
image

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps the message should start from the activation bar?
image


## 3.5 Loading Data Feature

The save mechanism is facilitated by StorageFile. It reads the data specified in the local machine and stores all
the records back into the MasterTimetable and Timetable list.

Given below is the steps on how the load operation works.

Step 1: When the user starts the application. The StorageFile.LoadData will be initialized.

Step 2: It will check for the existence of the data file. If the file is not found, do nothing.
Else it will open the file and extract the record line by line.

Step 3: If a record is a lesson type, then it will call ParserLocalData.prepareLoadLesson method.
Else if the record is a meeting type, then it will add the record into the meetingList.

Step 4: If there is no record left, the program will check if the previous record contain a meeting.
If yes, it will call for ParserLocalData.prepareLoadMeeting method to add all the meetings into the list.

The following sequence diagram shows how the load operation works:
![LoadSequenceDiagram](diagrams/LoadSequenceDiagram.png)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you consider splitting the different steps in Storage into multiple sequence diagrams?

Use ref frames to break up the content, e.g.

The bottom part (where you load meetings) could be a ref frame, which you can elaborate on later

image

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since theres only one condition, can the 2nd alt be replaced by opt?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should there be an activation bar after object creation?
image


## 3.6 Clear events `clear`
The `clear` command is a command that the user can clear a certain user's timetable or everyone's timetable.

`clear [user]` clears the timetable for the particular user.

`clear all` clearss the timetable for all users.

## 3.7 Edit events feature

The `edit` command is a command that allows users to edit a specified event.

The following sequence diagram shows how the `edit` command works:
![EditCommandSequenceDiagram](diagrams/EditCommandSequenceDiagram.png)

Given below is the steps on how the `edit` operation works.

>To be added

## Product scope
### Target user profile

{Describe the target user profile}
NUS Students who wish to meet as a group (be it for project meetings or to eat together)

### Value proposition

{Describe the value proposition: what problem does it solve?}
1. Allow a group of students to quickly identify a common time slot such that all of them are free to meet up

2. If no common time slot, allow students to see who is free at certain time slots

3. The longest time slot with the most number of available students should be suggested first, followed by either shorter time slots or time slots where lesser students are able to make it


## User Stories

|Version| As a ... | I want to ... | So that I can ...|
|--------|----------|---------------|------------------|
|v1.0|new user|see usage instructions|refer to them when I forget how to use the application|
|v2.0|user|find a to-do item by name|locate a to-do without having to go through the entire list|
| Version | As a ... | I want to ... | So that I can ... |
|---------|----------|----------------------------------------------|----------------------------------------------------------|
| v1.0 |new user| see usage instructions | refer to them when I forget the command format |
| v1.0 |user| add a lesson | view my schedule easily |
| v1.0 |user| delete a lesson | modify my schedule accordingly |
| v1.0 |user| view all the lessons i have in my timetable | plan my activities accordingly |
| v1.0 |user| add the location paramter to my lesson | plan my route in advance |
| v1.0 |user| add a start time and end time to my lessons | know what time a lesson starts and ends |
| v1.0 |user| clear all the lessons saved in the timetable | reset my timetable without the need to delete one by one |

## Non-Functional Requirements

Expand All @@ -36,3 +217,9 @@
## Instructions for manual testing

{Give instructions on how to do a manual product testing e.g., how to load sample data to be used for testing}

##Clear Command
The clear command is one of the commands the user can execute to clear the whole list.


Here is the sequence when the command `clear` is executed.
5 changes: 3 additions & 2 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Duke
# MeetingJio

{Give product intro here}
MeetingJio is a program for **finding potential time slots for team meetings based on everyone’s availability** via a *Command Line Interface (CLI)*.
If you can type fast, MeetingJio can get your meeting management tasks done faster than manually eyeballing your timetable.

Useful links:
* [User Guide](UserGuide.md)
Expand Down
Loading