rename TimeZone to Timezone

Signed-off-by: Peter Siegmund <developer@mars3142.org>
This commit is contained in:
2024-10-28 14:46:52 +01:00
parent e531050883
commit 6591bfc730
7 changed files with 19 additions and 19 deletions

View File

@@ -11,9 +11,9 @@ import org.springframework.context.annotation.Configuration;
public class OpenAPIConfig { public class OpenAPIConfig {
@Bean @Bean
public OpenAPI timeZoneOpenAPI() { public OpenAPI timezoneOpenAPI() {
return new OpenAPI() return new OpenAPI()
.info(new Info().title("TimeZone API").version("1.0")) .info(new Info().title("Timezone API").version("1.0"))
.servers( .servers(
List.of( List.of(
new Server().url("https://api.firmware-hq.dev"), new Server().url("https://api.firmware-hq.dev"),

View File

@@ -2,8 +2,8 @@ package dev.mars3142.fhq.timezone_service.timezone.controllers;
import dev.mars3142.fhq.timezone_service.timezone.domain.entities.response.TimeApiTimezoneZoneResponse; import dev.mars3142.fhq.timezone_service.timezone.domain.entities.response.TimeApiTimezoneZoneResponse;
import dev.mars3142.fhq.timezone_service.timezone.domain.model.response.LocationResponse; import dev.mars3142.fhq.timezone_service.timezone.domain.model.response.LocationResponse;
import dev.mars3142.fhq.timezone_service.timezone.domain.model.response.TimeZoneResponse; import dev.mars3142.fhq.timezone_service.timezone.domain.model.response.TimezoneResponse;
import dev.mars3142.fhq.timezone_service.timezone.service.TimeZoneService; import dev.mars3142.fhq.timezone_service.timezone.service.TimezoneService;
import java.util.Objects; import java.util.Objects;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.val; import lombok.val;
@@ -19,19 +19,19 @@ import org.springframework.web.bind.annotation.RestController;
@RestController @RestController
@RequestMapping("v1/timezone") @RequestMapping("v1/timezone")
@RequiredArgsConstructor @RequiredArgsConstructor
public class TimeZoneController { public class TimezoneController {
private final TimeZoneService timeZoneService; private final TimezoneService timeZoneService;
@GetMapping @GetMapping
public HttpEntity<TimeZoneResponse> getTimeZone( public HttpEntity<TimezoneResponse> getTimeZone(
@RequestHeader(value = "X-Forwarded-For", defaultValue = "127.0.0.1") String header) { @RequestHeader(value = "X-Forwarded-For", defaultValue = "127.0.0.1") String header) {
val clientIp = header.split(",")[0]; val clientIp = header.split(",")[0];
val ip = timeZoneService.getExternalIp(clientIp); val ip = timeZoneService.getExternalIp(clientIp);
val timezoneInfo = timeZoneService.getTimeZoneInfoByIp(ip); val timezoneInfo = timeZoneService.getTimeZoneInfoByIp(ip);
val posix = timeZoneService.getPosixTimeZone(timezoneInfo.timezone()); val posix = timeZoneService.getPosixTimeZone(timezoneInfo.timezone());
return new ResponseEntity<>( return new ResponseEntity<>(
TimeZoneResponse.builder().timezone(timezoneInfo.timezone()).abbreviation(timezoneInfo.abbreviation()) TimezoneResponse.builder().timezone(timezoneInfo.timezone()).abbreviation(timezoneInfo.abbreviation())
.posix_tz(posix).build(), HttpStatus.OK); .posix_tz(posix).build(), HttpStatus.OK);
} }
@@ -42,14 +42,14 @@ public class TimeZoneController {
} }
@GetMapping("{area}/{location}") @GetMapping("{area}/{location}")
public HttpEntity<TimeZoneResponse> getTimeZoneForLocation(@PathVariable String area, @PathVariable String location) { public HttpEntity<TimezoneResponse> getTimeZoneForLocation(@PathVariable String area, @PathVariable String location) {
val timezone = area + "/" + location; val timezone = area + "/" + location;
val timezoneInfo = timeZoneService.getTimeZoneInfo(timezone); val timezoneInfo = timeZoneService.getTimeZoneInfo(timezone);
val abbreviation = Objects.requireNonNullElse(timezoneInfo.dstInterval(), val abbreviation = Objects.requireNonNullElse(timezoneInfo.dstInterval(),
new TimeApiTimezoneZoneResponse.Interval(null)).dstName(); new TimeApiTimezoneZoneResponse.Interval(null)).dstName();
val posix = timeZoneService.getPosixTimeZone(timezone); val posix = timeZoneService.getPosixTimeZone(timezone);
return new ResponseEntity<>( return new ResponseEntity<>(
TimeZoneResponse.builder().timezone(timezone).abbreviation(abbreviation).posix_tz(posix).build(), TimezoneResponse.builder().timezone(timezone).abbreviation(abbreviation).posix_tz(posix).build(),
HttpStatus.OK); HttpStatus.OK);
} }
} }

View File

@@ -8,7 +8,7 @@ import org.springframework.hateoas.RepresentationModel;
@Getter @Getter
@Builder @Builder
@RequiredArgsConstructor @RequiredArgsConstructor
public class TimeZoneResponse extends RepresentationModel<TimeZoneResponse> { public class TimezoneResponse extends RepresentationModel<TimezoneResponse> {
private final String timezone; private final String timezone;
private final String abbreviation; private final String abbreviation;

View File

@@ -4,7 +4,7 @@ import dev.mars3142.fhq.timezone_service.timezone.domain.entities.response.TimeA
import dev.mars3142.fhq.timezone_service.timezone.domain.entities.response.WorldTimeApiIpResponse; import dev.mars3142.fhq.timezone_service.timezone.domain.entities.response.WorldTimeApiIpResponse;
import java.util.List; import java.util.List;
public interface TimeZoneService { public interface TimezoneService {
String getExternalIp(String ip); String getExternalIp(String ip);

View File

@@ -4,7 +4,7 @@ import dev.mars3142.fhq.timezone_service.exceptions.NotFoundException;
import dev.mars3142.fhq.timezone_service.timezone.domain.entities.response.IpifyResponse; import dev.mars3142.fhq.timezone_service.timezone.domain.entities.response.IpifyResponse;
import dev.mars3142.fhq.timezone_service.timezone.domain.entities.response.TimeApiTimezoneZoneResponse; import dev.mars3142.fhq.timezone_service.timezone.domain.entities.response.TimeApiTimezoneZoneResponse;
import dev.mars3142.fhq.timezone_service.timezone.domain.entities.response.WorldTimeApiIpResponse; import dev.mars3142.fhq.timezone_service.timezone.domain.entities.response.WorldTimeApiIpResponse;
import dev.mars3142.fhq.timezone_service.timezone.service.TimeZoneService; import dev.mars3142.fhq.timezone_service.timezone.service.TimezoneService;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.nio.file.Files; import java.nio.file.Files;
@@ -21,11 +21,11 @@ import org.springframework.web.client.RestClient;
@Service @Service
@Slf4j @Slf4j
public class TimeZoneServiceImpl implements TimeZoneService { public class TimezoneServiceImpl implements TimezoneService {
private final RestClient restClient; private final RestClient restClient;
public TimeZoneServiceImpl(RestClient.Builder restClientBuilder) { public TimezoneServiceImpl(RestClient.Builder restClientBuilder) {
restClient = restClientBuilder.build(); restClient = restClientBuilder.build();
} }

View File

@@ -14,11 +14,11 @@ import static org.springframework.test.web.client.match.MockRestRequestMatchers.
import static org.springframework.test.web.client.response.MockRestResponseCreators.withSuccess; import static org.springframework.test.web.client.response.MockRestResponseCreators.withSuccess;
@DisplayName("Testing Timezone Service Default Implementation") @DisplayName("Testing Timezone Service Default Implementation")
@RestClientTest(TimeZoneServiceImpl.class) @RestClientTest(TimezoneServiceImpl.class)
class TimeZoneServiceImplTest { class TimezoneServiceImplTest {
@Autowired @Autowired
private TimeZoneServiceImpl timeZoneService; private TimezoneServiceImpl timeZoneService;
@Autowired @Autowired
private MockRestServiceServer server; private MockRestServiceServer server;

View File

@@ -12,7 +12,7 @@ import static org.assertj.core.api.Assertions.assertThat;
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@DisplayName("Testing Timezone RestController") @DisplayName("Testing Timezone RestController")
public class TimeZoneControllerTest { public class TimezoneControllerTest {
@LocalServerPort @LocalServerPort
private int port; private int port;