mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-04 03:13:49 +00:00
added custom field serializer for PersonDTO
Change-Id: Ie9751a6f862193ef055b06c098ce5d978fcdcf37
This commit is contained in:
1 parent
1381e19a26
commit
8d11a87fd4
6 files changed
+67
-10
No files matched your search
+7
-2
@@ -1,9 +1,13 @@
|
||||
package com.sap.sailing.domain.common;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import com.sap.sailing.domain.common.dto.PersonDTO;
|
||||
import com.sap.sse.common.CountryCode;
|
||||
import com.sap.sse.common.Duration;
|
||||
import com.sap.sse.common.Named;
|
||||
import com.sap.sse.common.Util;
|
||||
import com.sap.sse.common.impl.NamedImpl;
|
||||
|
||||
|
||||
@@ -20,7 +24,7 @@ public class CompetitorDescriptor extends NamedImpl implements Named {
|
||||
private final String sailNumber;
|
||||
private final String name;
|
||||
private final CountryCode countryCode;
|
||||
private final Iterable<PersonDTO> persons;
|
||||
private final List<PersonDTO> persons;
|
||||
private final Double timeOnTimeFactor;
|
||||
private final Duration timeOnDistanceAllowancePerNauticalMile;
|
||||
|
||||
@@ -38,7 +42,8 @@ public class CompetitorDescriptor extends NamedImpl implements Named {
|
||||
this.name = name;
|
||||
this.teamName = teamName;
|
||||
this.countryCode = countryCode;
|
||||
this.persons = persons;
|
||||
this.persons = new ArrayList<>();
|
||||
Util.addAll(persons, this.persons);
|
||||
this.timeOnTimeFactor = timeOnTimeFactor;
|
||||
this.timeOnDistanceAllowancePerNauticalMile = timeOnDistanceAllowancePerNauticalMile;
|
||||
}
|
||||
|
||||
+54
@@ -0,0 +1,54 @@
|
||||
package com.google.gwt.user.client.rpc.core.com.sap.sailing.domain.common.dto;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import com.google.gwt.user.client.rpc.CustomFieldSerializer;
|
||||
import com.google.gwt.user.client.rpc.SerializationException;
|
||||
import com.google.gwt.user.client.rpc.SerializationStreamReader;
|
||||
import com.google.gwt.user.client.rpc.SerializationStreamWriter;
|
||||
import com.sap.sailing.domain.common.dto.PersonDTO;
|
||||
|
||||
public class PersonDTO_CustomFieldSerializer extends CustomFieldSerializer<PersonDTO> {
|
||||
|
||||
@Override
|
||||
public void serializeInstance(SerializationStreamWriter streamWriter, PersonDTO instance)
|
||||
throws SerializationException {
|
||||
serialize(streamWriter, instance);
|
||||
}
|
||||
|
||||
public static void serialize(SerializationStreamWriter streamWriter, PersonDTO instance)
|
||||
throws SerializationException {
|
||||
streamWriter.writeObject(instance.getName());
|
||||
streamWriter.writeObject(instance.getDateOfBirth());
|
||||
streamWriter.writeObject(instance.getDescription());
|
||||
streamWriter.writeObject(instance.getNationalityThreeLetterIOCAcronym());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasCustomInstantiateInstance() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PersonDTO instantiateInstance(SerializationStreamReader streamReader)
|
||||
throws SerializationException {
|
||||
return instantiate(streamReader);
|
||||
}
|
||||
|
||||
public static PersonDTO instantiate(SerializationStreamReader streamReader)
|
||||
throws SerializationException {
|
||||
return new PersonDTO(streamReader.readString(), (Date) streamReader.readObject(),
|
||||
streamReader.readString(), streamReader.readString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deserializeInstance(SerializationStreamReader streamReader, PersonDTO instance)
|
||||
throws SerializationException {
|
||||
deserialize(streamReader, instance);
|
||||
}
|
||||
|
||||
public static void deserialize(SerializationStreamReader streamReader, PersonDTO instance) {
|
||||
// Done by instantiateInstance
|
||||
}
|
||||
|
||||
}
|
||||
+1
-1
@@ -445,7 +445,7 @@ public interface SailingService extends RemoteService, FileStorageManagementGwtS
|
||||
|
||||
CompetitorDTO addOrUpdateCompetitor(CompetitorDTO competitor) throws Exception;
|
||||
|
||||
List<CompetitorDTO> addCompetitors(Iterable<CompetitorDescriptor> competitorsForSaving, String searchTag) throws Exception;
|
||||
List<CompetitorDTO> addCompetitors(List<CompetitorDescriptor> competitorsForSaving, String searchTag) throws Exception;
|
||||
|
||||
void allowCompetitorResetToDefaults(Iterable<CompetitorDTO> competitors);
|
||||
|
||||
|
||||
+2
-6
@@ -596,12 +596,8 @@ public interface SailingServiceAsync extends ServerInfoRetriever, FileStorageMan
|
||||
|
||||
void addOrUpdateCompetitor(CompetitorDTO competitor, AsyncCallback<CompetitorDTO> asyncCallback);
|
||||
|
||||
/**
|
||||
* @param searchTag
|
||||
* set as the {@code searchTag} property on all new competitors created and therefore returned in the
|
||||
* {@link CompetitorDTO#getSearchTag()} properties
|
||||
*/
|
||||
void addCompetitors(Iterable<CompetitorDescriptor> competitorsForSaving, String searchTag, AsyncCallback<List<CompetitorDTO>> asyncCallback);
|
||||
void addCompetitors(List<CompetitorDescriptor> competitorsForSaving, String searchTag,
|
||||
AsyncCallback<List<CompetitorDTO>> asyncCallback);
|
||||
|
||||
void allowCompetitorResetToDefaults(Iterable<CompetitorDTO> competitors, AsyncCallback<Void> asyncCallback);
|
||||
|
||||
|
||||
+1
-1
@@ -4828,7 +4828,7 @@ public class SailingServiceImpl extends ProxiedRemoteServiceServlet implements S
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CompetitorDTO> addCompetitors(Iterable<CompetitorDescriptor> competitorDescriptors, String searchTag) throws URISyntaxException {
|
||||
public List<CompetitorDTO> addCompetitors(List<CompetitorDescriptor> competitorDescriptors, String searchTag) throws URISyntaxException {
|
||||
List<Competitor> competitorsForSaving = new ArrayList<>();
|
||||
for (final CompetitorDescriptor competitorDescriptor : competitorDescriptors) {
|
||||
Competitor competitor = convertCompetitorDescriptorToCompetitor(competitorDescriptor, searchTag);
|
||||
|
||||
@@ -12,6 +12,8 @@
|
||||
<booleanAttribute key="default_auto_start" value="true"/>
|
||||
<intAttribute key="default_start_level" value="4"/>
|
||||
<booleanAttribute key="includeOptional" value="true"/>
|
||||
<stringAttribute key="org.eclipse.debug.core.source_locator_id" value="org.eclipse.pde.ui.launcher.PDESourceLookupDirector"/>
|
||||
<stringAttribute key="org.eclipse.debug.core.source_locator_memento" value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <sourceLookupDirector> <sourceContainers duplicates="false"> <container memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;classpathContainer path=&quot;com.google.gwt.eclipse.core.GWT_CONTAINER&quot;/&gt;&#13;&#10;" typeId="org.eclipse.jdt.launching.sourceContainer.classpathContainer"/> <container memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;default/&gt;&#13;&#10;" typeId="org.eclipse.debug.core.containerType.default"/> </sourceContainers> </sourceLookupDirector> "/>
|
||||
<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
|
||||
<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
|
||||
<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
|
||||
|
||||
Reference in new issue
Block a user