Skip to content

Commit f325c6b

Browse files
authored
Merge pull request nus-cs2103-AY2021S2#83 from danielonges/removing-email-field
Removing Email attribute from Task
2 parents 29f2585 + 65995cf commit f325c6b

25 files changed

Lines changed: 54 additions & 361 deletions

src/main/java/seedu/address/logic/commands/AddCommand.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
package seedu.address.logic.commands;
22

33
import static java.util.Objects.requireNonNull;
4-
import static seedu.address.logic.parser.CliSyntax.PREFIX_ADDRESS;
54
import static seedu.address.logic.parser.CliSyntax.PREFIX_CODE;
6-
import static seedu.address.logic.parser.CliSyntax.PREFIX_EMAIL;
75
import static seedu.address.logic.parser.CliSyntax.PREFIX_NAME;
86
import static seedu.address.logic.parser.CliSyntax.PREFIX_PHONE;
97
import static seedu.address.logic.parser.CliSyntax.PREFIX_TAG;
@@ -24,14 +22,11 @@ public class AddCommand extends Command {
2422
+ PREFIX_NAME + "NAME "
2523
+ PREFIX_CODE + "CODE "
2624
+ PREFIX_PHONE + "PHONE "
27-
+ PREFIX_EMAIL + "EMAIL "
28-
+ PREFIX_ADDRESS + "ADDRESS "
2925
+ "[" + PREFIX_TAG + "TAG]...\n"
3026
+ "Example: " + COMMAND_WORD + " "
3127
+ PREFIX_NAME + "John Doe "
3228
+ PREFIX_CODE + "CS2103 "
3329
+ PREFIX_PHONE + "98765432 "
34-
+ PREFIX_EMAIL + "johnd@example.com "
3530
+ PREFIX_TAG + "friends "
3631
+ PREFIX_TAG + "owesMoney";
3732

src/main/java/seedu/address/logic/commands/EditCommand.java

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import seedu.address.commons.util.CollectionUtil;
2020
import seedu.address.logic.commands.exceptions.CommandException;
2121
import seedu.address.model.Model;
22-
import seedu.address.model.person.Email;
2322
import seedu.address.model.person.ModuleCode;
2423
import seedu.address.model.person.ModuleName;
2524
import seedu.address.model.person.Phone;
@@ -42,7 +41,6 @@ public class EditCommand extends Command {
4241
+ "[" + PREFIX_NAME + "NAME] "
4342
+ "[" + PREFIX_CODE + "CODE] "
4443
+ "[" + PREFIX_PHONE + "PHONE] "
45-
+ "[" + PREFIX_EMAIL + "EMAIL] "
4644
+ "[" + PREFIX_TAG + "TAG]...\n"
4745
+ "Example: " + COMMAND_WORD + " 1 "
4846
+ PREFIX_PHONE + "91234567 "
@@ -99,12 +97,11 @@ private static Task createEditedTask(Task taskToEdit, EditTaskDescriptor editTas
9997
ModuleCode updatedModuleCode = editTaskDescriptor.getModuleCode().orElse(taskToEdit.getModuleCode());
10098
Weightage updatedWeightage = taskToEdit.getWeightage(); // edit command does not allow editing weightage
10199
Phone updatedPhone = editTaskDescriptor.getPhone().orElse(taskToEdit.getPhone());
102-
Email updatedEmail = editTaskDescriptor.getEmail().orElse(taskToEdit.getEmail());
103100
Remark updatedRemark = taskToEdit.getRemark(); // edit command does not allow editing remarks
104101
Set<Tag> updatedTags = editTaskDescriptor.getTags().orElse(taskToEdit.getTags());
105102

106103
return new Task(updatedModuleName, updatedModuleCode, updatedWeightage,
107-
updatedPhone, updatedEmail, updatedRemark, updatedTags);
104+
updatedPhone, updatedRemark, updatedTags);
108105
}
109106

110107
@Override
@@ -134,7 +131,6 @@ public static class EditTaskDescriptor {
134131
private ModuleName moduleName;
135132
private ModuleCode moduleCode;
136133
private Phone phone;
137-
private Email email;
138134
private Set<Tag> tags;
139135

140136
public EditTaskDescriptor() {
@@ -148,15 +144,14 @@ public EditTaskDescriptor(EditTaskDescriptor toCopy) {
148144
setModuleName(toCopy.moduleName);
149145
setModuleCode(toCopy.moduleCode);
150146
setPhone(toCopy.phone);
151-
setEmail(toCopy.email);
152147
setTags(toCopy.tags);
153148
}
154149

155150
/**
156151
* Returns true if at least one field is edited.
157152
*/
158153
public boolean isAnyFieldEdited() {
159-
return CollectionUtil.isAnyNonNull(moduleName, moduleCode, phone, email, tags);
154+
return CollectionUtil.isAnyNonNull(moduleName, moduleCode, phone, tags);
160155
}
161156

162157
public void setModuleName(ModuleName moduleName) {
@@ -183,14 +178,6 @@ public Optional<Phone> getPhone() {
183178
return Optional.ofNullable(phone);
184179
}
185180

186-
public void setEmail(Email email) {
187-
this.email = email;
188-
}
189-
190-
public Optional<Email> getEmail() {
191-
return Optional.ofNullable(email);
192-
}
193-
194181
/**
195182
* Sets {@code tags} to this object's {@code tags}.
196183
* A defensive copy of {@code tags} is used internally.
@@ -226,7 +213,6 @@ public boolean equals(Object other) {
226213
return getModuleName().equals(e.getModuleName())
227214
&& getModuleCode().equals(e.getModuleCode())
228215
&& getPhone().equals(e.getPhone())
229-
&& getEmail().equals(e.getEmail())
230216
&& getTags().equals(e.getTags());
231217
}
232218
}

src/main/java/seedu/address/logic/commands/RemarkCommand.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public CommandResult execute(Model model) throws CommandException {
5555

5656
Task taskToEdit = lastShownList.get(index.getZeroBased());
5757
Task editedTask = new Task(taskToEdit.getModuleName(), taskToEdit.getModuleCode(), taskToEdit.getWeightage(),
58-
taskToEdit.getPhone(), taskToEdit.getEmail(), remark, taskToEdit.getTags());
58+
taskToEdit.getPhone(), remark, taskToEdit.getTags());
5959

6060
model.setTask(taskToEdit, editedTask);
6161
model.updateFilteredTaskList(PREDICATE_SHOW_ALL_TASKS);

src/main/java/seedu/address/logic/parser/AddCommandParser.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import static seedu.address.commons.core.Messages.MESSAGE_INVALID_COMMAND_FORMAT;
44
import static seedu.address.logic.parser.CliSyntax.PREFIX_CODE;
5-
import static seedu.address.logic.parser.CliSyntax.PREFIX_EMAIL;
65
import static seedu.address.logic.parser.CliSyntax.PREFIX_NAME;
76
import static seedu.address.logic.parser.CliSyntax.PREFIX_PHONE;
87
import static seedu.address.logic.parser.CliSyntax.PREFIX_TAG;
@@ -12,7 +11,6 @@
1211

1312
import seedu.address.logic.commands.AddCommand;
1413
import seedu.address.logic.parser.exceptions.ParseException;
15-
import seedu.address.model.person.Email;
1614
import seedu.address.model.person.ModuleCode;
1715
import seedu.address.model.person.ModuleName;
1816
import seedu.address.model.person.Phone;
@@ -33,9 +31,9 @@ public class AddCommandParser implements Parser<AddCommand> {
3331
*/
3432
public AddCommand parse(String args) throws ParseException {
3533
ArgumentMultimap argMultimap =
36-
ArgumentTokenizer.tokenize(args, PREFIX_NAME, PREFIX_CODE, PREFIX_PHONE, PREFIX_EMAIL, PREFIX_TAG);
34+
ArgumentTokenizer.tokenize(args, PREFIX_NAME, PREFIX_CODE, PREFIX_PHONE, PREFIX_TAG);
3735

38-
if (!arePrefixesPresent(argMultimap, PREFIX_NAME, PREFIX_CODE, PREFIX_PHONE, PREFIX_EMAIL)
36+
if (!arePrefixesPresent(argMultimap, PREFIX_NAME, PREFIX_CODE, PREFIX_PHONE)
3937
|| !argMultimap.getPreamble().isEmpty()) {
4038
throw new ParseException(String.format(MESSAGE_INVALID_COMMAND_FORMAT, AddCommand.MESSAGE_USAGE));
4139
}
@@ -46,11 +44,10 @@ public AddCommand parse(String args) throws ParseException {
4644
// a default value of 0
4745
Weightage weightage = new Weightage(0);
4846
Phone phone = ParserUtil.parsePhone(argMultimap.getValue(PREFIX_PHONE).get());
49-
Email email = ParserUtil.parseEmail(argMultimap.getValue(PREFIX_EMAIL).get());
5047
Remark remark = new Remark(""); // add command does not allow adding remarks straightaway
5148
Set<Tag> tagList = ParserUtil.parseTags(argMultimap.getAllValues(PREFIX_TAG));
5249

53-
Task task = new Task(moduleName, moduleCode, weightage, phone, email, remark, tagList);
50+
Task task = new Task(moduleName, moduleCode, weightage, phone, remark, tagList);
5451
return new AddCommand(task);
5552
}
5653

src/main/java/seedu/address/logic/parser/EditCommandParser.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,6 @@ public EditCommand parse(String args) throws ParseException {
5555
if (argMultimap.getValue(PREFIX_PHONE).isPresent()) {
5656
editTaskDescriptor.setPhone(ParserUtil.parsePhone(argMultimap.getValue(PREFIX_PHONE).get()));
5757
}
58-
if (argMultimap.getValue(PREFIX_EMAIL).isPresent()) {
59-
editTaskDescriptor.setEmail(ParserUtil.parseEmail(argMultimap.getValue(PREFIX_EMAIL).get()));
60-
}
6158
parseTagsForEdit(argMultimap.getAllValues(PREFIX_TAG)).ifPresent(editTaskDescriptor::setTags);
6259

6360
if (!editTaskDescriptor.isAnyFieldEdited()) {

src/main/java/seedu/address/logic/parser/ParserUtil.java

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
import seedu.address.commons.core.index.Index;
1010
import seedu.address.commons.util.StringUtil;
1111
import seedu.address.logic.parser.exceptions.ParseException;
12-
import seedu.address.model.person.Email;
1312
import seedu.address.model.person.ModuleCode;
1413
import seedu.address.model.person.ModuleName;
1514
import seedu.address.model.person.Phone;
@@ -81,21 +80,6 @@ public static Phone parsePhone(String phone) throws ParseException {
8180
return new Phone(trimmedPhone);
8281
}
8382

84-
/**
85-
* Parses a {@code String email} into an {@code Email}.
86-
* Leading and trailing whitespaces will be trimmed.
87-
*
88-
* @throws ParseException if the given {@code email} is invalid.
89-
*/
90-
public static Email parseEmail(String email) throws ParseException {
91-
requireNonNull(email);
92-
String trimmedEmail = email.trim();
93-
if (!Email.isValidEmail(trimmedEmail)) {
94-
throw new ParseException(Email.MESSAGE_CONSTRAINTS);
95-
}
96-
return new Email(trimmedEmail);
97-
}
98-
9983
/**
10084
* Parses a {@code String remark} into a {@code Remark}.
10185
* Leading and trailing whitespaces will be trimmed.

src/main/java/seedu/address/model/person/Email.java

Lines changed: 0 additions & 67 deletions
This file was deleted.

src/main/java/seedu/address/model/person/Task.java

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ public class Task {
2020
private final ModuleCode moduleCode;
2121
private final Weightage weightage;
2222
private final Phone phone;
23-
private final Email email;
2423

2524
// Data fields
2625
private final Remark remark;
@@ -30,13 +29,12 @@ public class Task {
3029
* Every field must be present and not null.
3130
*/
3231
public Task(ModuleName moduleName, ModuleCode moduleCode, Weightage weightage,
33-
Phone phone, Email email, Remark remark, Set<Tag> tags) {
34-
requireAllNonNull(moduleName, moduleCode, phone, email, tags);
32+
Phone phone, Remark remark, Set<Tag> tags) {
33+
requireAllNonNull(moduleName, moduleCode, phone, tags);
3534
this.moduleName = moduleName;
3635
this.moduleCode = moduleCode;
3736
this.weightage = weightage;
3837
this.phone = phone;
39-
this.email = email;
4038
this.remark = remark;
4139
this.tags.addAll(tags);
4240
}
@@ -57,10 +55,6 @@ public Phone getPhone() {
5755
return phone;
5856
}
5957

60-
public Email getEmail() {
61-
return email;
62-
}
63-
6458
public Remark getRemark() {
6559
return remark;
6660
}
@@ -105,15 +99,14 @@ public boolean equals(Object other) {
10599
&& otherTask.getModuleCode().equals(getModuleCode())
106100
&& otherTask.getWeightage().equals(getWeightage())
107101
&& otherTask.getPhone().equals(getPhone())
108-
&& otherTask.getEmail().equals(getEmail())
109102
&& otherTask.getRemark().equals(getRemark())
110103
&& otherTask.getTags().equals(getTags());
111104
}
112105

113106
@Override
114107
public int hashCode() {
115108
// use this method for custom fields hashing instead of implementing your own
116-
return Objects.hash(moduleName, moduleCode, phone, email, remark, tags);
109+
return Objects.hash(moduleName, moduleCode, weightage, phone, remark, tags);
117110
}
118111

119112
@Override
@@ -126,8 +119,6 @@ public String toString() {
126119
.append(getWeightage())
127120
.append("; Phone: ")
128121
.append(getPhone())
129-
.append("; Email: ")
130-
.append(getEmail())
131122
.append("; Remark: ")
132123
.append(getRemark());
133124

src/main/java/seedu/address/model/util/SampleDataUtil.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66

77
import seedu.address.model.ReadOnlyTaskTracker;
88
import seedu.address.model.TaskTracker;
9-
import seedu.address.model.person.Email;
109
import seedu.address.model.person.ModuleCode;
1110
import seedu.address.model.person.ModuleName;
1211
import seedu.address.model.person.Phone;
@@ -26,22 +25,22 @@ public static Task[] getSampleTasks() {
2625
return new Task[]{
2726
new Task(new ModuleName("Alex Yeoh"), new ModuleCode("CS2103"), new Weightage(0),
2827
new Phone("87438807"),
29-
new Email("alexyeoh@example.com"), EMPTY_REMARK, getTagSet("friends")),
28+
EMPTY_REMARK, getTagSet("friends")),
3029
new Task(new ModuleName("Bernice Yu"), new ModuleCode("CS2040"), new Weightage(0),
3130
new Phone("99272758"),
32-
new Email("berniceyu@example.com"), EMPTY_REMARK, getTagSet("colleagues", "friends")),
31+
EMPTY_REMARK, getTagSet("colleagues", "friends")),
3332
new Task(new ModuleName("Charlotte Oliveiro"), new ModuleCode("CS1010"), new Weightage(0),
3433
new Phone("93210283"),
35-
new Email("charlotte@example" + ".com"), EMPTY_REMARK, getTagSet("neighbours")),
34+
EMPTY_REMARK, getTagSet("neighbours")),
3635
new Task(new ModuleName("David Li"), new ModuleCode("CS2030"), new Weightage(0),
3736
new Phone("91031282"),
38-
new Email("lidavid@example.com"), EMPTY_REMARK, getTagSet("family")),
37+
EMPTY_REMARK, getTagSet("family")),
3938
new Task(new ModuleName("Irfan Ibrahim"), new ModuleCode("CS3240"), new Weightage(0),
4039
new Phone("92492021"),
41-
new Email("irfan@example.com"), EMPTY_REMARK, getTagSet("classmates")),
40+
EMPTY_REMARK, getTagSet("classmates")),
4241
new Task(new ModuleName("Roy Balakrishnan"), new ModuleCode("CS2103"), new Weightage(0),
4342
new Phone("92624417"),
44-
new Email("royb@example.com"), EMPTY_REMARK, getTagSet("colleagues"))
43+
EMPTY_REMARK, getTagSet("colleagues"))
4544
};
4645
}
4746

0 commit comments

Comments
 (0)