Skip to content
Snippets Groups Projects
Commit eeb9b9c7 authored by Ondřej Hrdlička's avatar Ondřej Hrdlička
Browse files

Replaced Joda time with Java Time Api

parent 9817a20d
No related branches found
No related tags found
2 merge requests!52Final project MR,!51M02review
......@@ -44,11 +44,6 @@
<artifactId>jdatepicker</artifactId>
<version>2.0.3</version>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.10.13</version>
</dependency>
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
......
......@@ -2,10 +2,9 @@ package cz.muni.fi.pv168.project.data.category;
import cz.muni.fi.pv168.project.data.IdentifiableEntity;
import cz.muni.fi.pv168.project.ui.i18n.I18N;
import org.joda.time.Duration;
import org.joda.time.PeriodType;
import java.awt.*;
import java.time.Duration;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.List;
......@@ -48,17 +47,16 @@ public class Category implements IdentifiableEntity {
}
public String getTimeDurationFormatted(LocalDate fromDate, LocalDate toDate) {
final var dayTimePeriod = getTotalDuration(fromDate, toDate).toPeriod().normalizedStandard(PeriodType.dayTime());
return I18N.getFormattedMessage("timePeriodFormat", dayTimePeriod.getDays(), dayTimePeriod.getHours());
return getTotalDuration(fromDate, toDate).toHours() + " hours";
}
public Duration getTotalDuration(LocalDate fromDate, LocalDate toDate) {
return Duration.standardHours(this.timeSpents
return this.timeSpents
.stream()
.filter(categoryTime -> categoryTime.getCompletionDate().compareTo(fromDate) >= 0)
.filter(categoryTime -> categoryTime.getCompletionDate().compareTo(toDate) <= 0)
.map(CategoryTime::getTimeInHours)
.reduce(0L, Long::sum));
.map(CategoryTime::getTimeSpent)
.reduce(Duration.ZERO, Duration::plus);
}
public void setTimeSpents(List<CategoryTime> timeSpents) {
......
package cz.muni.fi.pv168.project.data.category;
import org.joda.time.Duration;
import java.time.Duration;
import java.time.LocalDate;
import java.util.Objects;
......@@ -15,7 +14,7 @@ public class CategoryTime {
public CategoryTime(LocalDate completionDate, Long hoursSpent, Long taskId) {
this.completionDate = completionDate;
this.timeSpent = Duration.standardHours(hoursSpent);
this.timeSpent = Duration.ofHours(hoursSpent);
this.taskId = taskId;
}
......@@ -28,7 +27,7 @@ public class CategoryTime {
}
public Long getTimeInHours() {
return timeSpent.getStandardHours();
return timeSpent.toHours();
}
public LocalDate getCompletionDate() {
......@@ -52,11 +51,15 @@ public class CategoryTime {
}
public void setHoursSpent(Long hoursSpent) {
this.timeSpent = Duration.standardHours(hoursSpent);
this.timeSpent = Duration.ofHours(hoursSpent);
}
@Override
public int hashCode() {
return Objects.hash(id);
}
public Duration getTimeSpent() {
return timeSpent;
}
}
......@@ -2,8 +2,8 @@ package cz.muni.fi.pv168.project.data.task;
import cz.muni.fi.pv168.project.data.IdentifiableEntity;
import cz.muni.fi.pv168.project.data.category.Category;
import org.joda.time.Duration;
import java.time.Duration;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.time.format.FormatStyle;
......@@ -29,7 +29,7 @@ public class Task implements Completable, IdentifiableEntity {
Task(String title, Long estimatedHours, LocalDate dueDate) {
this.title = title;
this.estimatedTime = Duration.standardHours(estimatedHours);
this.estimatedTime = Duration.ofHours(estimatedHours);
this.dueDate = LocalDate.from(dueDate);
categories = new ArrayList<>();
......@@ -112,7 +112,7 @@ public class Task implements Completable, IdentifiableEntity {
}
public Long getEstimatedTime() {
return estimatedTime.getStandardHours();
return estimatedTime.toHours();
}
public void setEstimatedTime(Duration estimatedTime) {
......
......@@ -5,7 +5,6 @@ import cz.muni.fi.pv168.project.model.LocalDateModel;
import cz.muni.fi.pv168.project.ui.i18n.I18N;
import org.jdatepicker.DateModel;
import org.jdatepicker.JDatePicker;
import org.joda.time.Duration;
import javax.swing.JLabel;
import javax.swing.JPanel;
......@@ -17,6 +16,7 @@ import javax.swing.text.AttributeSet;
import javax.swing.text.BadLocationException;
import javax.swing.text.DocumentFilter;
import java.awt.BorderLayout;
import java.time.Duration;
import java.time.LocalDate;
import java.util.List;
import java.util.regex.Pattern;
......@@ -69,7 +69,7 @@ public class TaskDialog extends AbstractLaidOutDialog<Task> {
if (entity != null) {
entity.setTitle(titleField.getText());
entity.setDescription(descriptionField.getText());
entity.setEstimatedTime(Duration.standardHours(Long.parseLong(estimatedTimeField.getText())));
entity.setEstimatedTime(Duration.ofHours(Long.parseLong(estimatedTimeField.getText())));
entity.setDueDate((LocalDate) datePicker.getModel().getValue());
return entity;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment