package com.sonymusic.dx.dxuiservice.usm;

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

/**
 * Session validation client.
 */
@FeignClient(name = "sessionClient", url = "${usm.client.url}")
public interface USMSessionValidationClient {

    /**
     * Performs session validation.
     *
     * @param request Session validation request.
     * @return Validation result.
     */
    @PostMapping(
            path = "${usm.session.validation.path}",
            consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
    USMSessionResponse validate(@RequestBody USMSessionRequest request);

}
