mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-12 15:21:00 +00:00
Added startDate and endDate as new properties of the 'Event' domain class (including edit UI)
This commit is contained in:
1 parent
56ba487259
commit
b5bff27a10
36 files changed
+327
-161
No files matched your search
+9
-3
@@ -173,7 +173,12 @@ public class DomainObjectFactoryImpl implements DomainObjectFactory {
|
||||
}
|
||||
|
||||
private TimePoint loadTimePoint(DBObject object, FieldNames field) {
|
||||
return new MillisecondsTimePoint(((Number) object.get(field.name())).longValue());
|
||||
TimePoint result = null;
|
||||
Number timePointAsNumber = (Number) object.get(field.name());
|
||||
if(timePointAsNumber != null) {
|
||||
result = new MillisecondsTimePoint(timePointAsNumber.longValue());
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -836,10 +841,11 @@ public class DomainObjectFactoryImpl implements DomainObjectFactory {
|
||||
private Event loadEvent(DBObject eventDBObject) {
|
||||
String name = (String) eventDBObject.get(FieldNames.EVENT_NAME.name());
|
||||
UUID id = (UUID) eventDBObject.get(FieldNames.EVENT_ID.name());
|
||||
String publicationUrl = (String) eventDBObject.get(FieldNames.EVENT_PUBLICATION_URL.name());
|
||||
TimePoint startDate = loadTimePoint(eventDBObject, FieldNames.EVENT_START_DATE);
|
||||
TimePoint endDate = loadTimePoint(eventDBObject, FieldNames.EVENT_END_DATE);
|
||||
boolean isPublic = eventDBObject.get(FieldNames.EVENT_IS_PUBLIC.name()) != null ? (Boolean) eventDBObject.get(FieldNames.EVENT_IS_PUBLIC.name()) : false;
|
||||
Venue venue = loadVenue((DBObject) eventDBObject.get(FieldNames.VENUE.name()));
|
||||
Event result = new EventImpl(name, venue, publicationUrl, isPublic, id);
|
||||
Event result = new EventImpl(name, startDate, endDate, venue, isPublic, id);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
+2
-1
@@ -11,8 +11,9 @@ public enum FieldNames {
|
||||
*/
|
||||
EVENT_NAME,
|
||||
EVENT_ID,
|
||||
EVENT_PUBLICATION_URL,
|
||||
EVENT_IS_PUBLIC,
|
||||
EVENT_START_DATE,
|
||||
EVENT_END_DATE,
|
||||
|
||||
REGATTA_NAME,
|
||||
REGATTA_ID,
|
||||
|
||||
+8
-3
@@ -106,11 +106,15 @@ public class MongoObjectFactoryImpl implements MongoObjectFactory {
|
||||
}
|
||||
|
||||
private void storeTimePoint(TimePoint timePoint, DBObject result, FieldNames field) {
|
||||
result.put(field.name(), timePoint.asMillis());
|
||||
if(timePoint != null) {
|
||||
result.put(field.name(), timePoint.asMillis());
|
||||
}
|
||||
}
|
||||
|
||||
private void storeTimed(Timed timed, DBObject result) {
|
||||
storeTimePoint(timed.getTimePoint(), result, FieldNames.TIME_AS_MILLIS);
|
||||
if(timed.getTimePoint() != null) {
|
||||
storeTimePoint(timed.getTimePoint(), result, FieldNames.TIME_AS_MILLIS);
|
||||
}
|
||||
}
|
||||
|
||||
private void storeSpeedWithBearing(SpeedWithBearing speedWithBearing, DBObject result) {
|
||||
@@ -422,7 +426,8 @@ public class MongoObjectFactoryImpl implements MongoObjectFactory {
|
||||
DBObject eventDBObject = new BasicDBObject();
|
||||
eventDBObject.put(FieldNames.EVENT_NAME.name(), event.getName());
|
||||
eventDBObject.put(FieldNames.EVENT_ID.name(), event.getId());
|
||||
eventDBObject.put(FieldNames.EVENT_PUBLICATION_URL.name(), event.getPublicationUrl());
|
||||
storeTimePoint(event.getStartDate(), eventDBObject, FieldNames.EVENT_START_DATE);
|
||||
storeTimePoint(event.getEndDate(), eventDBObject, FieldNames.EVENT_END_DATE);
|
||||
eventDBObject.put(FieldNames.EVENT_IS_PUBLIC.name(), event.isPublic());
|
||||
DBObject venueDBObject = getVenueAsDBObject(event.getVenue());
|
||||
eventDBObject.put(FieldNames.VENUE.name(), venueDBObject);
|
||||
|
||||
Reference in new issue
Block a user