Работая с приложением Spring Boot, одна из функций будет включать обновление программного обеспечения. Это будет описано в JSON
следующим образом:
{
"DeviceProfile": {
"firmware": {
"name": "firmware_a",
"version": "2.0.24.3",
"url": " ",
"isPatch": true,
"patchdependency": "1.0.0"
},
"software": [
{
"name": "mySoftware1",
"version": "1.0.0",
"url": "http://www.example.com",
"action": "install"
},
{
"name": "mySoftware2",
"version": "1.1.0",
"url": "http://www.example.com",
"action": "install"
},
{
"name": "mySoftware3",
"version": "2.0.0",
"url": "http://www.example.com",
"action": "install"
}
],
"configuration": [
{
"url": "https://www.examples.com",
"type": "myConfigType_1",
"name": "myConfig_1”
},
{
"url": "https://www.examples.com",
"type": " myConfigType_2",
"name": "myConfig_2”
}
]
}
}
Есть несколько условий, которые должны быть выполнены - список «конфигурации» должен содержать ровно один элемент и его имя должно быть определенной строкой , Имя каждого элемента в части software
должно начинаться с определенного префикса. Могут быть и другие дополнительные условия. Так что мне было интересно, какой это лучший способ сделать это. Я могу создать класс DeviceProfile
для извлечения данных, используя ObjectMapper
, а затем реализовать проверку для каждого отдельного условия, но мне было интересно, есть ли лучший способ сделать это. Пожалуйста, сообщите также для модульного тестирования подхода.