Skip to content

Latest commit

 

History

History
29 lines (17 loc) · 2.99 KB

README.md

File metadata and controls

29 lines (17 loc) · 2.99 KB

Конвертер валют

Задача

Необходимо написать конвертер валют с HTTP-интерфейсом, содержащий единственный метод:

GET /currencies/convert/{from}/to/{to}?amount={amount}

Здесь параметрам from и to соответствуют трёхбуквенные ISO-коды исходной и целевой валют (регистр может быть любой), в параметре же amount указывается сумма конвертации (в качестве десятичного разделителя используется точка).

За HTTP-интерфейсом следует расположить сервисный слой, реализующий доступ к котировкам центробанков РФ и Мьянмы. Выбор в пользу того или иного поставщика котировок должен совершаться на основе заголовка X-Liquidity-Provider, который является обязательным и принимает значения из соответствующего набора: CBR, CBM.

Метод должен возвращать HTTP-статус 200 и результат конвертации по актуальному курсу в виде просто числа (в качестве десятичного разделителя опять-таки точка).

Будьте готовы, что потребители сервиса могут передавать некорректные значения параметров или обращаться к несуществующим ресурсам. Вы должны отвечать корректно с точки зрения HTTP-протокола.

Указания к решению

Сделайте форк этого репозитория, выполните решение и направьте обратно через пул реквест. Используйте Spring, Maven, разумно задействуйте паттерны и не пишите велосипеды. Интеграционные тесты будут несомненным плюсом.

Не стесняйтесь адресовать любые вопросы, связанные с этим заданием, на адрес vopavlovskiy@platbox.com.

Технические ресурсы