Skip to content

Commit 28886e6

Browse files
use US Locale to correctly parse "Sep" instead of "Sept"
1 parent 55383a7 commit 28886e6

13 files changed

+29
-20
lines changed

src/main/java/ru/r2cloud/cloud/LeoSatDataClient.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import java.util.Collections;
2020
import java.util.Date;
2121
import java.util.List;
22+
import java.util.Locale;
2223
import java.util.Optional;
2324
import java.util.TimeZone;
2425
import java.util.concurrent.CompletableFuture;
@@ -109,7 +110,7 @@ public List<Satellite> loadNewLaunches(long lastModified) throws NotModifiedExce
109110
Optional<String> lastModifiedOnServer = response.headers().firstValue("Last-Modified");
110111
lastModified = 0;
111112
if (lastModifiedOnServer.isPresent()) {
112-
SimpleDateFormat sdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz");
113+
SimpleDateFormat sdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);
113114
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
114115
try {
115116
lastModified = sdf.parse(lastModifiedOnServer.get()).getTime();
@@ -129,7 +130,7 @@ public List<Satellite> loadNewLaunches(long lastModified) throws NotModifiedExce
129130
throw new IllegalStateException(e);
130131
}
131132
}
132-
133+
133134
public List<Satellite> loadSatellites(long lastModified) throws NotModifiedException {
134135
return loadSatellites(lastModified, null);
135136
}
@@ -156,7 +157,7 @@ public List<Satellite> loadSatellites(long lastModified, Boolean all) throws Not
156157
Optional<String> lastModifiedOnServer = response.headers().firstValue("Last-Modified");
157158
lastModified = 0;
158159
if (lastModifiedOnServer.isPresent()) {
159-
SimpleDateFormat sdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz");
160+
SimpleDateFormat sdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);
160161
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
161162
try {
162163
lastModified = sdf.parse(lastModifiedOnServer.get()).getTime();
@@ -407,7 +408,7 @@ private HttpRequest.Builder createRequest(String path, long lastModified) {
407408
result.header("User-Agent", R2Cloud.getVersion() + " leosatdata.com");
408409
result.header("Authorization", config.getProperty("r2cloud.apiKey"));
409410
if (lastModified != 0) {
410-
SimpleDateFormat sdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz");
411+
SimpleDateFormat sdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz", Locale.US);
411412
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
412413
result.header("If-Modified-Since", sdf.format(new Date(lastModified)));
413414
}

src/main/java/ru/r2cloud/cloud/SatnogsClient.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import java.util.Date;
1717
import java.util.HashMap;
1818
import java.util.List;
19+
import java.util.Locale;
1920
import java.util.Map;
2021
import java.util.TimeZone;
2122
import java.util.concurrent.CompletableFuture;
@@ -180,9 +181,9 @@ private List<Satellite> readSatellites(String body, Map<String, List<Transmitter
180181
}
181182
JsonArray parsedArray = parsedJson.asArray();
182183
List<Satellite> result = new ArrayList<>();
183-
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
184+
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", Locale.US);
184185
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
185-
SimpleDateFormat updatedFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS");
186+
SimpleDateFormat updatedFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS", Locale.US);
186187
updatedFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
187188
for (int i = 0; i < parsedArray.size(); i++) {
188189
JsonValue jsonValue = parsedArray.get(i);
@@ -310,7 +311,7 @@ private static List<Transmitter> readTransmitters(String body) {
310311
LOG.info("malformed json");
311312
return Collections.emptyList();
312313
}
313-
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS");
314+
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS", Locale.US);
314315
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
315316
JsonArray parsedArray = parsedJson.asArray();
316317
List<Transmitter> result = new ArrayList<>();

src/main/java/ru/r2cloud/web/api/observation/ObservationSigMfMeta.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ private JsonObject convertToSigMfMeta(Observation observation, Satellite satelli
172172
global.set("r2cloud:device", deviceConfiguration);
173173
}
174174

175-
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS");
175+
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS", Locale.US);
176176
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
177177

178178
JsonObject capture = new JsonObject();

src/main/java/ru/r2cloud/web/api/status/Overview.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ public ModelAndView doGet(IHTTPSession session) {
5454
devices.add(curObj);
5555
}
5656
entity.add("devices", devices);
57-
SimpleDateFormat sdf = new SimpleDateFormat("dd MMM yyyy HH:mm", Locale.UK);
57+
SimpleDateFormat sdf = new SimpleDateFormat("dd MMM yyyy HH:mm", Locale.US);
5858
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
5959
entity.add("serverTime", sdf.format(new Date()));
6060
result.setData(entity.toString());

src/test/java/ru/r2cloud/MeasureRotatorPrecision.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ private static RotatorConfiguration createValidConfig() {
196196
}
197197

198198
private static long getTime(String str) {
199-
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.UK);
199+
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US);
200200
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
201201
try {
202202
return sdf.parse(str).getTime();

src/test/java/ru/r2cloud/TestUtil.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
import java.nio.file.StandardCopyOption;
3030
import java.text.SimpleDateFormat;
3131
import java.util.HashMap;
32+
import java.util.Locale;
3233
import java.util.Map;
3334
import java.util.TimeZone;
3435
import java.util.UUID;
@@ -350,7 +351,7 @@ public static Map<String, Tle> loadTle(String name) {
350351
}
351352

352353
public static SimpleDateFormat createDateFormatter() {
353-
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
354+
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS", Locale.US);
354355
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
355356
return sdf;
356357
}

src/test/java/ru/r2cloud/satellite/OverlappedTimetableTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,13 @@
77
import static org.junit.Assert.assertTrue;
88

99
import java.text.SimpleDateFormat;
10+
import java.util.Locale;
1011

1112
import org.junit.Test;
1213

1314
public class OverlappedTimetableTest {
1415

15-
private static final SimpleDateFormat SDF = new SimpleDateFormat("HH:mm");
16+
private static final SimpleDateFormat SDF = new SimpleDateFormat("HH:mm", Locale.US);
1617

1718
@Test
1819
public void testIntersectWithPrevious() throws Exception {

src/test/java/ru/r2cloud/satellite/PredictOreKitTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import java.text.SimpleDateFormat;
88
import java.util.Date;
99
import java.util.List;
10+
import java.util.Locale;
1011
import java.util.TimeZone;
1112

1213
import org.junit.Before;
@@ -94,13 +95,13 @@ public void testStaleTle() throws Exception {
9495
}
9596

9697
private static Date getDate(String str) throws Exception {
97-
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
98+
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss", Locale.US);
9899
sdf.setTimeZone(TimeZone.getTimeZone("Europe/London"));
99100
return sdf.parse(str);
100101
}
101102

102103
private static void assertPosition(String start, String end, SatPass pass) throws Exception {
103-
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
104+
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss", Locale.US);
104105
sdf.setTimeZone(TimeZone.getTimeZone("Europe/London"));
105106
assertEquals(start, sdf.format(new Date(pass.getStartMillis())));
106107
assertEquals(end, sdf.format(new Date(pass.getEndMillis())));

src/test/java/ru/r2cloud/satellite/RotatorServiceTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ private ObservationRequest createRequest() {
167167
}
168168

169169
private static long getTime(String str) {
170-
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.UK);
170+
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US);
171171
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
172172
try {
173173
return sdf.parse(str).getTime();

src/test/java/ru/r2cloud/satellite/SequentialTimetableTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,13 @@
77
import static org.junit.Assert.assertTrue;
88

99
import java.text.SimpleDateFormat;
10+
import java.util.Locale;
1011

1112
import org.junit.Test;
1213

1314
public class SequentialTimetableTest {
1415

15-
private static final SimpleDateFormat SDF = new SimpleDateFormat("HH:mm");
16+
private static final SimpleDateFormat SDF = new SimpleDateFormat("HH:mm", Locale.US);
1617

1718
@Test
1819
public void testClear() throws Exception {

0 commit comments

Comments
 (0)