mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-23 12:33:53 +00:00
Added url construction for individual race map
This commit is contained in:
1 parent
4301563087
commit
582fbd06b3
1 file changed
+40
-29
+40
-29
@@ -17,6 +17,8 @@ import com.google.android.gms.location.LocationListener;
|
||||
import com.google.android.gms.location.LocationRequest;
|
||||
import com.google.android.gms.location.LocationServices;
|
||||
import com.sap.sailing.android.shared.logging.ExLog;
|
||||
import com.sap.sailing.domain.abstractlog.race.SimpleRaceLogIdentifier;
|
||||
import com.sap.sailing.domain.abstractlog.race.impl.SimpleRaceLogIdentifierImpl;
|
||||
import com.sap.sailing.domain.common.Bearing;
|
||||
import com.sap.sailing.domain.common.Position;
|
||||
import com.sap.sailing.domain.common.SpeedWithBearing;
|
||||
@@ -26,13 +28,18 @@ import com.sap.sailing.domain.common.impl.DegreePosition;
|
||||
import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl;
|
||||
import com.sap.sailing.domain.common.impl.WindImpl;
|
||||
import com.sap.sailing.racecommittee.app.AppConstants;
|
||||
import com.sap.sailing.racecommittee.app.AppPreferences;
|
||||
import com.sap.sailing.racecommittee.app.R;
|
||||
import com.sap.sailing.racecommittee.app.data.DataManager;
|
||||
import com.sap.sailing.racecommittee.app.data.DataStore;
|
||||
import com.sap.sailing.racecommittee.app.domain.ManagedRace;
|
||||
import com.sap.sailing.racecommittee.app.domain.impl.FleetIdentifierImpl;
|
||||
import com.sap.sailing.racecommittee.app.services.polling.RacePositionsPoller;
|
||||
import com.sap.sailing.racecommittee.app.ui.utils.OnRaceUpdatedListener;
|
||||
import com.sap.sailing.racecommittee.app.ui.views.CompassView;
|
||||
import com.sap.sailing.racecommittee.app.ui.views.CompassView.CompassDirectionListener;
|
||||
import com.sap.sailing.racecommittee.app.utils.ThemeHelper;
|
||||
import com.sap.sse.common.Util;
|
||||
import com.sap.sse.common.impl.MillisecondsTimePoint;
|
||||
|
||||
import java.text.DateFormat;
|
||||
@@ -50,6 +57,7 @@ public class WindFragment extends BaseFragment
|
||||
|
||||
private final static String TAG = WindFragment.class.getName();
|
||||
private final static String START_MODE = "startMode";
|
||||
private final static String GWT_MAP_AND_WIND_CHART_HTML = "gwt/EmbeddedMapAndWindChart.html";
|
||||
private final static long ONE_SEC = 1000;
|
||||
private final static long FIVE_SEC = 5000;
|
||||
private final static long EVERY_POSITION_CHANGE = 0;
|
||||
@@ -206,8 +214,6 @@ public class WindFragment extends BaseFragment
|
||||
setupButtons();
|
||||
setupWindSpeedPicker();
|
||||
setupLayouts(false);
|
||||
|
||||
setInstanceState(savedInstanceState);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -217,15 +223,6 @@ public class WindFragment extends BaseFragment
|
||||
mRefreshUIHandler = new Handler();
|
||||
}
|
||||
|
||||
/**
|
||||
* function to restore the instanceState via savedInstanceState bundle
|
||||
*
|
||||
* @param savedInstanceState said bundle
|
||||
*/
|
||||
private void setInstanceState(Bundle savedInstanceState) {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* starts the googleApiClient to get location updates
|
||||
*/
|
||||
@@ -338,7 +335,7 @@ public class WindFragment extends BaseFragment
|
||||
WebSettings settings = mMapWebView.getSettings();
|
||||
if (showMap) {
|
||||
settings.setJavaScriptEnabled(true);
|
||||
loadRaceMap();
|
||||
loadRaceMap(true, false, false, true);
|
||||
mMapLayout.setVisibility(View.VISIBLE);
|
||||
} else {
|
||||
settings.setJavaScriptEnabled(false);
|
||||
@@ -347,25 +344,39 @@ public class WindFragment extends BaseFragment
|
||||
}
|
||||
}
|
||||
|
||||
private boolean loadRaceMap() {
|
||||
private boolean loadRaceMap(boolean showWindCharts, boolean showStreamlets, boolean showSimulation, boolean showMapControls) {
|
||||
ManagedRace race = getRace();
|
||||
if (race != null) {
|
||||
StringBuilder sb = new StringBuilder("http://kielerwoche2015.sapsailing.com/gwt/RaceBoard.html?");
|
||||
sb.append("eventId=");
|
||||
sb.append("a9d6c5d5-cac3-47f2-9b5c-506e441819a1");
|
||||
sb.append("&");
|
||||
sb.append("leaderboardName=");
|
||||
sb.append("KW%202015%20Olympic%20-%20Finn");
|
||||
sb.append("&");
|
||||
sb.append("raceName=");
|
||||
sb.append("R1%20%28Finn%29");
|
||||
sb.append("&");
|
||||
sb.append("viewShowMapControls=false");
|
||||
sb.append("&");
|
||||
sb.append("viewShowNavigationPanel=false");
|
||||
sb.append("&");
|
||||
sb.append("regattaName=");
|
||||
sb.append("KW%202015%20Olympic%20-%20Finn");
|
||||
|
||||
// get data store for event id
|
||||
DataStore dataStore = DataManager.create(getActivity()).getDataStore();
|
||||
|
||||
// get server base url
|
||||
String serverBaseURL = AppPreferences.on(getActivity()).getServerBaseURL();
|
||||
|
||||
// get simple race log identifier
|
||||
Util.Triple<String, String, String> triple = FleetIdentifierImpl.unescape(race.getId());
|
||||
SimpleRaceLogIdentifier identifier = new SimpleRaceLogIdentifierImpl(triple.getA(), triple.getB(), triple.getC());
|
||||
|
||||
// build complete race map url
|
||||
StringBuilder sb = new StringBuilder(serverBaseURL);
|
||||
sb.append(GWT_MAP_AND_WIND_CHART_HTML);
|
||||
sb.append("?regattaLikeName=");
|
||||
sb.append(identifier.getRegattaLikeParentName());
|
||||
sb.append("&raceColumnName=");
|
||||
sb.append(identifier.getRaceColumnName());
|
||||
sb.append("&fleetName=");
|
||||
sb.append(identifier.getFleetName());
|
||||
sb.append("&eventId=");
|
||||
sb.append(dataStore.getEventUUID());
|
||||
sb.append("&viewShowWindChart=");
|
||||
sb.append(showWindCharts);
|
||||
sb.append("&viewShowStreamlets=");
|
||||
sb.append(showStreamlets);
|
||||
sb.append("&viewShowSimulation=");
|
||||
sb.append(showSimulation);
|
||||
sb.append("&viewShowMapControls=");
|
||||
sb.append(showMapControls);
|
||||
mMapWebView.loadUrl(sb.toString());
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user