mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-11-06 02:52:22 +00:00
split usage of sailing service into read and write, add write instances where needed into object creation
bug5221
This commit is contained in:
1 parent
fa356d94fd
commit
181fcde65a
23 files changed
+81
-75
No files matched your search
-6
@@ -9,12 +9,6 @@ import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
|
||||
import com.sap.sailing.domain.tracking.DynamicTrackedRace;
|
||||
import com.sap.sailing.domain.tracking.DynamicTrackedRegatta;
|
||||
import com.sap.sailing.domain.tracking.RaceListener;
|
||||
import com.sap.sailing.domain.tracking.TrackedRace;
|
||||
import com.sap.sailing.domain.tracking.TrackedRegatta;
|
||||
import com.sap.sailing.domain.tracking.TrackedRegattaListener;
|
||||
|
||||
/**
|
||||
* This listener is informed about every {@link TrackedRegatta} by its implemented {@link TrackedRegattaListener}. To
|
||||
|
||||
+2
-1
@@ -1,9 +1,10 @@
|
||||
package com.sap.sailing.gwt.autoplay.client.app;
|
||||
|
||||
import com.sap.sailing.gwt.home.communication.SailingDispatchSystem;
|
||||
import com.sap.sailing.gwt.home.desktop.places.user.profile.WithSailingServiceWrite;
|
||||
import com.sap.sailing.gwt.ui.client.SailingClientFactory;
|
||||
|
||||
public interface AutoPlayClientFactory extends SailingClientFactory {
|
||||
public interface AutoPlayClientFactory extends SailingClientFactory, WithSailingServiceWrite {
|
||||
AutoPlayPlaceNavigator getPlaceNavigator();
|
||||
|
||||
void setAutoPlayContext(AutoPlayContext configurationSixtyInch);
|
||||
|
||||
+8
@@ -16,12 +16,14 @@ import com.sap.sailing.gwt.ui.client.MediaServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.RemoteServiceMappingConstants;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceHelper;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sse.gwt.client.EntryPointHelper;
|
||||
import com.sap.sse.security.ui.client.SecureClientFactoryImpl;
|
||||
|
||||
public abstract class AutoPlayClientFactoryBase
|
||||
extends SecureClientFactoryImpl<ApplicationTopLevelView> implements AutoPlayClientFactory {
|
||||
private final SailingServiceAsync sailingService;
|
||||
private final SailingServiceWriteAsync sailingServiceWrite;
|
||||
private final MediaServiceAsync mediaService;
|
||||
private final AutoPlayPlaceNavigator navigator;
|
||||
|
||||
@@ -32,6 +34,7 @@ public abstract class AutoPlayClientFactoryBase
|
||||
super(root, eventBus, placeController);
|
||||
this.navigator = navigator;
|
||||
sailingService = SailingServiceHelper.createSailingServiceInstance();
|
||||
sailingServiceWrite = SailingServiceHelper.createSailingServiceWriteInstance();
|
||||
mediaService = GWT.create(MediaService.class);
|
||||
EntryPointHelper.registerASyncService((ServiceDefTarget) sailingService,
|
||||
RemoteServiceMappingConstants.sailingServiceRemotePath);
|
||||
@@ -66,6 +69,11 @@ public abstract class AutoPlayClientFactoryBase
|
||||
return sailingServiceAsync;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public SailingServiceWriteAsync getSailingServiceWrite() {
|
||||
return sailingServiceWrite;
|
||||
}
|
||||
|
||||
@Override
|
||||
public MediaServiceAsync getMediaService() {
|
||||
|
||||
+1
-1
@@ -77,7 +77,7 @@ public class LiveRaceBoardNode extends FiresPlaceNode implements RaceTimesInfoPr
|
||||
/** leaderboardGroupName */
|
||||
null, /** eventId */
|
||||
null, cf.getErrorReporter(), StringMessages.INSTANCE, null, raceTimesInfoProvider, true, false,
|
||||
Arrays.asList(DetailType.values()), result.getLeaderboard(), result.getRace(), result.getTrackingConnectorInfo());
|
||||
Arrays.asList(DetailType.values()), result.getLeaderboard(), result.getRace(), result.getTrackingConnectorInfo(), cf.getSailingServiceWrite());
|
||||
setPlaceToGo(new LiveRaceWithRaceboardPlace(raceboardPerspective));
|
||||
firePlaceChangeAndStartTimer();
|
||||
getBus().fireEvent(new AutoPlayHeaderEvent(cf.getAutoPlayCtxSignalError().getLifeOrPreLiveRace().getRegattaName(),
|
||||
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
package com.sap.sailing.gwt.home.desktop.places.user.profile;
|
||||
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
|
||||
public interface WithSailingServiceWrite {
|
||||
|
||||
SailingServiceWriteAsync getSailingServiceWrite();
|
||||
}
|
||||
-1
@@ -45,7 +45,6 @@ import com.sap.sailing.domain.common.dto.RaceDTO;
|
||||
import com.sap.sailing.domain.common.security.SecuredDomainType;
|
||||
import com.sap.sailing.gwt.ui.client.RegattaRefresher;
|
||||
import com.sap.sailing.gwt.ui.client.RegattasDisplayer;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.common.client.DateAndTimeFormatterUtil;
|
||||
|
||||
-1
@@ -29,7 +29,6 @@ import com.google.gwt.user.client.ui.VerticalPanel;
|
||||
import com.google.gwt.view.client.ListDataProvider;
|
||||
import com.google.gwt.view.client.SelectionChangeEvent;
|
||||
import com.google.gwt.view.client.SingleSelectionModel;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.common.client.DateAndTimeFormatterUtil;
|
||||
|
||||
-1
@@ -59,7 +59,6 @@ import com.sap.sailing.domain.common.security.SecuredDomainType;
|
||||
import com.sap.sailing.gwt.ui.adminconsole.WindImportResult.RaceEntry;
|
||||
import com.sap.sailing.gwt.ui.client.RegattaRefresher;
|
||||
import com.sap.sailing.gwt.ui.client.RegattasDisplayer;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.common.client.DateAndTimeFormatterUtil;
|
||||
|
||||
-1
@@ -32,7 +32,6 @@ import com.google.gwt.view.client.DefaultSelectionEventManager;
|
||||
import com.google.gwt.view.client.DefaultSelectionEventManager.SelectAction;
|
||||
import com.google.gwt.view.client.ListDataProvider;
|
||||
import com.sap.sailing.domain.common.security.SecuredDomainType;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.shared.courseCreation.CourseTemplateDTO;
|
||||
|
||||
+3
-3
@@ -31,7 +31,7 @@ import com.sap.sailing.domain.common.security.SecuredDomainType;
|
||||
import com.sap.sailing.gwt.ui.adminconsole.FileStorageServiceConnectionTestObservable;
|
||||
import com.sap.sailing.gwt.ui.client.MediaServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.RaceTimesInfoProvider;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.media.popup.PopoutWindowPlayer;
|
||||
import com.sap.sailing.gwt.ui.client.media.popup.PopoutWindowPlayer.PlayerCloseListener;
|
||||
@@ -94,7 +94,7 @@ public class MediaPlayerManagerComponent extends AbstractComponent<MediaPlayerSe
|
||||
private List<PlayerChangeListener> playerChangeListener = new ArrayList<>();
|
||||
|
||||
public MediaPlayerManagerComponent(Component<?> parent, ComponentContext<?> context,
|
||||
MediaPlayerLifecycle mediaPlayerLifecycle, SailingServiceAsync sailingService,
|
||||
MediaPlayerLifecycle mediaPlayerLifecycle, SailingServiceWriteAsync sailingServiceWrite,
|
||||
RegattaAndRaceIdentifier selectedRaceIdentifier,
|
||||
RaceTimesInfoProvider raceTimesInfoProvider, Timer raceTimer, MediaServiceAsync mediaService,
|
||||
UserService userService, StringMessages stringMessages, ErrorReporter errorReporter,
|
||||
@@ -118,7 +118,7 @@ public class MediaPlayerManagerComponent extends AbstractComponent<MediaPlayerSe
|
||||
this.userAgent = userAgent;
|
||||
this.popupPositionProvider = popupPositionProvider;
|
||||
this.settings = settings;
|
||||
this.storageServiceAvailable = new FileStorageServiceConnectionTestObservable(sailingService);
|
||||
this.storageServiceAvailable = new FileStorageServiceConnectionTestObservable(sailingServiceWrite);
|
||||
Window.addCloseHandler(this);
|
||||
Window.addWindowClosingHandler(this);
|
||||
|
||||
|
||||
+3
-2
@@ -82,6 +82,7 @@ import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
|
||||
import com.sap.sailing.domain.common.dto.LeaderboardDTO;
|
||||
import com.sap.sailing.domain.common.impl.DegreePosition;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.shared.charts.MarkPositionService.MarkTrackDTO;
|
||||
import com.sap.sailing.gwt.ui.client.shared.racemap.BoundsUtil;
|
||||
@@ -140,10 +141,10 @@ public class EditMarkPositionPanel extends AbstractRaceChart<AbstractSettings> i
|
||||
final SingleRaceLeaderboardPanel leaderboardPanel,
|
||||
RegattaAndRaceIdentifier selectedRaceIdentifier, String leaderboardName, final StringMessages stringMessages,
|
||||
SailingServiceAsync sailingService, Timer timer, TimeRangeWithZoomProvider timeRangeWithZoomProvider,
|
||||
AsyncActionsExecutor asyncActionsExecutor, ErrorReporter errorReporter) {
|
||||
AsyncActionsExecutor asyncActionsExecutor, ErrorReporter errorReporter, SailingServiceWriteAsync sailingServiceWrite) {
|
||||
super(parent, context, sailingService, selectedRaceIdentifier, timer, timeRangeWithZoomProvider, stringMessages,
|
||||
asyncActionsExecutor, errorReporter);
|
||||
this.markPositionService = new MarkPositionServiceForSailingService(sailingService);
|
||||
this.markPositionService = new MarkPositionServiceForSailingService(sailingServiceWrite);
|
||||
this.raceIdentifierToLeaderboardRaceColumnAndFleetMapper = new RaceIdentifierToLeaderboardRaceColumnAndFleetMapper();
|
||||
this.raceMap = raceMap;
|
||||
this.leaderboardPanel = leaderboardPanel;
|
||||
|
||||
+10
-10
@@ -2,49 +2,49 @@ package com.sap.sailing.gwt.ui.client.shared.charts;
|
||||
|
||||
import com.google.gwt.user.client.rpc.AsyncCallback;
|
||||
import com.sap.sailing.domain.common.Position;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.shared.charts.RaceIdentifierToLeaderboardRaceColumnAndFleetMapper.LeaderboardNameRaceColumnNameAndFleetName;
|
||||
import com.sap.sailing.gwt.ui.shared.GPSFixDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.MarkDTO;
|
||||
|
||||
public class MarkPositionServiceForSailingService implements MarkPositionService {
|
||||
private final SailingServiceAsync sailingService;
|
||||
private final SailingServiceWriteAsync sailingServiceWrite;
|
||||
|
||||
public MarkPositionServiceForSailingService(SailingServiceAsync sailingService) {
|
||||
public MarkPositionServiceForSailingService(SailingServiceWriteAsync sailingServiceWrite) {
|
||||
super();
|
||||
this.sailingService = sailingService;
|
||||
this.sailingServiceWrite = sailingServiceWrite;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getMarksInTrackedRace(LeaderboardNameRaceColumnNameAndFleetName raceIdentifier, AsyncCallback<Iterable<MarkDTO>> callback) {
|
||||
sailingService.getMarksInTrackedRace(raceIdentifier.getLeaderboardName(), raceIdentifier.getRaceColumnName(), raceIdentifier.getFleetName(), callback);
|
||||
sailingServiceWrite.getMarksInTrackedRace(raceIdentifier.getLeaderboardName(), raceIdentifier.getRaceColumnName(), raceIdentifier.getFleetName(), callback);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getMarkTrack(LeaderboardNameRaceColumnNameAndFleetName raceIdentifier, String markIdAsString,
|
||||
AsyncCallback<MarkTrackDTO> callback) {
|
||||
sailingService.getMarkTrack(raceIdentifier.getLeaderboardName(), raceIdentifier.getRaceColumnName(), raceIdentifier.getFleetName(), markIdAsString, callback);
|
||||
sailingServiceWrite.getMarkTrack(raceIdentifier.getLeaderboardName(), raceIdentifier.getRaceColumnName(), raceIdentifier.getFleetName(), markIdAsString, callback);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void canRemoveMarkFix(LeaderboardNameRaceColumnNameAndFleetName raceIdentifier, MarkDTO mark,
|
||||
GPSFixDTO fix, AsyncCallback<Boolean> callback) {
|
||||
sailingService.canRemoveMarkFix(raceIdentifier.getLeaderboardName(), raceIdentifier.getRaceColumnName(), raceIdentifier.getFleetName(), mark.getIdAsString(), fix, callback);
|
||||
sailingServiceWrite.canRemoveMarkFix(raceIdentifier.getLeaderboardName(), raceIdentifier.getRaceColumnName(), raceIdentifier.getFleetName(), mark.getIdAsString(), fix, callback);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeMarkFix(LeaderboardNameRaceColumnNameAndFleetName raceIdentifier, MarkDTO mark, GPSFixDTO fix, AsyncCallback<Void> callback) {
|
||||
sailingService.removeMarkFix(raceIdentifier.getLeaderboardName(), raceIdentifier.getRaceColumnName(), raceIdentifier.getFleetName(), mark.getIdAsString(), fix, callback);
|
||||
sailingServiceWrite.removeMarkFix(raceIdentifier.getLeaderboardName(), raceIdentifier.getRaceColumnName(), raceIdentifier.getFleetName(), mark.getIdAsString(), fix, callback);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addMarkFix(LeaderboardNameRaceColumnNameAndFleetName raceIdentifier, MarkDTO mark, GPSFixDTO newFix, AsyncCallback<Void> callback) {
|
||||
sailingService.addMarkFix(raceIdentifier.getLeaderboardName(), raceIdentifier.getRaceColumnName(), raceIdentifier.getFleetName(), mark.getIdAsString(), newFix, callback);
|
||||
sailingServiceWrite.addMarkFix(raceIdentifier.getLeaderboardName(), raceIdentifier.getRaceColumnName(), raceIdentifier.getFleetName(), mark.getIdAsString(), newFix, callback);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void editMarkFix(LeaderboardNameRaceColumnNameAndFleetName raceIdentifier, MarkDTO mark, GPSFixDTO oldFix,
|
||||
Position newPosition, AsyncCallback<Void> callback) {
|
||||
sailingService.editMarkFix(raceIdentifier.getLeaderboardName(), raceIdentifier.getRaceColumnName(), raceIdentifier.getFleetName(), mark.getIdAsString(), oldFix, newPosition, callback);
|
||||
sailingServiceWrite.editMarkFix(raceIdentifier.getLeaderboardName(), raceIdentifier.getRaceColumnName(), raceIdentifier.getFleetName(), mark.getIdAsString(), oldFix, newPosition, callback);
|
||||
}
|
||||
}
|
||||
-1
@@ -86,7 +86,6 @@ import com.sap.sailing.gwt.ui.client.LeaderboardUpdateProvider;
|
||||
import com.sap.sailing.gwt.ui.client.RaceTimesInfoProvider;
|
||||
import com.sap.sailing.gwt.ui.client.RaceTimesInfoProviderListener;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.shared.filter.FilterWithUI;
|
||||
import com.sap.sailing.gwt.ui.client.shared.filter.LeaderboardFetcher;
|
||||
|
||||
+7
-7
@@ -28,7 +28,7 @@ import com.sap.sailing.domain.common.dto.LeaderboardEntryDTO;
|
||||
import com.sap.sailing.domain.common.dto.LeaderboardRowDTO;
|
||||
import com.sap.sailing.domain.common.dto.RaceColumnDTO;
|
||||
import com.sap.sailing.gwt.ui.client.SailNumberCanonicalizerAndMatcher;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.shared.BulkScoreCorrectionDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaScoreCorrectionDTO;
|
||||
@@ -54,10 +54,10 @@ public class MatchAndApplyScoreCorrectionsDialog extends DataEntryDialog<BulkSco
|
||||
private final CheckBox allAllCheckbox;
|
||||
|
||||
public MatchAndApplyScoreCorrectionsDialog(EditableLeaderboardPanel leaderboardPanel, StringMessages stringMessages,
|
||||
SailingServiceAsync sailingService, ErrorReporter errorReporter, RegattaScoreCorrectionDTO result) {
|
||||
SailingServiceWriteAsync sailingServiceWrite, ErrorReporter errorReporter, RegattaScoreCorrectionDTO result) {
|
||||
super(stringMessages.assignRaceNumbersToRaceColumns(), stringMessages.assignRaceNumbersToRaceColumns(),
|
||||
stringMessages.ok(), stringMessages.cancel(), new Validator(), new Callback(leaderboardPanel,
|
||||
sailingService, stringMessages, errorReporter));
|
||||
sailingServiceWrite, stringMessages, errorReporter));
|
||||
this.regattaScoreCorrection = result;
|
||||
this.leaderboard = leaderboardPanel.getLeaderboard();
|
||||
this.allOfficialSailIDs = new TreeSet<>();
|
||||
@@ -338,15 +338,15 @@ public class MatchAndApplyScoreCorrectionsDialog extends DataEntryDialog<BulkSco
|
||||
}
|
||||
|
||||
private static class Callback implements DialogCallback<BulkScoreCorrectionDTO> {
|
||||
private final SailingServiceAsync sailingService;
|
||||
private final SailingServiceWriteAsync sailingServiceWrite;
|
||||
private final StringMessages stringMessages;
|
||||
private final ErrorReporter errorReporter;
|
||||
private final EditableLeaderboardPanel leaderboardPanel;
|
||||
|
||||
public Callback(EditableLeaderboardPanel leaderboardPanel, SailingServiceAsync sailingService, StringMessages stringMessages, ErrorReporter errorReporter) {
|
||||
public Callback(EditableLeaderboardPanel leaderboardPanel, SailingServiceWriteAsync sailingServiceWrite, StringMessages stringMessages, ErrorReporter errorReporter) {
|
||||
super();
|
||||
this.leaderboardPanel = leaderboardPanel;
|
||||
this.sailingService = sailingService;
|
||||
this.sailingServiceWrite = sailingServiceWrite;
|
||||
this.stringMessages = stringMessages;
|
||||
this.errorReporter = errorReporter;
|
||||
}
|
||||
@@ -359,7 +359,7 @@ public class MatchAndApplyScoreCorrectionsDialog extends DataEntryDialog<BulkSco
|
||||
@Override
|
||||
public void ok(final BulkScoreCorrectionDTO result) {
|
||||
leaderboardPanel.addBusyTask();
|
||||
sailingService.updateLeaderboardScoreCorrectionsAndMaxPointsReasons(result, new AsyncCallback<Void>() {
|
||||
sailingServiceWrite.updateLeaderboardScoreCorrectionsAndMaxPointsReasons(result, new AsyncCallback<Void>() {
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
leaderboardPanel.removeBusyTask();
|
||||
|
||||
+10
-9
@@ -19,6 +19,7 @@ import com.google.gwt.user.client.ui.VerticalPanel;
|
||||
import com.google.gwt.user.client.ui.Widget;
|
||||
import com.sap.sailing.domain.common.dto.BoatClassDTO;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.shared.RegattaScoreCorrectionDTO;
|
||||
import com.sap.sailing.gwt.ui.shared.ScoreCorrectionProviderDTO;
|
||||
@@ -44,10 +45,10 @@ public class ResultSelectionAndApplyDialog extends DataEntryDialog<Util.Triple<S
|
||||
private final BoatClassDTO boatClass;
|
||||
|
||||
public ResultSelectionAndApplyDialog(EditableLeaderboardPanel leaderboardPanel, Iterable<String> scoreCorrectionProviderNames,
|
||||
SailingServiceAsync sailingService, StringMessages stringMessages, ErrorReporter errorReporter) {
|
||||
SailingServiceWriteAsync sailingServiceWrite, StringMessages stringMessages, ErrorReporter errorReporter) {
|
||||
super(stringMessages.importOfficialResults(), null, stringMessages.ok(), stringMessages.cancel(), new Validator(stringMessages),
|
||||
new Callback(sailingService, leaderboardPanel, errorReporter, stringMessages));
|
||||
this.sailingService = sailingService;
|
||||
new Callback(sailingServiceWrite, leaderboardPanel, errorReporter, stringMessages));
|
||||
this.sailingService = sailingServiceWrite;
|
||||
this.stringMessages = stringMessages;
|
||||
this.errorReporter = errorReporter;
|
||||
boatClass = leaderboardPanel.getLeaderboard().getBoatClass();
|
||||
@@ -194,13 +195,13 @@ public class ResultSelectionAndApplyDialog extends DataEntryDialog<Util.Triple<S
|
||||
|
||||
private static class Callback implements DialogCallback<Util.Triple<String, String, Util.Pair<String, Date>>> {
|
||||
private final EditableLeaderboardPanel leaderboardPanel;
|
||||
private final SailingServiceAsync sailingService;
|
||||
private final SailingServiceWriteAsync sailingServiceWrite;
|
||||
private final StringMessages stringMessages;
|
||||
private final ErrorReporter errorReporter;
|
||||
|
||||
public Callback(SailingServiceAsync sailingService, EditableLeaderboardPanel leaderboardPanel, ErrorReporter errorReporter,
|
||||
public Callback(SailingServiceWriteAsync sailingServiceWrite, EditableLeaderboardPanel leaderboardPanel, ErrorReporter errorReporter,
|
||||
StringMessages stringMessages) {
|
||||
this.sailingService = sailingService;
|
||||
this.sailingServiceWrite = sailingServiceWrite;
|
||||
this.leaderboardPanel = leaderboardPanel;
|
||||
this.stringMessages = stringMessages;
|
||||
this.errorReporter = errorReporter;
|
||||
@@ -218,7 +219,7 @@ public class ResultSelectionAndApplyDialog extends DataEntryDialog<Util.Triple<S
|
||||
final String boatClassName = providerNameAndEventNameBoatClassNameCapturedWhen.getC().getA();
|
||||
final Date timePointWhenResultPublished = providerNameAndEventNameBoatClassNameCapturedWhen.getC().getB();
|
||||
leaderboardPanel.addBusyTask();
|
||||
sailingService.getScoreCorrections(scoreCorrectionProviderName, eventName, boatClassName, timePointWhenResultPublished,
|
||||
sailingServiceWrite.getScoreCorrections(scoreCorrectionProviderName, eventName, boatClassName, timePointWhenResultPublished,
|
||||
new AsyncCallback<RegattaScoreCorrectionDTO>() {
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
@@ -230,8 +231,8 @@ public class ResultSelectionAndApplyDialog extends DataEntryDialog<Util.Triple<S
|
||||
@Override
|
||||
public void onSuccess(RegattaScoreCorrectionDTO result) {
|
||||
leaderboardPanel.removeBusyTask();
|
||||
new MatchAndApplyScoreCorrectionsDialog(leaderboardPanel, stringMessages, sailingService,
|
||||
errorReporter, result).show();
|
||||
new MatchAndApplyScoreCorrectionsDialog(leaderboardPanel, stringMessages,
|
||||
sailingServiceWrite, errorReporter, result).show();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
+3
-1
@@ -1,6 +1,8 @@
|
||||
|
||||
package com.sap.sailing.gwt.ui.raceboard;
|
||||
|
||||
import static com.sap.sailing.gwt.ui.client.SailingServiceHelper.createSailingServiceWriteInstance;
|
||||
|
||||
import java.util.Collections;
|
||||
|
||||
import com.google.gwt.core.client.GWT;
|
||||
@@ -154,7 +156,7 @@ public class RaceBoardEntryPoint extends AbstractSailingReadEntryPoint implement
|
||||
raceboardContextDefinition.getLeaderboardName(), raceboardContextDefinition.getLeaderboardGroupName(),
|
||||
raceboardContextDefinition.getEventId(), RaceBoardEntryPoint.this, getStringMessages(), userAgent,
|
||||
raceTimesInfoProvider, showChartMarkEditMediaButtonsAndVideo, true, availableDetailTypes,
|
||||
raceboardData.getLeaderboard(), selectedRace, raceboardData.getTrackingConnectorInfo());
|
||||
raceboardData.getLeaderboard(), selectedRace, raceboardData.getTrackingConnectorInfo(), createSailingServiceWriteInstance() /* create write instance for later admin usage*/);
|
||||
RootLayoutPanel.get().add(raceBoardPerspective.getEntryWidget());
|
||||
|
||||
if (raceBoardMode != null) {
|
||||
|
||||
+10
-7
@@ -62,6 +62,7 @@ import com.sap.sailing.gwt.ui.client.RaceTimePanelLifecycle;
|
||||
import com.sap.sailing.gwt.ui.client.RaceTimePanelSettings;
|
||||
import com.sap.sailing.gwt.ui.client.RaceTimesInfoProvider;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.media.MediaPlayerLifecycle;
|
||||
import com.sap.sailing.gwt.ui.client.media.MediaPlayerManager.PlayerChangeListener;
|
||||
@@ -136,6 +137,7 @@ public class RaceBoardPanel
|
||||
extends AbstractPerspectiveComposite<RaceBoardPerspectiveLifecycle, RaceBoardPerspectiveOwnSettings>
|
||||
implements LeaderboardUpdateListener, PopupPositionProvider, RequiresResize {
|
||||
private final SailingServiceAsync sailingService;
|
||||
private SailingServiceWriteAsync sailingServiceWrite;
|
||||
private final MediaServiceAsync mediaService;
|
||||
private final UUID eventId;
|
||||
private final StringMessages stringMessages;
|
||||
@@ -186,7 +188,7 @@ public class RaceBoardPanel
|
||||
|
||||
private static final RaceMapResources raceMapResources = GWT.create(RaceMapResources.class);
|
||||
private TrackingConnectorInfoDTO trackingConnectorInfo;
|
||||
|
||||
|
||||
/**
|
||||
* @param eventId
|
||||
* an optional event that can be used for "back"-navigation in case the race board shows a race in the
|
||||
@@ -216,9 +218,10 @@ public class RaceBoardPanel
|
||||
UserAgentDetails userAgent, RaceTimesInfoProvider raceTimesInfoProvider,
|
||||
boolean showChartMarkEditMediaButtonsAndVideo, boolean showHeaderPanel,
|
||||
Iterable<DetailType> availableDetailTypes, StrippedLeaderboardDTOWithSecurity leaderboardDTO,
|
||||
final RaceWithCompetitorsAndBoatsDTO raceDTO, TrackingConnectorInfoDTO trackingConnectorInfo) {
|
||||
final RaceWithCompetitorsAndBoatsDTO raceDTO, TrackingConnectorInfoDTO trackingConnectorInfo, SailingServiceWriteAsync sailingServiceWrite) {
|
||||
super(parent, componentContext, lifecycle, settings);
|
||||
this.sailingService = sailingService;
|
||||
this.sailingServiceWrite = sailingServiceWrite;
|
||||
this.mediaService = mediaService;
|
||||
this.stringMessages = stringMessages;
|
||||
this.raceTimesInfoProvider = raceTimesInfoProvider;
|
||||
@@ -331,7 +334,7 @@ public class RaceBoardPanel
|
||||
}
|
||||
}
|
||||
taggingPanel = new TaggingPanel(parent, componentContext, stringMessages, sailingService, userService, timer,
|
||||
raceTimesInfoProvider, sharedTagTimePoint, sharedTagTitle, leaderboardDTO);
|
||||
raceTimesInfoProvider, sharedTagTimePoint, sharedTagTitle, leaderboardDTO, sailingServiceWrite);
|
||||
addChildComponent(taggingPanel);
|
||||
taggingPanel.setVisible(showTaggingPanel);
|
||||
// Determine if the screen is large enough to initially display the leaderboard panel on the left side of the
|
||||
@@ -417,7 +420,7 @@ public class RaceBoardPanel
|
||||
errorReporter, true, true, leaderboardGroupName, leaderboardName);
|
||||
competitorChart.setVisible(false);
|
||||
competitorChart.updateSettings(multiCompetitorRaceChartSettings);
|
||||
new SliceRaceHandler(sailingService, userService, errorReporter, competitorChart, selectedRaceIdentifier,
|
||||
new SliceRaceHandler(sailingServiceWrite, userService, errorReporter, competitorChart, selectedRaceIdentifier,
|
||||
leaderboardGroupName, leaderboardName, event, leaderboard, raceDTO);
|
||||
componentsForSideBySideViewer.add(competitorChart);
|
||||
windChart = new WindChart(this, getComponentContext(), windChartLifecycle, sailingService,
|
||||
@@ -436,7 +439,7 @@ public class RaceBoardPanel
|
||||
if (showChartMarkEditMediaButtonsAndVideo) {
|
||||
componentsForSideBySideViewer.add(maneuverTablePanel);
|
||||
}
|
||||
editMarkPassingPanel = new EditMarkPassingsPanel(this, getComponentContext(), sailingService,
|
||||
editMarkPassingPanel = new EditMarkPassingsPanel(this, getComponentContext(), sailingServiceWrite,
|
||||
selectedRaceIdentifier,
|
||||
stringMessages,
|
||||
competitorSelectionProvider, errorReporter, timer);
|
||||
@@ -448,13 +451,13 @@ public class RaceBoardPanel
|
||||
editMarkPositionPanel = new EditMarkPositionPanel(this, getComponentContext(), raceMap, leaderboardPanel,
|
||||
selectedRaceIdentifier,
|
||||
leaderboardName, stringMessages, sailingService, timer, timeRangeWithZoomModel,
|
||||
asyncActionsExecutor, errorReporter);
|
||||
asyncActionsExecutor, errorReporter, sailingServiceWrite);
|
||||
if (showChartMarkEditMediaButtonsAndVideo) {
|
||||
editMarkPositionPanel.setLeaderboard(leaderboardPanel.getLeaderboard());
|
||||
componentsForSideBySideViewer.add(editMarkPositionPanel);
|
||||
}
|
||||
mediaPlayerManagerComponent = new MediaPlayerManagerComponent(this, getComponentContext(), mediaPlayerLifecycle,
|
||||
sailingService, selectedRaceIdentifier, raceTimesInfoProvider, timer, mediaService, userService,
|
||||
sailingServiceWrite, selectedRaceIdentifier, raceTimesInfoProvider, timer, mediaService, userService,
|
||||
stringMessages, errorReporter, userAgent, this, mediaPlayerSettings, raceDTO);
|
||||
|
||||
final LeaderboardWithSecurityFetcher asyncFetcher = new LeaderboardWithSecurityFetcher() {
|
||||
|
||||
+7
-7
@@ -13,7 +13,7 @@ import com.google.gwt.user.client.ui.Button;
|
||||
import com.google.gwt.user.client.ui.TextBox;
|
||||
import com.google.gwt.user.client.ui.Widget;
|
||||
import com.sap.sailing.domain.common.RegattaAndRaceIdentifier;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.client.shared.charts.ChartZoomChangedEvent;
|
||||
import com.sap.sailing.gwt.ui.client.shared.charts.MultiCompetitorRaceChart;
|
||||
@@ -59,7 +59,7 @@ public class SliceRaceHandler {
|
||||
|
||||
private final UUID eventId;
|
||||
|
||||
private final SailingServiceAsync sailingService;
|
||||
private final SailingServiceWriteAsync sailingServiceWrite;
|
||||
|
||||
private final UserService userService;
|
||||
|
||||
@@ -76,11 +76,11 @@ public class SliceRaceHandler {
|
||||
/**
|
||||
* Registers this handler as a zoom event handler on the {@code competitorRaceChart}.
|
||||
*/
|
||||
public SliceRaceHandler(SailingServiceAsync sailingService, UserService userService, final ErrorReporter errorReporter,
|
||||
public SliceRaceHandler(SailingServiceWriteAsync sailingServiceWrite, UserService userService, final ErrorReporter errorReporter,
|
||||
MultiCompetitorRaceChart competitorRaceChart, RegattaAndRaceIdentifier selectedRaceIdentifier,
|
||||
final String leaderboardGroupName, String leaderboardName, UUID eventId,
|
||||
StrippedLeaderboardDTOWithSecurity leaderboardDTO, RaceWithCompetitorsAndBoatsDTO raceDTO) {
|
||||
this.sailingService = sailingService;
|
||||
this.sailingServiceWrite = sailingServiceWrite;
|
||||
this.userService = userService;
|
||||
this.errorReporter = errorReporter;
|
||||
this.selectedRaceIdentifier = selectedRaceIdentifier;
|
||||
@@ -101,7 +101,7 @@ public class SliceRaceHandler {
|
||||
updateVisibility();
|
||||
});
|
||||
sliceButtonUi.addClickHandler((e) -> doSlice());
|
||||
sailingService.canSliceRace(selectedRaceIdentifier, new AsyncCallback<Boolean>() {
|
||||
sailingServiceWrite.canSliceRace(selectedRaceIdentifier, new AsyncCallback<Boolean>() {
|
||||
@Override
|
||||
public void onSuccess(Boolean result) {
|
||||
canSlice = Boolean.TRUE.equals(result);
|
||||
@@ -137,7 +137,7 @@ public class SliceRaceHandler {
|
||||
|
||||
private void doSlice() {
|
||||
if (visibleRange != null) {
|
||||
sailingService.prepareForSlicingOfRace(selectedRaceIdentifier,
|
||||
sailingServiceWrite.prepareForSlicingOfRace(selectedRaceIdentifier,
|
||||
new AsyncCallback<SliceRacePreperationDTO>() {
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
@@ -147,7 +147,7 @@ public class SliceRaceHandler {
|
||||
@Override
|
||||
public void onSuccess(SliceRacePreperationDTO sliceRacePreperatioData) {
|
||||
new SlicedRaceNameDialog(sliceRacePreperatioData, slicedRaceName -> {
|
||||
sailingService.sliceRace(selectedRaceIdentifier, slicedRaceName, visibleRange.from(),
|
||||
sailingServiceWrite.sliceRace(selectedRaceIdentifier, slicedRaceName, visibleRange.from(),
|
||||
visibleRange.to(), new AsyncCallback<RegattaAndRaceIdentifier>() {
|
||||
|
||||
@Override
|
||||
|
||||
+9
-6
@@ -34,6 +34,7 @@ import com.sap.sailing.domain.common.dto.TagDTO;
|
||||
import com.sap.sailing.gwt.ui.client.RaceTimesInfoProvider;
|
||||
import com.sap.sailing.gwt.ui.client.RaceTimesInfoProviderListener;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceAsync;
|
||||
import com.sap.sailing.gwt.ui.client.SailingServiceWriteAsync;
|
||||
import com.sap.sailing.gwt.ui.client.StringMessages;
|
||||
import com.sap.sailing.gwt.ui.raceboard.tagging.TaggingPanelResources.TagPanelStyle;
|
||||
import com.sap.sailing.gwt.ui.shared.RaceTimesInfoDTO;
|
||||
@@ -128,6 +129,7 @@ public class TaggingPanel extends ComponentWithoutSettings
|
||||
// misc. elements
|
||||
private final StringMessages stringMessages;
|
||||
private final SailingServiceAsync sailingService;
|
||||
private final SailingServiceWriteAsync sailingServiceWrite;
|
||||
private final UserService userService;
|
||||
private final Timer timer;
|
||||
private final RaceTimesInfoProvider raceTimesInfoProvider;
|
||||
@@ -168,11 +170,12 @@ public class TaggingPanel extends ComponentWithoutSettings
|
||||
public TaggingPanel(Component<?> parent, ComponentContext<?> context, StringMessages stringMessages,
|
||||
SailingServiceAsync sailingService, UserService userService, Timer timer,
|
||||
RaceTimesInfoProvider raceTimesInfoProvider, TimePoint timePointToHighlight, String tagToHighlight,
|
||||
StrippedLeaderboardDTOWithSecurity leaderboardDTO) {
|
||||
StrippedLeaderboardDTOWithSecurity leaderboardDTO, SailingServiceWriteAsync sailingServiceWrite) {
|
||||
super(parent, context);
|
||||
|
||||
this.stringMessages = stringMessages;
|
||||
this.sailingService = sailingService;
|
||||
this.sailingServiceWrite = sailingServiceWrite;
|
||||
this.userService = userService;
|
||||
this.timer = timer;
|
||||
this.raceTimesInfoProvider = raceTimesInfoProvider;
|
||||
@@ -392,7 +395,7 @@ public class TaggingPanel extends ComponentWithoutSettings
|
||||
|| imageHeight > MediaTagConstants.TAGGING_IMAGE.getMaxHeight()) {
|
||||
ArrayList<MediaTagConstants> tags = new ArrayList<MediaTagConstants>();
|
||||
tags.add(MediaTagConstants.TAGGING_IMAGE);
|
||||
sailingService.resizeImage(new ImageResizingTaskDTO(imageURL, new Date(), tags),
|
||||
sailingServiceWrite.resizeImage(new ImageResizingTaskDTO(imageURL, new Date(), tags),
|
||||
new AsyncCallback<Set<ImageDTO>>() {
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
@@ -445,7 +448,7 @@ public class TaggingPanel extends ComponentWithoutSettings
|
||||
final String saveComment = (comment == null ? "" : comment);
|
||||
final TimePoint saveRaceTimePoint = (raceTimePoint == null ? new MillisecondsTimePoint(getTimerTime())
|
||||
: raceTimePoint);
|
||||
sailingService.addTag(leaderboardName, raceColumn.getName(), fleet.getName(), tag, saveComment, imageURL,
|
||||
sailingServiceWrite.addTag(leaderboardName, raceColumn.getName(), fleet.getName(), tag, saveComment, imageURL,
|
||||
resizedImageURL, visibleForPublic, saveRaceTimePoint, new AsyncCallback<SuccessInfo>() {
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
@@ -492,7 +495,7 @@ public class TaggingPanel extends ComponentWithoutSettings
|
||||
* when set to <code>true</code>, only error messages will get displayed to user
|
||||
*/
|
||||
protected void removeTag(TagDTO tag, boolean silent) {
|
||||
sailingService.removeTag(leaderboardName, raceColumn.getName(), fleet.getName(), tag,
|
||||
sailingServiceWrite.removeTag(leaderboardName, raceColumn.getName(), fleet.getName(), tag,
|
||||
new AsyncCallback<SuccessInfo>() {
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
@@ -535,7 +538,7 @@ public class TaggingPanel extends ComponentWithoutSettings
|
||||
|
||||
@Override
|
||||
public void onSuccess(String resizedImageURL) {
|
||||
sailingService.updateTag(leaderboardName, raceColumn.getName(), fleet.getName(), tagToUpdate, tag,
|
||||
sailingServiceWrite.updateTag(leaderboardName, raceColumn.getName(), fleet.getName(), tagToUpdate, tag,
|
||||
comment, imageURL, resizedImageURL, visibleForPublic, new AsyncCallback<SuccessInfo>() {
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
@@ -591,7 +594,7 @@ public class TaggingPanel extends ComponentWithoutSettings
|
||||
private void reloadPrivateTags() {
|
||||
tagListProvider.removePrivateTags();
|
||||
if (userService.getCurrentUser() != null) {
|
||||
sailingService.getPrivateTags(leaderboardName, raceColumn.getName(), fleet.getName(),
|
||||
sailingServiceWrite.getPrivateTags(leaderboardName, raceColumn.getName(), fleet.getName(),
|
||||
new AsyncCallback<List<TagDTO>>() {
|
||||
@Override
|
||||
public void onFailure(Throwable caught) {
|
||||
|
||||
-2
@@ -4,8 +4,6 @@ import static org.junit.Assert.assertEquals;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.sap.sailing.windestimation.aggregator.hmm.IntersectedWindRange;
|
||||
import com.sap.sailing.windestimation.aggregator.hmm.WindCourseRange;
|
||||
import com.sap.sailing.windestimation.aggregator.hmm.WindCourseRange.CombinationModeOnViolation;
|
||||
|
||||
/**
|
||||
|
||||
-5
@@ -8,11 +8,6 @@ import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
import com.sap.sse.datamining.data.Cluster;
|
||||
import com.sap.sse.datamining.impl.data.ClusterWithLowerAndUpperBoundaries;
|
||||
import com.sap.sse.datamining.impl.data.ClusterWithSingleBoundary;
|
||||
import com.sap.sse.datamining.impl.data.ComparableClusterBoundary;
|
||||
import com.sap.sse.datamining.impl.data.ComparisonStrategy;
|
||||
import com.sap.sse.datamining.impl.data.LinearDoubleClusterGroup;
|
||||
|
||||
public class TestLinearDoubleClusterGroup {
|
||||
|
||||
|
||||
-2
@@ -8,8 +8,6 @@ import org.junit.Test;
|
||||
|
||||
import com.sap.sse.datamining.data.Cluster;
|
||||
import com.sap.sse.datamining.data.ClusterGroup;
|
||||
import com.sap.sse.datamining.impl.data.LinearDoubleClusterGroup;
|
||||
import com.sap.sse.datamining.impl.data.PercentageClusterFormatter;
|
||||
|
||||
public class TestPercentageClusterFormatter {
|
||||
|
||||
|
||||
@@ -10,7 +10,6 @@ import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
import com.sap.sse.common.CacheableRPCResult;
|
||||
import com.sap.sse.gwt.server.CacheKey;
|
||||
|
||||
/**
|
||||
* The {@link CacheKey} class uses weak references that may be cleared. This test is to ensure that handling
|
||||
|
||||
Reference in new issue
Block a user