Codecleanup: move TrackDataHub constants to its file

This commit is contained in:
Jimmy Shih
2013-10-04 11:12:40 -07:00
parent 39d26febc1
commit 6df5e2916f
4 changed files with 23 additions and 28 deletions
@@ -30,17 +30,6 @@ public class Constants {
*/ */
public static final String ACCOUNT_TYPE = "com.google"; public static final String ACCOUNT_TYPE = "com.google";
/**
* Maximum number of track points displayed by the map overlay. Set to 2X of
* {@link Constants#TARGET_DISPLAYED_TRACK_POINTS}
*/
public static final int MAX_DISPLAYED_TRACK_POINTS = 10000;
/**
* Maximum number of waypoints displayed by the map overlay.
*/
public static final int MAX_DISPLAYED_WAYPOINTS_POINTS = 128;
/** /**
* Maximum number of track points that will be loaded at one time. With * Maximum number of track points that will be loaded at one time. With
* recording frequency of 2 seconds, 20000 corresponds to 11.1 hours. * recording frequency of 2 seconds, 20000 corresponds to 11.1 hours.
@@ -56,10 +45,4 @@ public class Constants {
* The settings file name. * The settings file name.
*/ */
public static final String SETTINGS_NAME = "SettingsActivity"; public static final String SETTINGS_NAME = "SettingsActivity";
/**
* Target number of track points displayed by the map overlay. We may display
* more than this number of points.
*/
public static final int TARGET_DISPLAYED_TRACK_POINTS = 5000;
} }
@@ -16,6 +16,8 @@
package com.google.android.apps.mytracks; package com.google.android.apps.mytracks;
import static com.google.android.apps.mytracks.content.TrackDataHub.TARGET_DISPLAYED_TRACK_POINTS;
import com.google.android.apps.mytracks.content.Waypoint; import com.google.android.apps.mytracks.content.Waypoint;
import com.google.android.apps.mytracks.content.Waypoint.WaypointType; import com.google.android.apps.mytracks.content.Waypoint.WaypointType;
import com.google.android.apps.mytracks.maps.TrackPath; import com.google.android.apps.mytracks.maps.TrackPath;
@@ -138,8 +140,10 @@ public class MapOverlay {
this.context = context; this.context = context;
this.waypoints = new ArrayList<Waypoint>(); this.waypoints = new ArrayList<Waypoint>();
this.locations = new ArrayList<CachedLocation>(INITIAL_LOCATIONS_SIZE); this.locations = new ArrayList<CachedLocation>(INITIAL_LOCATIONS_SIZE);
// Set the number of points to be 2x the TARGET_DISPLAYED_TRACK_POINTS
this.pendingLocations = new ArrayBlockingQueue<CachedLocation>( this.pendingLocations = new ArrayBlockingQueue<CachedLocation>(
Constants.MAX_DISPLAYED_TRACK_POINTS, true); 2 * TARGET_DISPLAYED_TRACK_POINTS, true);
context.getSharedPreferences(Constants.SETTINGS_NAME, Context.MODE_PRIVATE) context.getSharedPreferences(Constants.SETTINGS_NAME, Context.MODE_PRIVATE)
.registerOnSharedPreferenceChangeListener(sharedPreferenceChangeListener); .registerOnSharedPreferenceChangeListener(sharedPreferenceChangeListener);
@@ -16,10 +16,6 @@
package com.google.android.apps.mytracks.content; package com.google.android.apps.mytracks.content;
import static com.google.android.apps.mytracks.Constants.MAX_DISPLAYED_WAYPOINTS_POINTS;
import static com.google.android.apps.mytracks.Constants.TARGET_DISPLAYED_TRACK_POINTS;
import com.google.android.apps.mytracks.Constants;
import com.google.android.apps.mytracks.content.MyTracksProviderUtils.LocationIterator; import com.google.android.apps.mytracks.content.MyTracksProviderUtils.LocationIterator;
import com.google.android.apps.mytracks.util.LocationUtils; import com.google.android.apps.mytracks.util.LocationUtils;
import com.google.android.apps.mytracks.util.PreferencesUtils; import com.google.android.apps.mytracks.util.PreferencesUtils;
@@ -47,6 +43,18 @@ public class TrackDataHub implements DataSourceListener {
private static final String TAG = TrackDataHub.class.getSimpleName(); private static final String TAG = TrackDataHub.class.getSimpleName();
/**
* Maximum number of waypoints to displayed.
*/
@VisibleForTesting
static final int MAX_DISPLAYED_WAYPOINTS = 128;
/**
* Target number of track points displayed by the map overlay. We may display
* more than this number of points.
*/
public static final int TARGET_DISPLAYED_TRACK_POINTS = 5000;
private final Context context; private final Context context;
private final TrackDataManager trackDataManager; private final TrackDataManager trackDataManager;
private final MyTracksProviderUtils myTracksProviderUtils; private final MyTracksProviderUtils myTracksProviderUtils;
@@ -415,8 +423,8 @@ public class TrackDataHub implements DataSourceListener {
/** /**
* Notifies waypoint table update. Currently, reloads all the waypoints up to * Notifies waypoint table update. Currently, reloads all the waypoints up to
* {@link Constants#MAX_DISPLAYED_WAYPOINTS_POINTS}. To be run in the * {@link #MAX_DISPLAYED_WAYPOINTS}. To be run in the {@link #handler}
* {@link #handler} thread. * thread.
* *
* @param trackDataListeners the track data listeners to notify * @param trackDataListeners the track data listeners to notify
*/ */
@@ -432,7 +440,7 @@ public class TrackDataHub implements DataSourceListener {
Cursor cursor = null; Cursor cursor = null;
try { try {
cursor = myTracksProviderUtils.getWaypointCursor( cursor = myTracksProviderUtils.getWaypointCursor(
selectedTrackId, -1L, MAX_DISPLAYED_WAYPOINTS_POINTS); selectedTrackId, -1L, MAX_DISPLAYED_WAYPOINTS);
if (cursor != null && cursor.moveToFirst()) { if (cursor != null && cursor.moveToFirst()) {
do { do {
Waypoint waypoint = myTracksProviderUtils.createWaypoint(cursor); Waypoint waypoint = myTracksProviderUtils.createWaypoint(cursor);
@@ -187,7 +187,7 @@ public class TrackDataHubTest extends AndroidTestCase {
// Register two listeners // Register two listeners
Capture<ContentObserver> contentObserverCapture = new Capture<ContentObserver>(); Capture<ContentObserver> contentObserverCapture = new Capture<ContentObserver>();
expect(myTracksProviderUtils.getWaypointCursor( expect(myTracksProviderUtils.getWaypointCursor(
eq(TRACK_ID), AndroidMock.leq(-1L), eq(Constants.MAX_DISPLAYED_WAYPOINTS_POINTS))) eq(TRACK_ID), AndroidMock.leq(-1L), eq(TrackDataHub.MAX_DISPLAYED_WAYPOINTS)))
.andStubAnswer(new FixedSizeCursorAnswer(2)); .andStubAnswer(new FixedSizeCursorAnswer(2));
expect(myTracksProviderUtils.createWaypoint(isA(Cursor.class))) expect(myTracksProviderUtils.createWaypoint(isA(Cursor.class)))
.andReturn(waypoint1).andReturn(waypoint2).andReturn(waypoint1).andReturn(waypoint2); .andReturn(waypoint1).andReturn(waypoint2).andReturn(waypoint1).andReturn(waypoint2);
@@ -214,7 +214,7 @@ public class TrackDataHubTest extends AndroidTestCase {
// Cause waypoints table update // Cause waypoints table update
ContentObserver contentObserver = contentObserverCapture.getValue(); ContentObserver contentObserver = contentObserverCapture.getValue();
expect(myTracksProviderUtils.getWaypointCursor( expect(myTracksProviderUtils.getWaypointCursor(
eq(TRACK_ID), AndroidMock.leq(-1L), eq(Constants.MAX_DISPLAYED_WAYPOINTS_POINTS))) eq(TRACK_ID), AndroidMock.leq(-1L), eq(TrackDataHub.MAX_DISPLAYED_WAYPOINTS)))
.andStubAnswer(new FixedSizeCursorAnswer(3)); .andStubAnswer(new FixedSizeCursorAnswer(3));
expect(myTracksProviderUtils.createWaypoint(isA(Cursor.class))) expect(myTracksProviderUtils.createWaypoint(isA(Cursor.class)))
.andReturn(waypoint1).andReturn(waypoint2).andReturn(waypoint3); .andReturn(waypoint1).andReturn(waypoint2).andReturn(waypoint3);
@@ -235,7 +235,7 @@ public class TrackDataHubTest extends AndroidTestCase {
// Unregister one listener // Unregister one listener
expect(myTracksProviderUtils.getWaypointCursor( expect(myTracksProviderUtils.getWaypointCursor(
eq(TRACK_ID), AndroidMock.leq(-1L), eq(Constants.MAX_DISPLAYED_WAYPOINTS_POINTS))) eq(TRACK_ID), AndroidMock.leq(-1L), eq(TrackDataHub.MAX_DISPLAYED_WAYPOINTS)))
.andStubAnswer(new FixedSizeCursorAnswer(4)); .andStubAnswer(new FixedSizeCursorAnswer(4));
expect(myTracksProviderUtils.createWaypoint(isA(Cursor.class))) expect(myTracksProviderUtils.createWaypoint(isA(Cursor.class)))
.andReturn(waypoint1).andReturn(waypoint2).andReturn(waypoint3).andReturn(waypoint4); .andReturn(waypoint1).andReturn(waypoint2).andReturn(waypoint3).andReturn(waypoint4);