Untitled

 avatar
unknown
plain_text
8 days ago
2.1 kB
3
Indexable
package com.santander.scib.dlx.web;

import com.santander.scib.dlx.model.web.CreateCalendarRequest;
import com.santander.scib.dlx.model.web.GenericResponse;
import com.santander.scib.dlx.model.web.UpdateCalendarRequest;
import com.santander.scib.dlx.service.CalendarService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

/**
 * Web controller for calendars
 */
@Slf4j
@RestController
@RequestMapping(value = "/nat")
@RequiredArgsConstructor
public class CalendarController {
    private final CalendarService calendarService;

    @PostMapping(value = "/calendar")
    public ResponseEntity<GenericResponse> createCalendar(
            @RequestHeader("token") String token,
            @RequestBody CreateCalendarRequest createCalendarRequest) {
        log.info(
            "CalendarController.createCalendar <- token: Token, calendarRequest: {}",
                createCalendarRequest
        );

        return calendarService.createCalendar(token, createCalendarRequest);
    }

    @DeleteMapping(value = "/calendar/{calendarId}")
    public ResponseEntity<GenericResponse> deleteCalendar(
            @RequestHeader("token") String token,
            @PathVariable("calendarId") String calendarId) {
        log.info(
            "CalendarController.deleteCalendar <- token: Token, calendarId: {}",
            calendarId
        );

        return calendarService.deleteCalendar(token, calendarId);
    }

    @PatchMapping(value = "/calendar/{calendarId}")
    public ResponseEntity<GenericResponse> updateCalendar(
            @RequestHeader("token") String token,
            @PathVariable("calendarId") String calendarId,
            @RequestBody UpdateCalendarRequest updateCalendarRequest) {
        log.info(
            "CalendarController.updateCalendar <- token: Token, calendarId: {}",
            calendarId
        );

        return calendarService.updateCalendar(token, calendarId, updateCalendarRequest);
    }
}
Editor is loading...
Leave a Comment