rsmp 0.42.9 → 0.43.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +2 -0
- data/CHANGELOG.md +7 -1
- data/Gemfile.lock +3 -5
- data/Rakefile +36 -0
- data/lib/rsmp/cli.rb +19 -32
- data/lib/rsmp/convert/export/json_schema/items.rb +55 -0
- data/lib/rsmp/convert/export/json_schema/outputs.rb +147 -0
- data/lib/rsmp/convert/export/json_schema/values.rb +120 -0
- data/lib/rsmp/convert/export/json_schema.rb +58 -0
- data/lib/rsmp/message.rb +0 -2
- data/lib/rsmp/schema.rb +210 -0
- data/lib/rsmp/schema_error.rb +19 -0
- data/lib/rsmp/version.rb +1 -1
- data/lib/rsmp.rb +6 -2
- data/rsmp.gemspec +2 -1
- data/schemas/core/3.1.2/aggregated_status.json +25 -0
- data/schemas/core/3.1.2/alarm.json +67 -0
- data/schemas/core/3.1.2/alarm_acknowledge.json +12 -0
- data/schemas/core/3.1.2/alarm_issue.json +47 -0
- data/schemas/core/3.1.2/alarm_suspend_resume.json +3 -0
- data/schemas/core/3.1.2/alarm_suspended_resumed.json +47 -0
- data/schemas/core/3.1.2/command_request.json +24 -0
- data/schemas/core/3.1.2/command_response.json +34 -0
- data/schemas/core/3.1.2/core.json +38 -0
- data/schemas/core/3.1.2/definitions.json +67 -0
- data/schemas/core/3.1.2/message_ack.json +11 -0
- data/schemas/core/3.1.2/message_not_ack.json +15 -0
- data/schemas/core/3.1.2/rsmp.json +124 -0
- data/schemas/core/3.1.2/status.json +21 -0
- data/schemas/core/3.1.2/status_request.json +5 -0
- data/schemas/core/3.1.2/status_response.json +26 -0
- data/schemas/core/3.1.2/status_subscribe.json +27 -0
- data/schemas/core/3.1.2/status_unsubscribe.json +5 -0
- data/schemas/core/3.1.2/status_update.json +26 -0
- data/schemas/core/3.1.2/version.json +47 -0
- data/schemas/core/3.1.2/watchdog.json +9 -0
- data/schemas/core/3.1.3/aggregated_status.json +25 -0
- data/schemas/core/3.1.3/alarm.json +67 -0
- data/schemas/core/3.1.3/alarm_acknowledge.json +12 -0
- data/schemas/core/3.1.3/alarm_issue.json +47 -0
- data/schemas/core/3.1.3/alarm_suspend_resume.json +3 -0
- data/schemas/core/3.1.3/alarm_suspended_resumed.json +47 -0
- data/schemas/core/3.1.3/command_request.json +24 -0
- data/schemas/core/3.1.3/command_response.json +34 -0
- data/schemas/core/3.1.3/core.json +38 -0
- data/schemas/core/3.1.3/definitions.json +67 -0
- data/schemas/core/3.1.3/message_ack.json +11 -0
- data/schemas/core/3.1.3/message_not_ack.json +15 -0
- data/schemas/core/3.1.3/rsmp.json +124 -0
- data/schemas/core/3.1.3/status.json +21 -0
- data/schemas/core/3.1.3/status_request.json +5 -0
- data/schemas/core/3.1.3/status_response.json +41 -0
- data/schemas/core/3.1.3/status_subscribe.json +27 -0
- data/schemas/core/3.1.3/status_unsubscribe.json +5 -0
- data/schemas/core/3.1.3/status_update.json +41 -0
- data/schemas/core/3.1.3/version.json +47 -0
- data/schemas/core/3.1.3/watchdog.json +9 -0
- data/schemas/core/3.1.4/aggregated_status.json +25 -0
- data/schemas/core/3.1.4/alarm.json +65 -0
- data/schemas/core/3.1.4/alarm_acknowledge.json +12 -0
- data/schemas/core/3.1.4/alarm_issue.json +47 -0
- data/schemas/core/3.1.4/alarm_suspend_resume.json +3 -0
- data/schemas/core/3.1.4/alarm_suspended_resumed.json +47 -0
- data/schemas/core/3.1.4/command_request.json +24 -0
- data/schemas/core/3.1.4/command_response.json +34 -0
- data/schemas/core/3.1.4/core.json +38 -0
- data/schemas/core/3.1.4/definitions.json +67 -0
- data/schemas/core/3.1.4/message_ack.json +11 -0
- data/schemas/core/3.1.4/message_not_ack.json +15 -0
- data/schemas/core/3.1.4/rsmp.json +124 -0
- data/schemas/core/3.1.4/status.json +21 -0
- data/schemas/core/3.1.4/status_request.json +5 -0
- data/schemas/core/3.1.4/status_response.json +41 -0
- data/schemas/core/3.1.4/status_subscribe.json +27 -0
- data/schemas/core/3.1.4/status_unsubscribe.json +5 -0
- data/schemas/core/3.1.4/status_update.json +41 -0
- data/schemas/core/3.1.4/version.json +47 -0
- data/schemas/core/3.1.4/watchdog.json +9 -0
- data/schemas/core/3.1.5/aggregated_status.json +25 -0
- data/schemas/core/3.1.5/aggregated_status_request.json +9 -0
- data/schemas/core/3.1.5/alarm.json +75 -0
- data/schemas/core/3.1.5/alarm_acknowledge.json +12 -0
- data/schemas/core/3.1.5/alarm_issue.json +47 -0
- data/schemas/core/3.1.5/alarm_request.json +3 -0
- data/schemas/core/3.1.5/alarm_suspend_resume.json +3 -0
- data/schemas/core/3.1.5/alarm_suspended_resumed.json +47 -0
- data/schemas/core/3.1.5/command_request.json +24 -0
- data/schemas/core/3.1.5/command_response.json +34 -0
- data/schemas/core/3.1.5/core.json +39 -0
- data/schemas/core/3.1.5/definitions.json +67 -0
- data/schemas/core/3.1.5/message_ack.json +11 -0
- data/schemas/core/3.1.5/message_not_ack.json +15 -0
- data/schemas/core/3.1.5/rsmp.json +133 -0
- data/schemas/core/3.1.5/status.json +21 -0
- data/schemas/core/3.1.5/status_request.json +5 -0
- data/schemas/core/3.1.5/status_response.json +41 -0
- data/schemas/core/3.1.5/status_subscribe.json +31 -0
- data/schemas/core/3.1.5/status_unsubscribe.json +5 -0
- data/schemas/core/3.1.5/status_update.json +41 -0
- data/schemas/core/3.1.5/version.json +47 -0
- data/schemas/core/3.1.5/watchdog.json +9 -0
- data/schemas/core/3.2.0/aggregated_status.json +25 -0
- data/schemas/core/3.2.0/aggregated_status_request.json +9 -0
- data/schemas/core/3.2.0/alarm.json +71 -0
- data/schemas/core/3.2.0/alarm_acknowledge.json +11 -0
- data/schemas/core/3.2.0/alarm_issue.json +44 -0
- data/schemas/core/3.2.0/alarm_request.json +3 -0
- data/schemas/core/3.2.0/alarm_suspend_resume.json +3 -0
- data/schemas/core/3.2.0/alarm_suspended_resumed.json +44 -0
- data/schemas/core/3.2.0/command_request.json +24 -0
- data/schemas/core/3.2.0/command_response.json +34 -0
- data/schemas/core/3.2.0/core.json +39 -0
- data/schemas/core/3.2.0/definitions.json +67 -0
- data/schemas/core/3.2.0/message_ack.json +11 -0
- data/schemas/core/3.2.0/message_not_ack.json +15 -0
- data/schemas/core/3.2.0/rsmp.json +133 -0
- data/schemas/core/3.2.0/status.json +21 -0
- data/schemas/core/3.2.0/status_request.json +5 -0
- data/schemas/core/3.2.0/status_response.json +41 -0
- data/schemas/core/3.2.0/status_subscribe.json +31 -0
- data/schemas/core/3.2.0/status_unsubscribe.json +5 -0
- data/schemas/core/3.2.0/status_update.json +41 -0
- data/schemas/core/3.2.0/version.json +47 -0
- data/schemas/core/3.2.0/watchdog.json +9 -0
- data/schemas/core/3.2.1/aggregated_status.json +25 -0
- data/schemas/core/3.2.1/aggregated_status_request.json +9 -0
- data/schemas/core/3.2.1/alarm.json +71 -0
- data/schemas/core/3.2.1/alarm_acknowledge.json +11 -0
- data/schemas/core/3.2.1/alarm_issue.json +44 -0
- data/schemas/core/3.2.1/alarm_request.json +3 -0
- data/schemas/core/3.2.1/alarm_suspend_resume.json +3 -0
- data/schemas/core/3.2.1/alarm_suspended_resumed.json +44 -0
- data/schemas/core/3.2.1/command_request.json +24 -0
- data/schemas/core/3.2.1/command_response.json +34 -0
- data/schemas/core/3.2.1/core.json +39 -0
- data/schemas/core/3.2.1/definitions.json +67 -0
- data/schemas/core/3.2.1/message_ack.json +11 -0
- data/schemas/core/3.2.1/message_not_ack.json +15 -0
- data/schemas/core/3.2.1/rsmp.json +133 -0
- data/schemas/core/3.2.1/status.json +21 -0
- data/schemas/core/3.2.1/status_request.json +5 -0
- data/schemas/core/3.2.1/status_response.json +41 -0
- data/schemas/core/3.2.1/status_subscribe.json +31 -0
- data/schemas/core/3.2.1/status_unsubscribe.json +5 -0
- data/schemas/core/3.2.1/status_update.json +41 -0
- data/schemas/core/3.2.1/version.json +47 -0
- data/schemas/core/3.2.1/watchdog.json +9 -0
- data/schemas/core/3.2.2/aggregated_status.json +25 -0
- data/schemas/core/3.2.2/aggregated_status_request.json +9 -0
- data/schemas/core/3.2.2/alarm.json +71 -0
- data/schemas/core/3.2.2/alarm_acknowledge.json +11 -0
- data/schemas/core/3.2.2/alarm_issue.json +44 -0
- data/schemas/core/3.2.2/alarm_request.json +3 -0
- data/schemas/core/3.2.2/alarm_suspend_resume.json +3 -0
- data/schemas/core/3.2.2/alarm_suspended_resumed.json +44 -0
- data/schemas/core/3.2.2/command_request.json +24 -0
- data/schemas/core/3.2.2/command_response.json +34 -0
- data/schemas/core/3.2.2/core.json +39 -0
- data/schemas/core/3.2.2/definitions.json +67 -0
- data/schemas/core/3.2.2/message_ack.json +11 -0
- data/schemas/core/3.2.2/message_not_ack.json +15 -0
- data/schemas/core/3.2.2/rsmp.json +133 -0
- data/schemas/core/3.2.2/status.json +21 -0
- data/schemas/core/3.2.2/status_request.json +5 -0
- data/schemas/core/3.2.2/status_response.json +41 -0
- data/schemas/core/3.2.2/status_subscribe.json +31 -0
- data/schemas/core/3.2.2/status_unsubscribe.json +5 -0
- data/schemas/core/3.2.2/status_update.json +41 -0
- data/schemas/core/3.2.2/version.json +47 -0
- data/schemas/core/3.2.2/watchdog.json +9 -0
- data/schemas/tlc/1.0.10/alarms/A0001.json +4 -0
- data/schemas/tlc/1.0.10/alarms/A0002.json +4 -0
- data/schemas/tlc/1.0.10/alarms/A0003.json +4 -0
- data/schemas/tlc/1.0.10/alarms/A0004.json +4 -0
- data/schemas/tlc/1.0.10/alarms/A0005.json +4 -0
- data/schemas/tlc/1.0.10/alarms/A0006.json +4 -0
- data/schemas/tlc/1.0.10/alarms/A0007.json +4 -0
- data/schemas/tlc/1.0.10/alarms/A0008.json +30 -0
- data/schemas/tlc/1.0.10/alarms/A0009.json +4 -0
- data/schemas/tlc/1.0.10/alarms/A0101.json +4 -0
- data/schemas/tlc/1.0.10/alarms/A0201.json +35 -0
- data/schemas/tlc/1.0.10/alarms/A0202.json +35 -0
- data/schemas/tlc/1.0.10/alarms/A0301.json +92 -0
- data/schemas/tlc/1.0.10/alarms/A0302.json +115 -0
- data/schemas/tlc/1.0.10/alarms/alarms.json +239 -0
- data/schemas/tlc/1.0.10/commands/M0001.json +92 -0
- data/schemas/tlc/1.0.10/commands/M0002.json +69 -0
- data/schemas/tlc/1.0.10/commands/M0003.json +69 -0
- data/schemas/tlc/1.0.10/commands/M0004.json +51 -0
- data/schemas/tlc/1.0.10/commands/M0005.json +69 -0
- data/schemas/tlc/1.0.10/commands/M0006.json +69 -0
- data/schemas/tlc/1.0.10/commands/M0007.json +51 -0
- data/schemas/tlc/1.0.10/commands/M0008.json +69 -0
- data/schemas/tlc/1.0.10/commands/M0010.json +51 -0
- data/schemas/tlc/1.0.10/commands/M0011.json +51 -0
- data/schemas/tlc/1.0.10/commands/M0012.json +51 -0
- data/schemas/tlc/1.0.10/commands/M0013.json +51 -0
- data/schemas/tlc/1.0.10/commands/M0019.json +87 -0
- data/schemas/tlc/1.0.10/commands/M0103.json +72 -0
- data/schemas/tlc/1.0.10/commands/M0104.json +141 -0
- data/schemas/tlc/1.0.10/commands/command_requests.json +8 -0
- data/schemas/tlc/1.0.10/commands/command_responses.json +8 -0
- data/schemas/tlc/1.0.10/commands/commands.json +255 -0
- data/schemas/tlc/1.0.10/defs/definitions.json +67 -0
- data/schemas/tlc/1.0.10/defs/guards.json +24 -0
- data/schemas/tlc/1.0.10/rsmp.json +74 -0
- data/schemas/tlc/1.0.10/statuses/S0001.json +91 -0
- data/schemas/tlc/1.0.10/statuses/S0002.json +36 -0
- data/schemas/tlc/1.0.10/statuses/S0003.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0004.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0005.json +36 -0
- data/schemas/tlc/1.0.10/statuses/S0006.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0007.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0008.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0009.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0010.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0011.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0012.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0013.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0014.json +36 -0
- data/schemas/tlc/1.0.10/statuses/S0015.json +36 -0
- data/schemas/tlc/1.0.10/statuses/S0016.json +36 -0
- data/schemas/tlc/1.0.10/statuses/S0017.json +36 -0
- data/schemas/tlc/1.0.10/statuses/S0018.json +36 -0
- data/schemas/tlc/1.0.10/statuses/S0019.json +36 -0
- data/schemas/tlc/1.0.10/statuses/S0020.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0021.json +37 -0
- data/schemas/tlc/1.0.10/statuses/S0091.json +57 -0
- data/schemas/tlc/1.0.10/statuses/S0092.json +57 -0
- data/schemas/tlc/1.0.10/statuses/S0095.json +36 -0
- data/schemas/tlc/1.0.10/statuses/S0096.json +126 -0
- data/schemas/tlc/1.0.10/statuses/S0201.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0202.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0203.json +54 -0
- data/schemas/tlc/1.0.10/statuses/S0204.json +198 -0
- data/schemas/tlc/1.0.10/statuses/statuses.json +483 -0
- data/schemas/tlc/1.0.10/sxl.yaml +1010 -0
- data/schemas/tlc/1.0.13/alarms/A0001.json +4 -0
- data/schemas/tlc/1.0.13/alarms/A0002.json +4 -0
- data/schemas/tlc/1.0.13/alarms/A0003.json +4 -0
- data/schemas/tlc/1.0.13/alarms/A0004.json +4 -0
- data/schemas/tlc/1.0.13/alarms/A0005.json +4 -0
- data/schemas/tlc/1.0.13/alarms/A0006.json +4 -0
- data/schemas/tlc/1.0.13/alarms/A0007.json +4 -0
- data/schemas/tlc/1.0.13/alarms/A0008.json +30 -0
- data/schemas/tlc/1.0.13/alarms/A0009.json +4 -0
- data/schemas/tlc/1.0.13/alarms/A0101.json +4 -0
- data/schemas/tlc/1.0.13/alarms/A0201.json +35 -0
- data/schemas/tlc/1.0.13/alarms/A0202.json +35 -0
- data/schemas/tlc/1.0.13/alarms/A0301.json +92 -0
- data/schemas/tlc/1.0.13/alarms/A0302.json +115 -0
- data/schemas/tlc/1.0.13/alarms/alarms.json +239 -0
- data/schemas/tlc/1.0.13/commands/M0001.json +92 -0
- data/schemas/tlc/1.0.13/commands/M0002.json +69 -0
- data/schemas/tlc/1.0.13/commands/M0003.json +69 -0
- data/schemas/tlc/1.0.13/commands/M0004.json +51 -0
- data/schemas/tlc/1.0.13/commands/M0005.json +69 -0
- data/schemas/tlc/1.0.13/commands/M0006.json +69 -0
- data/schemas/tlc/1.0.13/commands/M0007.json +51 -0
- data/schemas/tlc/1.0.13/commands/M0008.json +69 -0
- data/schemas/tlc/1.0.13/commands/M0010.json +51 -0
- data/schemas/tlc/1.0.13/commands/M0011.json +51 -0
- data/schemas/tlc/1.0.13/commands/M0012.json +51 -0
- data/schemas/tlc/1.0.13/commands/M0013.json +51 -0
- data/schemas/tlc/1.0.13/commands/M0014.json +69 -0
- data/schemas/tlc/1.0.13/commands/M0015.json +69 -0
- data/schemas/tlc/1.0.13/commands/M0016.json +51 -0
- data/schemas/tlc/1.0.13/commands/M0017.json +51 -0
- data/schemas/tlc/1.0.13/commands/M0018.json +69 -0
- data/schemas/tlc/1.0.13/commands/M0019.json +87 -0
- data/schemas/tlc/1.0.13/commands/M0103.json +72 -0
- data/schemas/tlc/1.0.13/commands/M0104.json +141 -0
- data/schemas/tlc/1.0.13/commands/command_requests.json +8 -0
- data/schemas/tlc/1.0.13/commands/command_responses.json +8 -0
- data/schemas/tlc/1.0.13/commands/commands.json +335 -0
- data/schemas/tlc/1.0.13/defs/definitions.json +67 -0
- data/schemas/tlc/1.0.13/defs/guards.json +24 -0
- data/schemas/tlc/1.0.13/rsmp.json +74 -0
- data/schemas/tlc/1.0.13/statuses/S0001.json +91 -0
- data/schemas/tlc/1.0.13/statuses/S0002.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0003.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0004.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0005.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0006.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0007.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0008.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0009.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0010.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0011.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0012.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0013.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0014.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0015.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0016.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0017.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0018.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0019.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0020.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0021.json +37 -0
- data/schemas/tlc/1.0.13/statuses/S0022.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0023.json +37 -0
- data/schemas/tlc/1.0.13/statuses/S0024.json +37 -0
- data/schemas/tlc/1.0.13/statuses/S0025.json +162 -0
- data/schemas/tlc/1.0.13/statuses/S0026.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0027.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0028.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0029.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0091.json +57 -0
- data/schemas/tlc/1.0.13/statuses/S0092.json +57 -0
- data/schemas/tlc/1.0.13/statuses/S0095.json +36 -0
- data/schemas/tlc/1.0.13/statuses/S0096.json +126 -0
- data/schemas/tlc/1.0.13/statuses/S0201.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0202.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0203.json +54 -0
- data/schemas/tlc/1.0.13/statuses/S0204.json +198 -0
- data/schemas/tlc/1.0.13/statuses/statuses.json +611 -0
- data/schemas/tlc/1.0.13/sxl.yaml +1312 -0
- data/schemas/tlc/1.0.14/alarms/A0001.json +4 -0
- data/schemas/tlc/1.0.14/alarms/A0002.json +4 -0
- data/schemas/tlc/1.0.14/alarms/A0003.json +4 -0
- data/schemas/tlc/1.0.14/alarms/A0004.json +4 -0
- data/schemas/tlc/1.0.14/alarms/A0005.json +4 -0
- data/schemas/tlc/1.0.14/alarms/A0006.json +4 -0
- data/schemas/tlc/1.0.14/alarms/A0007.json +4 -0
- data/schemas/tlc/1.0.14/alarms/A0008.json +30 -0
- data/schemas/tlc/1.0.14/alarms/A0009.json +4 -0
- data/schemas/tlc/1.0.14/alarms/A0101.json +4 -0
- data/schemas/tlc/1.0.14/alarms/A0201.json +35 -0
- data/schemas/tlc/1.0.14/alarms/A0202.json +35 -0
- data/schemas/tlc/1.0.14/alarms/A0301.json +92 -0
- data/schemas/tlc/1.0.14/alarms/A0302.json +115 -0
- data/schemas/tlc/1.0.14/alarms/alarms.json +239 -0
- data/schemas/tlc/1.0.14/commands/M0001.json +92 -0
- data/schemas/tlc/1.0.14/commands/M0002.json +69 -0
- data/schemas/tlc/1.0.14/commands/M0003.json +69 -0
- data/schemas/tlc/1.0.14/commands/M0004.json +51 -0
- data/schemas/tlc/1.0.14/commands/M0005.json +69 -0
- data/schemas/tlc/1.0.14/commands/M0006.json +69 -0
- data/schemas/tlc/1.0.14/commands/M0007.json +51 -0
- data/schemas/tlc/1.0.14/commands/M0008.json +69 -0
- data/schemas/tlc/1.0.14/commands/M0010.json +51 -0
- data/schemas/tlc/1.0.14/commands/M0011.json +51 -0
- data/schemas/tlc/1.0.14/commands/M0012.json +51 -0
- data/schemas/tlc/1.0.14/commands/M0013.json +51 -0
- data/schemas/tlc/1.0.14/commands/M0014.json +69 -0
- data/schemas/tlc/1.0.14/commands/M0015.json +69 -0
- data/schemas/tlc/1.0.14/commands/M0016.json +51 -0
- data/schemas/tlc/1.0.14/commands/M0017.json +51 -0
- data/schemas/tlc/1.0.14/commands/M0018.json +69 -0
- data/schemas/tlc/1.0.14/commands/M0019.json +87 -0
- data/schemas/tlc/1.0.14/commands/M0103.json +72 -0
- data/schemas/tlc/1.0.14/commands/M0104.json +141 -0
- data/schemas/tlc/1.0.14/commands/command_requests.json +8 -0
- data/schemas/tlc/1.0.14/commands/command_responses.json +8 -0
- data/schemas/tlc/1.0.14/commands/commands.json +335 -0
- data/schemas/tlc/1.0.14/defs/definitions.json +67 -0
- data/schemas/tlc/1.0.14/defs/guards.json +24 -0
- data/schemas/tlc/1.0.14/rsmp.json +74 -0
- data/schemas/tlc/1.0.14/statuses/S0001.json +91 -0
- data/schemas/tlc/1.0.14/statuses/S0002.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0003.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0004.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0005.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0006.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0007.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0008.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0009.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0010.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0011.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0012.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0013.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0014.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0015.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0016.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0017.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0018.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0019.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0020.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0021.json +37 -0
- data/schemas/tlc/1.0.14/statuses/S0022.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0023.json +37 -0
- data/schemas/tlc/1.0.14/statuses/S0024.json +37 -0
- data/schemas/tlc/1.0.14/statuses/S0025.json +162 -0
- data/schemas/tlc/1.0.14/statuses/S0026.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0027.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0028.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0029.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0091.json +57 -0
- data/schemas/tlc/1.0.14/statuses/S0092.json +57 -0
- data/schemas/tlc/1.0.14/statuses/S0095.json +36 -0
- data/schemas/tlc/1.0.14/statuses/S0096.json +126 -0
- data/schemas/tlc/1.0.14/statuses/S0201.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0202.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0203.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0204.json +198 -0
- data/schemas/tlc/1.0.14/statuses/S0205.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0206.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0207.json +54 -0
- data/schemas/tlc/1.0.14/statuses/S0208.json +198 -0
- data/schemas/tlc/1.0.14/statuses/statuses.json +675 -0
- data/schemas/tlc/1.0.14/sxl.yaml +1450 -0
- data/schemas/tlc/1.0.15/alarms/A0001.json +4 -0
- data/schemas/tlc/1.0.15/alarms/A0002.json +4 -0
- data/schemas/tlc/1.0.15/alarms/A0003.json +4 -0
- data/schemas/tlc/1.0.15/alarms/A0004.json +4 -0
- data/schemas/tlc/1.0.15/alarms/A0005.json +4 -0
- data/schemas/tlc/1.0.15/alarms/A0006.json +4 -0
- data/schemas/tlc/1.0.15/alarms/A0007.json +4 -0
- data/schemas/tlc/1.0.15/alarms/A0008.json +30 -0
- data/schemas/tlc/1.0.15/alarms/A0009.json +4 -0
- data/schemas/tlc/1.0.15/alarms/A0010.json +4 -0
- data/schemas/tlc/1.0.15/alarms/A0101.json +4 -0
- data/schemas/tlc/1.0.15/alarms/A0201.json +35 -0
- data/schemas/tlc/1.0.15/alarms/A0202.json +35 -0
- data/schemas/tlc/1.0.15/alarms/A0301.json +92 -0
- data/schemas/tlc/1.0.15/alarms/A0302.json +115 -0
- data/schemas/tlc/1.0.15/alarms/alarms.json +255 -0
- data/schemas/tlc/1.0.15/commands/M0001.json +92 -0
- data/schemas/tlc/1.0.15/commands/M0002.json +69 -0
- data/schemas/tlc/1.0.15/commands/M0003.json +69 -0
- data/schemas/tlc/1.0.15/commands/M0004.json +51 -0
- data/schemas/tlc/1.0.15/commands/M0005.json +69 -0
- data/schemas/tlc/1.0.15/commands/M0006.json +69 -0
- data/schemas/tlc/1.0.15/commands/M0007.json +51 -0
- data/schemas/tlc/1.0.15/commands/M0008.json +69 -0
- data/schemas/tlc/1.0.15/commands/M0010.json +51 -0
- data/schemas/tlc/1.0.15/commands/M0011.json +51 -0
- data/schemas/tlc/1.0.15/commands/M0012.json +51 -0
- data/schemas/tlc/1.0.15/commands/M0013.json +51 -0
- data/schemas/tlc/1.0.15/commands/M0014.json +69 -0
- data/schemas/tlc/1.0.15/commands/M0015.json +69 -0
- data/schemas/tlc/1.0.15/commands/M0016.json +51 -0
- data/schemas/tlc/1.0.15/commands/M0017.json +51 -0
- data/schemas/tlc/1.0.15/commands/M0018.json +69 -0
- data/schemas/tlc/1.0.15/commands/M0019.json +87 -0
- data/schemas/tlc/1.0.15/commands/M0020.json +87 -0
- data/schemas/tlc/1.0.15/commands/M0021.json +51 -0
- data/schemas/tlc/1.0.15/commands/M0103.json +72 -0
- data/schemas/tlc/1.0.15/commands/M0104.json +141 -0
- data/schemas/tlc/1.0.15/commands/command_requests.json +8 -0
- data/schemas/tlc/1.0.15/commands/command_responses.json +8 -0
- data/schemas/tlc/1.0.15/commands/commands.json +367 -0
- data/schemas/tlc/1.0.15/defs/definitions.json +67 -0
- data/schemas/tlc/1.0.15/defs/guards.json +24 -0
- data/schemas/tlc/1.0.15/rsmp.json +74 -0
- data/schemas/tlc/1.0.15/statuses/S0001.json +91 -0
- data/schemas/tlc/1.0.15/statuses/S0002.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0003.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0004.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0005.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0006.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0007.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0008.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0009.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0010.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0011.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0012.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0013.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0014.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0015.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0016.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0017.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0018.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0019.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0020.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0021.json +37 -0
- data/schemas/tlc/1.0.15/statuses/S0022.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0023.json +37 -0
- data/schemas/tlc/1.0.15/statuses/S0024.json +37 -0
- data/schemas/tlc/1.0.15/statuses/S0025.json +162 -0
- data/schemas/tlc/1.0.15/statuses/S0026.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0027.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0028.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0029.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0030.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0031.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0091.json +57 -0
- data/schemas/tlc/1.0.15/statuses/S0092.json +57 -0
- data/schemas/tlc/1.0.15/statuses/S0095.json +36 -0
- data/schemas/tlc/1.0.15/statuses/S0096.json +126 -0
- data/schemas/tlc/1.0.15/statuses/S0097.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0098.json +72 -0
- data/schemas/tlc/1.0.15/statuses/S0201.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0202.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0203.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0204.json +198 -0
- data/schemas/tlc/1.0.15/statuses/S0205.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0206.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0207.json +54 -0
- data/schemas/tlc/1.0.15/statuses/S0208.json +198 -0
- data/schemas/tlc/1.0.15/statuses/statuses.json +739 -0
- data/schemas/tlc/1.0.15/sxl.yaml +1589 -0
- data/schemas/tlc/1.0.7/alarms/A0001.json +4 -0
- data/schemas/tlc/1.0.7/alarms/A0002.json +4 -0
- data/schemas/tlc/1.0.7/alarms/A0003.json +4 -0
- data/schemas/tlc/1.0.7/alarms/A0004.json +4 -0
- data/schemas/tlc/1.0.7/alarms/A0005.json +4 -0
- data/schemas/tlc/1.0.7/alarms/A0006.json +4 -0
- data/schemas/tlc/1.0.7/alarms/A0007.json +4 -0
- data/schemas/tlc/1.0.7/alarms/A0008.json +30 -0
- data/schemas/tlc/1.0.7/alarms/A0009.json +4 -0
- data/schemas/tlc/1.0.7/alarms/A0101.json +4 -0
- data/schemas/tlc/1.0.7/alarms/A0201.json +35 -0
- data/schemas/tlc/1.0.7/alarms/A0202.json +35 -0
- data/schemas/tlc/1.0.7/alarms/A0301.json +92 -0
- data/schemas/tlc/1.0.7/alarms/A0302.json +115 -0
- data/schemas/tlc/1.0.7/alarms/alarms.json +239 -0
- data/schemas/tlc/1.0.7/commands/M0001.json +92 -0
- data/schemas/tlc/1.0.7/commands/M0002.json +69 -0
- data/schemas/tlc/1.0.7/commands/M0003.json +69 -0
- data/schemas/tlc/1.0.7/commands/M0004.json +51 -0
- data/schemas/tlc/1.0.7/commands/M0005.json +69 -0
- data/schemas/tlc/1.0.7/commands/M0006.json +69 -0
- data/schemas/tlc/1.0.7/commands/M0007.json +51 -0
- data/schemas/tlc/1.0.7/commands/M0008.json +69 -0
- data/schemas/tlc/1.0.7/commands/M0010.json +51 -0
- data/schemas/tlc/1.0.7/commands/M0011.json +51 -0
- data/schemas/tlc/1.0.7/commands/M0019.json +87 -0
- data/schemas/tlc/1.0.7/commands/M0103.json +72 -0
- data/schemas/tlc/1.0.7/commands/M0104.json +141 -0
- data/schemas/tlc/1.0.7/commands/command_requests.json +8 -0
- data/schemas/tlc/1.0.7/commands/command_responses.json +8 -0
- data/schemas/tlc/1.0.7/commands/commands.json +223 -0
- data/schemas/tlc/1.0.7/defs/definitions.json +67 -0
- data/schemas/tlc/1.0.7/defs/guards.json +24 -0
- data/schemas/tlc/1.0.7/rsmp.json +74 -0
- data/schemas/tlc/1.0.7/statuses/S0001.json +91 -0
- data/schemas/tlc/1.0.7/statuses/S0002.json +36 -0
- data/schemas/tlc/1.0.7/statuses/S0003.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0004.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0005.json +36 -0
- data/schemas/tlc/1.0.7/statuses/S0006.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0007.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0008.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0009.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0010.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0011.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0012.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0013.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0014.json +36 -0
- data/schemas/tlc/1.0.7/statuses/S0015.json +36 -0
- data/schemas/tlc/1.0.7/statuses/S0016.json +36 -0
- data/schemas/tlc/1.0.7/statuses/S0017.json +36 -0
- data/schemas/tlc/1.0.7/statuses/S0018.json +36 -0
- data/schemas/tlc/1.0.7/statuses/S0019.json +36 -0
- data/schemas/tlc/1.0.7/statuses/S0020.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0021.json +37 -0
- data/schemas/tlc/1.0.7/statuses/S0025.json +162 -0
- data/schemas/tlc/1.0.7/statuses/S0091.json +57 -0
- data/schemas/tlc/1.0.7/statuses/S0092.json +57 -0
- data/schemas/tlc/1.0.7/statuses/S0095.json +36 -0
- data/schemas/tlc/1.0.7/statuses/S0096.json +126 -0
- data/schemas/tlc/1.0.7/statuses/S0201.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0202.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0203.json +54 -0
- data/schemas/tlc/1.0.7/statuses/S0204.json +198 -0
- data/schemas/tlc/1.0.7/statuses/statuses.json +499 -0
- data/schemas/tlc/1.0.7/sxl.yaml +981 -0
- data/schemas/tlc/1.0.8/alarms/A0001.json +4 -0
- data/schemas/tlc/1.0.8/alarms/A0002.json +4 -0
- data/schemas/tlc/1.0.8/alarms/A0003.json +4 -0
- data/schemas/tlc/1.0.8/alarms/A0004.json +4 -0
- data/schemas/tlc/1.0.8/alarms/A0005.json +4 -0
- data/schemas/tlc/1.0.8/alarms/A0006.json +4 -0
- data/schemas/tlc/1.0.8/alarms/A0007.json +4 -0
- data/schemas/tlc/1.0.8/alarms/A0008.json +30 -0
- data/schemas/tlc/1.0.8/alarms/A0009.json +4 -0
- data/schemas/tlc/1.0.8/alarms/A0101.json +4 -0
- data/schemas/tlc/1.0.8/alarms/A0201.json +35 -0
- data/schemas/tlc/1.0.8/alarms/A0202.json +35 -0
- data/schemas/tlc/1.0.8/alarms/A0301.json +92 -0
- data/schemas/tlc/1.0.8/alarms/A0302.json +115 -0
- data/schemas/tlc/1.0.8/alarms/alarms.json +239 -0
- data/schemas/tlc/1.0.8/commands/M0001.json +92 -0
- data/schemas/tlc/1.0.8/commands/M0002.json +69 -0
- data/schemas/tlc/1.0.8/commands/M0003.json +69 -0
- data/schemas/tlc/1.0.8/commands/M0004.json +51 -0
- data/schemas/tlc/1.0.8/commands/M0005.json +69 -0
- data/schemas/tlc/1.0.8/commands/M0006.json +69 -0
- data/schemas/tlc/1.0.8/commands/M0007.json +51 -0
- data/schemas/tlc/1.0.8/commands/M0008.json +69 -0
- data/schemas/tlc/1.0.8/commands/M0010.json +51 -0
- data/schemas/tlc/1.0.8/commands/M0011.json +51 -0
- data/schemas/tlc/1.0.8/commands/M0012.json +51 -0
- data/schemas/tlc/1.0.8/commands/M0013.json +51 -0
- data/schemas/tlc/1.0.8/commands/M0019.json +87 -0
- data/schemas/tlc/1.0.8/commands/M0103.json +72 -0
- data/schemas/tlc/1.0.8/commands/M0104.json +141 -0
- data/schemas/tlc/1.0.8/commands/command_requests.json +8 -0
- data/schemas/tlc/1.0.8/commands/command_responses.json +8 -0
- data/schemas/tlc/1.0.8/commands/commands.json +255 -0
- data/schemas/tlc/1.0.8/defs/definitions.json +67 -0
- data/schemas/tlc/1.0.8/defs/guards.json +24 -0
- data/schemas/tlc/1.0.8/rsmp.json +74 -0
- data/schemas/tlc/1.0.8/statuses/S0001.json +91 -0
- data/schemas/tlc/1.0.8/statuses/S0002.json +36 -0
- data/schemas/tlc/1.0.8/statuses/S0003.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0004.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0005.json +36 -0
- data/schemas/tlc/1.0.8/statuses/S0006.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0007.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0008.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0009.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0010.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0011.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0012.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0013.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0014.json +36 -0
- data/schemas/tlc/1.0.8/statuses/S0015.json +36 -0
- data/schemas/tlc/1.0.8/statuses/S0016.json +36 -0
- data/schemas/tlc/1.0.8/statuses/S0017.json +36 -0
- data/schemas/tlc/1.0.8/statuses/S0018.json +36 -0
- data/schemas/tlc/1.0.8/statuses/S0019.json +36 -0
- data/schemas/tlc/1.0.8/statuses/S0020.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0021.json +37 -0
- data/schemas/tlc/1.0.8/statuses/S0025.json +181 -0
- data/schemas/tlc/1.0.8/statuses/S0091.json +57 -0
- data/schemas/tlc/1.0.8/statuses/S0092.json +57 -0
- data/schemas/tlc/1.0.8/statuses/S0095.json +36 -0
- data/schemas/tlc/1.0.8/statuses/S0096.json +126 -0
- data/schemas/tlc/1.0.8/statuses/S0201.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0202.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0203.json +54 -0
- data/schemas/tlc/1.0.8/statuses/S0204.json +198 -0
- data/schemas/tlc/1.0.8/statuses/statuses.json +483 -0
- data/schemas/tlc/1.0.8/sxl.yaml +1010 -0
- data/schemas/tlc/1.0.9/alarms/A0001.json +4 -0
- data/schemas/tlc/1.0.9/alarms/A0002.json +4 -0
- data/schemas/tlc/1.0.9/alarms/A0003.json +4 -0
- data/schemas/tlc/1.0.9/alarms/A0004.json +4 -0
- data/schemas/tlc/1.0.9/alarms/A0005.json +4 -0
- data/schemas/tlc/1.0.9/alarms/A0006.json +4 -0
- data/schemas/tlc/1.0.9/alarms/A0007.json +4 -0
- data/schemas/tlc/1.0.9/alarms/A0008.json +30 -0
- data/schemas/tlc/1.0.9/alarms/A0009.json +4 -0
- data/schemas/tlc/1.0.9/alarms/A0101.json +4 -0
- data/schemas/tlc/1.0.9/alarms/A0201.json +35 -0
- data/schemas/tlc/1.0.9/alarms/A0202.json +35 -0
- data/schemas/tlc/1.0.9/alarms/A0301.json +92 -0
- data/schemas/tlc/1.0.9/alarms/A0302.json +115 -0
- data/schemas/tlc/1.0.9/alarms/alarms.json +239 -0
- data/schemas/tlc/1.0.9/commands/M0001.json +92 -0
- data/schemas/tlc/1.0.9/commands/M0002.json +69 -0
- data/schemas/tlc/1.0.9/commands/M0003.json +69 -0
- data/schemas/tlc/1.0.9/commands/M0004.json +51 -0
- data/schemas/tlc/1.0.9/commands/M0005.json +69 -0
- data/schemas/tlc/1.0.9/commands/M0006.json +69 -0
- data/schemas/tlc/1.0.9/commands/M0007.json +51 -0
- data/schemas/tlc/1.0.9/commands/M0008.json +69 -0
- data/schemas/tlc/1.0.9/commands/M0010.json +51 -0
- data/schemas/tlc/1.0.9/commands/M0011.json +51 -0
- data/schemas/tlc/1.0.9/commands/M0012.json +51 -0
- data/schemas/tlc/1.0.9/commands/M0013.json +51 -0
- data/schemas/tlc/1.0.9/commands/M0019.json +87 -0
- data/schemas/tlc/1.0.9/commands/M0103.json +72 -0
- data/schemas/tlc/1.0.9/commands/M0104.json +141 -0
- data/schemas/tlc/1.0.9/commands/command_requests.json +8 -0
- data/schemas/tlc/1.0.9/commands/command_responses.json +8 -0
- data/schemas/tlc/1.0.9/commands/commands.json +255 -0
- data/schemas/tlc/1.0.9/defs/definitions.json +67 -0
- data/schemas/tlc/1.0.9/defs/guards.json +24 -0
- data/schemas/tlc/1.0.9/rsmp.json +74 -0
- data/schemas/tlc/1.0.9/statuses/S0001.json +91 -0
- data/schemas/tlc/1.0.9/statuses/S0002.json +36 -0
- data/schemas/tlc/1.0.9/statuses/S0003.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0004.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0005.json +36 -0
- data/schemas/tlc/1.0.9/statuses/S0006.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0007.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0008.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0009.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0010.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0011.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0012.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0013.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0014.json +36 -0
- data/schemas/tlc/1.0.9/statuses/S0015.json +36 -0
- data/schemas/tlc/1.0.9/statuses/S0016.json +36 -0
- data/schemas/tlc/1.0.9/statuses/S0017.json +36 -0
- data/schemas/tlc/1.0.9/statuses/S0018.json +36 -0
- data/schemas/tlc/1.0.9/statuses/S0019.json +36 -0
- data/schemas/tlc/1.0.9/statuses/S0020.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0021.json +37 -0
- data/schemas/tlc/1.0.9/statuses/S0025.json +181 -0
- data/schemas/tlc/1.0.9/statuses/S0091.json +57 -0
- data/schemas/tlc/1.0.9/statuses/S0092.json +57 -0
- data/schemas/tlc/1.0.9/statuses/S0095.json +36 -0
- data/schemas/tlc/1.0.9/statuses/S0096.json +126 -0
- data/schemas/tlc/1.0.9/statuses/S0201.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0202.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0203.json +54 -0
- data/schemas/tlc/1.0.9/statuses/S0204.json +198 -0
- data/schemas/tlc/1.0.9/statuses/statuses.json +483 -0
- data/schemas/tlc/1.0.9/sxl.yaml +1010 -0
- data/schemas/tlc/1.1.0/alarms/A0001.json +4 -0
- data/schemas/tlc/1.1.0/alarms/A0002.json +4 -0
- data/schemas/tlc/1.1.0/alarms/A0003.json +4 -0
- data/schemas/tlc/1.1.0/alarms/A0004.json +4 -0
- data/schemas/tlc/1.1.0/alarms/A0005.json +4 -0
- data/schemas/tlc/1.1.0/alarms/A0006.json +4 -0
- data/schemas/tlc/1.1.0/alarms/A0007.json +34 -0
- data/schemas/tlc/1.1.0/alarms/A0008.json +30 -0
- data/schemas/tlc/1.1.0/alarms/A0009.json +4 -0
- data/schemas/tlc/1.1.0/alarms/A0010.json +4 -0
- data/schemas/tlc/1.1.0/alarms/A0101.json +4 -0
- data/schemas/tlc/1.1.0/alarms/A0201.json +35 -0
- data/schemas/tlc/1.1.0/alarms/A0202.json +35 -0
- data/schemas/tlc/1.1.0/alarms/A0301.json +92 -0
- data/schemas/tlc/1.1.0/alarms/A0302.json +115 -0
- data/schemas/tlc/1.1.0/alarms/A0303.json +92 -0
- data/schemas/tlc/1.1.0/alarms/A0304.json +115 -0
- data/schemas/tlc/1.1.0/alarms/alarms.json +287 -0
- data/schemas/tlc/1.1.0/commands/M0001.json +92 -0
- data/schemas/tlc/1.1.0/commands/M0002.json +69 -0
- data/schemas/tlc/1.1.0/commands/M0003.json +69 -0
- data/schemas/tlc/1.1.0/commands/M0004.json +51 -0
- data/schemas/tlc/1.1.0/commands/M0005.json +69 -0
- data/schemas/tlc/1.1.0/commands/M0006.json +69 -0
- data/schemas/tlc/1.1.0/commands/M0007.json +51 -0
- data/schemas/tlc/1.1.0/commands/M0008.json +69 -0
- data/schemas/tlc/1.1.0/commands/M0010.json +51 -0
- data/schemas/tlc/1.1.0/commands/M0011.json +51 -0
- data/schemas/tlc/1.1.0/commands/M0012.json +51 -0
- data/schemas/tlc/1.1.0/commands/M0013.json +51 -0
- data/schemas/tlc/1.1.0/commands/M0014.json +69 -0
- data/schemas/tlc/1.1.0/commands/M0015.json +69 -0
- data/schemas/tlc/1.1.0/commands/M0016.json +51 -0
- data/schemas/tlc/1.1.0/commands/M0017.json +51 -0
- data/schemas/tlc/1.1.0/commands/M0018.json +69 -0
- data/schemas/tlc/1.1.0/commands/M0019.json +87 -0
- data/schemas/tlc/1.1.0/commands/M0020.json +87 -0
- data/schemas/tlc/1.1.0/commands/M0021.json +51 -0
- data/schemas/tlc/1.1.0/commands/M0022.json +249 -0
- data/schemas/tlc/1.1.0/commands/M0023.json +51 -0
- data/schemas/tlc/1.1.0/commands/M0103.json +72 -0
- data/schemas/tlc/1.1.0/commands/M0104.json +141 -0
- data/schemas/tlc/1.1.0/commands/command_requests.json +8 -0
- data/schemas/tlc/1.1.0/commands/command_responses.json +8 -0
- data/schemas/tlc/1.1.0/commands/commands.json +399 -0
- data/schemas/tlc/1.1.0/defs/definitions.json +67 -0
- data/schemas/tlc/1.1.0/defs/guards.json +24 -0
- data/schemas/tlc/1.1.0/rsmp.json +74 -0
- data/schemas/tlc/1.1.0/statuses/S0001.json +91 -0
- data/schemas/tlc/1.1.0/statuses/S0002.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0003.json +54 -0
- data/schemas/tlc/1.1.0/statuses/S0004.json +54 -0
- data/schemas/tlc/1.1.0/statuses/S0005.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0006.json +54 -0
- data/schemas/tlc/1.1.0/statuses/S0007.json +73 -0
- data/schemas/tlc/1.1.0/statuses/S0008.json +73 -0
- data/schemas/tlc/1.1.0/statuses/S0009.json +73 -0
- data/schemas/tlc/1.1.0/statuses/S0010.json +73 -0
- data/schemas/tlc/1.1.0/statuses/S0011.json +73 -0
- data/schemas/tlc/1.1.0/statuses/S0012.json +73 -0
- data/schemas/tlc/1.1.0/statuses/S0013.json +54 -0
- data/schemas/tlc/1.1.0/statuses/S0014.json +62 -0
- data/schemas/tlc/1.1.0/statuses/S0015.json +62 -0
- data/schemas/tlc/1.1.0/statuses/S0016.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0017.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0018.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0019.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0020.json +54 -0
- data/schemas/tlc/1.1.0/statuses/S0021.json +37 -0
- data/schemas/tlc/1.1.0/statuses/S0022.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0023.json +37 -0
- data/schemas/tlc/1.1.0/statuses/S0024.json +37 -0
- data/schemas/tlc/1.1.0/statuses/S0025.json +162 -0
- data/schemas/tlc/1.1.0/statuses/S0026.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0027.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0028.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0029.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0030.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0031.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0032.json +73 -0
- data/schemas/tlc/1.1.0/statuses/S0033.json +77 -0
- data/schemas/tlc/1.1.0/statuses/S0034.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0091.json +40 -0
- data/schemas/tlc/1.1.0/statuses/S0092.json +40 -0
- data/schemas/tlc/1.1.0/statuses/S0095.json +36 -0
- data/schemas/tlc/1.1.0/statuses/S0096.json +126 -0
- data/schemas/tlc/1.1.0/statuses/S0097.json +54 -0
- data/schemas/tlc/1.1.0/statuses/S0098.json +72 -0
- data/schemas/tlc/1.1.0/statuses/S0201.json +54 -0
- data/schemas/tlc/1.1.0/statuses/S0202.json +54 -0
- data/schemas/tlc/1.1.0/statuses/S0203.json +54 -0
- data/schemas/tlc/1.1.0/statuses/S0204.json +198 -0
- data/schemas/tlc/1.1.0/statuses/S0205.json +54 -0
- data/schemas/tlc/1.1.0/statuses/S0206.json +54 -0
- data/schemas/tlc/1.1.0/statuses/S0207.json +54 -0
- data/schemas/tlc/1.1.0/statuses/S0208.json +198 -0
- data/schemas/tlc/1.1.0/statuses/statuses.json +787 -0
- data/schemas/tlc/1.1.0/sxl.yaml +2106 -0
- data/schemas/tlc/1.2.0/alarms/A0001.json +4 -0
- data/schemas/tlc/1.2.0/alarms/A0002.json +4 -0
- data/schemas/tlc/1.2.0/alarms/A0003.json +4 -0
- data/schemas/tlc/1.2.0/alarms/A0004.json +4 -0
- data/schemas/tlc/1.2.0/alarms/A0005.json +4 -0
- data/schemas/tlc/1.2.0/alarms/A0006.json +4 -0
- data/schemas/tlc/1.2.0/alarms/A0007.json +34 -0
- data/schemas/tlc/1.2.0/alarms/A0008.json +30 -0
- data/schemas/tlc/1.2.0/alarms/A0009.json +4 -0
- data/schemas/tlc/1.2.0/alarms/A0010.json +4 -0
- data/schemas/tlc/1.2.0/alarms/A0101.json +4 -0
- data/schemas/tlc/1.2.0/alarms/A0201.json +35 -0
- data/schemas/tlc/1.2.0/alarms/A0202.json +35 -0
- data/schemas/tlc/1.2.0/alarms/A0301.json +92 -0
- data/schemas/tlc/1.2.0/alarms/A0302.json +115 -0
- data/schemas/tlc/1.2.0/alarms/A0303.json +92 -0
- data/schemas/tlc/1.2.0/alarms/A0304.json +115 -0
- data/schemas/tlc/1.2.0/alarms/alarms.json +287 -0
- data/schemas/tlc/1.2.0/commands/M0001.json +92 -0
- data/schemas/tlc/1.2.0/commands/M0002.json +69 -0
- data/schemas/tlc/1.2.0/commands/M0003.json +69 -0
- data/schemas/tlc/1.2.0/commands/M0004.json +51 -0
- data/schemas/tlc/1.2.0/commands/M0005.json +69 -0
- data/schemas/tlc/1.2.0/commands/M0006.json +69 -0
- data/schemas/tlc/1.2.0/commands/M0007.json +51 -0
- data/schemas/tlc/1.2.0/commands/M0008.json +69 -0
- data/schemas/tlc/1.2.0/commands/M0010.json +51 -0
- data/schemas/tlc/1.2.0/commands/M0011.json +51 -0
- data/schemas/tlc/1.2.0/commands/M0012.json +51 -0
- data/schemas/tlc/1.2.0/commands/M0013.json +51 -0
- data/schemas/tlc/1.2.0/commands/M0014.json +69 -0
- data/schemas/tlc/1.2.0/commands/M0015.json +69 -0
- data/schemas/tlc/1.2.0/commands/M0016.json +51 -0
- data/schemas/tlc/1.2.0/commands/M0017.json +51 -0
- data/schemas/tlc/1.2.0/commands/M0018.json +69 -0
- data/schemas/tlc/1.2.0/commands/M0019.json +87 -0
- data/schemas/tlc/1.2.0/commands/M0020.json +87 -0
- data/schemas/tlc/1.2.0/commands/M0021.json +51 -0
- data/schemas/tlc/1.2.0/commands/M0022.json +249 -0
- data/schemas/tlc/1.2.0/commands/M0023.json +51 -0
- data/schemas/tlc/1.2.0/commands/M0103.json +72 -0
- data/schemas/tlc/1.2.0/commands/M0104.json +141 -0
- data/schemas/tlc/1.2.0/commands/command_requests.json +8 -0
- data/schemas/tlc/1.2.0/commands/command_responses.json +8 -0
- data/schemas/tlc/1.2.0/commands/commands.json +399 -0
- data/schemas/tlc/1.2.0/defs/definitions.json +67 -0
- data/schemas/tlc/1.2.0/defs/guards.json +24 -0
- data/schemas/tlc/1.2.0/rsmp.json +74 -0
- data/schemas/tlc/1.2.0/statuses/S0001.json +91 -0
- data/schemas/tlc/1.2.0/statuses/S0002.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0003.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0004.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0005.json +72 -0
- data/schemas/tlc/1.2.0/statuses/S0006.json +54 -0
- data/schemas/tlc/1.2.0/statuses/S0007.json +73 -0
- data/schemas/tlc/1.2.0/statuses/S0008.json +73 -0
- data/schemas/tlc/1.2.0/statuses/S0009.json +73 -0
- data/schemas/tlc/1.2.0/statuses/S0010.json +73 -0
- data/schemas/tlc/1.2.0/statuses/S0011.json +73 -0
- data/schemas/tlc/1.2.0/statuses/S0012.json +73 -0
- data/schemas/tlc/1.2.0/statuses/S0013.json +54 -0
- data/schemas/tlc/1.2.0/statuses/S0014.json +62 -0
- data/schemas/tlc/1.2.0/statuses/S0015.json +62 -0
- data/schemas/tlc/1.2.0/statuses/S0016.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0017.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0018.json +61 -0
- data/schemas/tlc/1.2.0/statuses/S0019.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0020.json +54 -0
- data/schemas/tlc/1.2.0/statuses/S0021.json +37 -0
- data/schemas/tlc/1.2.0/statuses/S0022.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0023.json +37 -0
- data/schemas/tlc/1.2.0/statuses/S0024.json +37 -0
- data/schemas/tlc/1.2.0/statuses/S0025.json +162 -0
- data/schemas/tlc/1.2.0/statuses/S0026.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0027.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0028.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0029.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0030.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0031.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0032.json +73 -0
- data/schemas/tlc/1.2.0/statuses/S0033.json +77 -0
- data/schemas/tlc/1.2.0/statuses/S0034.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0035.json +49 -0
- data/schemas/tlc/1.2.0/statuses/S0091.json +40 -0
- data/schemas/tlc/1.2.0/statuses/S0092.json +40 -0
- data/schemas/tlc/1.2.0/statuses/S0095.json +36 -0
- data/schemas/tlc/1.2.0/statuses/S0096.json +126 -0
- data/schemas/tlc/1.2.0/statuses/S0097.json +54 -0
- data/schemas/tlc/1.2.0/statuses/S0098.json +72 -0
- data/schemas/tlc/1.2.0/statuses/S0201.json +54 -0
- data/schemas/tlc/1.2.0/statuses/S0202.json +54 -0
- data/schemas/tlc/1.2.0/statuses/S0203.json +54 -0
- data/schemas/tlc/1.2.0/statuses/S0204.json +198 -0
- data/schemas/tlc/1.2.0/statuses/S0205.json +54 -0
- data/schemas/tlc/1.2.0/statuses/S0206.json +54 -0
- data/schemas/tlc/1.2.0/statuses/S0207.json +54 -0
- data/schemas/tlc/1.2.0/statuses/S0208.json +198 -0
- data/schemas/tlc/1.2.0/statuses/statuses.json +787 -0
- data/schemas/tlc/1.2.0/sxl.yaml +2082 -0
- data/schemas/tlc/1.2.1/alarms/A0001.json +4 -0
- data/schemas/tlc/1.2.1/alarms/A0002.json +4 -0
- data/schemas/tlc/1.2.1/alarms/A0003.json +4 -0
- data/schemas/tlc/1.2.1/alarms/A0004.json +4 -0
- data/schemas/tlc/1.2.1/alarms/A0005.json +4 -0
- data/schemas/tlc/1.2.1/alarms/A0006.json +4 -0
- data/schemas/tlc/1.2.1/alarms/A0007.json +34 -0
- data/schemas/tlc/1.2.1/alarms/A0008.json +30 -0
- data/schemas/tlc/1.2.1/alarms/A0009.json +4 -0
- data/schemas/tlc/1.2.1/alarms/A0010.json +4 -0
- data/schemas/tlc/1.2.1/alarms/A0101.json +4 -0
- data/schemas/tlc/1.2.1/alarms/A0201.json +35 -0
- data/schemas/tlc/1.2.1/alarms/A0202.json +35 -0
- data/schemas/tlc/1.2.1/alarms/A0301.json +92 -0
- data/schemas/tlc/1.2.1/alarms/A0302.json +115 -0
- data/schemas/tlc/1.2.1/alarms/A0303.json +92 -0
- data/schemas/tlc/1.2.1/alarms/A0304.json +115 -0
- data/schemas/tlc/1.2.1/alarms/alarms.json +287 -0
- data/schemas/tlc/1.2.1/commands/M0001.json +92 -0
- data/schemas/tlc/1.2.1/commands/M0002.json +69 -0
- data/schemas/tlc/1.2.1/commands/M0003.json +69 -0
- data/schemas/tlc/1.2.1/commands/M0004.json +51 -0
- data/schemas/tlc/1.2.1/commands/M0005.json +69 -0
- data/schemas/tlc/1.2.1/commands/M0006.json +69 -0
- data/schemas/tlc/1.2.1/commands/M0007.json +51 -0
- data/schemas/tlc/1.2.1/commands/M0008.json +69 -0
- data/schemas/tlc/1.2.1/commands/M0010.json +51 -0
- data/schemas/tlc/1.2.1/commands/M0011.json +51 -0
- data/schemas/tlc/1.2.1/commands/M0012.json +51 -0
- data/schemas/tlc/1.2.1/commands/M0013.json +51 -0
- data/schemas/tlc/1.2.1/commands/M0014.json +69 -0
- data/schemas/tlc/1.2.1/commands/M0015.json +69 -0
- data/schemas/tlc/1.2.1/commands/M0016.json +51 -0
- data/schemas/tlc/1.2.1/commands/M0017.json +51 -0
- data/schemas/tlc/1.2.1/commands/M0018.json +69 -0
- data/schemas/tlc/1.2.1/commands/M0019.json +87 -0
- data/schemas/tlc/1.2.1/commands/M0020.json +87 -0
- data/schemas/tlc/1.2.1/commands/M0021.json +51 -0
- data/schemas/tlc/1.2.1/commands/M0022.json +249 -0
- data/schemas/tlc/1.2.1/commands/M0023.json +51 -0
- data/schemas/tlc/1.2.1/commands/M0103.json +72 -0
- data/schemas/tlc/1.2.1/commands/M0104.json +141 -0
- data/schemas/tlc/1.2.1/commands/command_requests.json +8 -0
- data/schemas/tlc/1.2.1/commands/command_responses.json +8 -0
- data/schemas/tlc/1.2.1/commands/commands.json +399 -0
- data/schemas/tlc/1.2.1/defs/definitions.json +67 -0
- data/schemas/tlc/1.2.1/defs/guards.json +24 -0
- data/schemas/tlc/1.2.1/rsmp.json +74 -0
- data/schemas/tlc/1.2.1/statuses/S0001.json +91 -0
- data/schemas/tlc/1.2.1/statuses/S0002.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0003.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0004.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0005.json +72 -0
- data/schemas/tlc/1.2.1/statuses/S0006.json +54 -0
- data/schemas/tlc/1.2.1/statuses/S0007.json +73 -0
- data/schemas/tlc/1.2.1/statuses/S0008.json +73 -0
- data/schemas/tlc/1.2.1/statuses/S0009.json +73 -0
- data/schemas/tlc/1.2.1/statuses/S0010.json +73 -0
- data/schemas/tlc/1.2.1/statuses/S0011.json +73 -0
- data/schemas/tlc/1.2.1/statuses/S0012.json +73 -0
- data/schemas/tlc/1.2.1/statuses/S0013.json +54 -0
- data/schemas/tlc/1.2.1/statuses/S0014.json +62 -0
- data/schemas/tlc/1.2.1/statuses/S0015.json +62 -0
- data/schemas/tlc/1.2.1/statuses/S0016.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0017.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0018.json +61 -0
- data/schemas/tlc/1.2.1/statuses/S0019.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0020.json +54 -0
- data/schemas/tlc/1.2.1/statuses/S0021.json +37 -0
- data/schemas/tlc/1.2.1/statuses/S0022.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0023.json +37 -0
- data/schemas/tlc/1.2.1/statuses/S0024.json +37 -0
- data/schemas/tlc/1.2.1/statuses/S0025.json +162 -0
- data/schemas/tlc/1.2.1/statuses/S0026.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0027.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0028.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0029.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0030.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0031.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0032.json +73 -0
- data/schemas/tlc/1.2.1/statuses/S0033.json +77 -0
- data/schemas/tlc/1.2.1/statuses/S0034.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0035.json +49 -0
- data/schemas/tlc/1.2.1/statuses/S0091.json +40 -0
- data/schemas/tlc/1.2.1/statuses/S0092.json +40 -0
- data/schemas/tlc/1.2.1/statuses/S0095.json +36 -0
- data/schemas/tlc/1.2.1/statuses/S0096.json +126 -0
- data/schemas/tlc/1.2.1/statuses/S0097.json +54 -0
- data/schemas/tlc/1.2.1/statuses/S0098.json +72 -0
- data/schemas/tlc/1.2.1/statuses/S0201.json +54 -0
- data/schemas/tlc/1.2.1/statuses/S0202.json +54 -0
- data/schemas/tlc/1.2.1/statuses/S0203.json +54 -0
- data/schemas/tlc/1.2.1/statuses/S0204.json +198 -0
- data/schemas/tlc/1.2.1/statuses/S0205.json +54 -0
- data/schemas/tlc/1.2.1/statuses/S0206.json +54 -0
- data/schemas/tlc/1.2.1/statuses/S0207.json +54 -0
- data/schemas/tlc/1.2.1/statuses/S0208.json +198 -0
- data/schemas/tlc/1.2.1/statuses/statuses.json +787 -0
- data/schemas/tlc/1.2.1/sxl.yaml +2109 -0
- data/schemas/tlc/defs/guards.json +24 -0
- metadata +1000 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4388b553588ba4ad894f3daac620992cc351b4c2d061132a37690f77e72971ad
|
|
4
|
+
data.tar.gz: 0dfd1b5a8a83ab75810a8a822e6507dca3728b53e99462bf69fe96f924395fac
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 513d73bbb2e42366fbb0c598f92ef97745379769ecc2ba7aa79fda31e94fc3c34f39e81daa707e687159c7d644034057671b14ab5941da0615b3884fa95e53ac
|
|
7
|
+
data.tar.gz: 11cb9674aea89d3c3f693707ecce22d65632a0391ef635cb6ef0c1ea4226445c747c117e34ef0e28eb056618cd262f8f8d51f75941e9107d8fb8f17633453156
|
data/.rubocop.yml
CHANGED
data/CHANGELOG.md
CHANGED
|
@@ -652,4 +652,10 @@ Initial release.
|
|
|
652
652
|
|
|
653
653
|
## 0.40.1
|
|
654
654
|
- fix config normalization
|
|
655
|
-
- improve config schema validation
|
|
655
|
+
- improve config schema validation
|
|
656
|
+
|
|
657
|
+
## 0.43.0
|
|
658
|
+
- rsmp_schema folded into this gem
|
|
659
|
+
- all schema files vendored into this repo, with rake task to update them
|
|
660
|
+
- moved `rake regenerate` to `rsmp schema generate` CLI
|
|
661
|
+
|
data/Gemfile.lock
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
rsmp (0.
|
|
4
|
+
rsmp (0.43.0)
|
|
5
5
|
async (~> 2.32)
|
|
6
6
|
colorize (~> 1.1)
|
|
7
7
|
io-endpoint (~> 0.15)
|
|
8
8
|
io-stream (~> 0.10)
|
|
9
|
+
json_schemer (~> 2.5)
|
|
9
10
|
logger (~> 1.6)
|
|
10
11
|
ostruct (~> 0.6)
|
|
11
|
-
|
|
12
|
+
thor (~> 1.5)
|
|
12
13
|
|
|
13
14
|
GEM
|
|
14
15
|
remote: https://rubygems.org/
|
|
@@ -95,9 +96,6 @@ GEM
|
|
|
95
96
|
rainbow (3.1.1)
|
|
96
97
|
rake (13.4.2)
|
|
97
98
|
regexp_parser (2.12.0)
|
|
98
|
-
rsmp_schema (0.10.1)
|
|
99
|
-
json_schemer (~> 2.5)
|
|
100
|
-
thor (~> 1.5)
|
|
101
99
|
rspec-expectations (3.13.5)
|
|
102
100
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
103
101
|
rspec-support (~> 3.13.0)
|
data/Rakefile
CHANGED
|
@@ -4,4 +4,40 @@ task :test do
|
|
|
4
4
|
sh 'bundle exec sus'
|
|
5
5
|
end
|
|
6
6
|
|
|
7
|
+
CORE_VERSIONS = %w[3.1.2 3.1.3 3.1.4 3.1.5 3.2.0 3.2.1 3.2.2].freeze
|
|
8
|
+
TLC_VERSIONS = %w[1.0.7 1.0.8 1.0.9 1.0.10 1.0.13 1.0.14 1.0.15 1.1.0 1.2.0 1.2.1].freeze
|
|
9
|
+
|
|
10
|
+
# Update vendored schemas from source repos.
|
|
11
|
+
# Usage: rake schemas:update[/path/to/rsmp_core,/path/to/rsmp_sxl_traffic_lights]
|
|
12
|
+
# Defaults to sibling directories ../rsmp_core and ../rsmp_sxl_traffic_lights.
|
|
13
|
+
#
|
|
14
|
+
# NOTE: The source repos must have the version branches up to date locally.
|
|
15
|
+
# If the remote has been updated, fetch first:
|
|
16
|
+
# git -C ../rsmp_core fetch
|
|
17
|
+
# git -C ../rsmp_sxl_traffic_lights fetch
|
|
18
|
+
namespace :schemas do
|
|
19
|
+
task :update, [:core_path, :tlc_path] do |_t, args|
|
|
20
|
+
core_path = File.expand_path(args[:core_path] || '../rsmp_core')
|
|
21
|
+
tlc_path = File.expand_path(args[:tlc_path] || '../rsmp_sxl_traffic_lights')
|
|
22
|
+
|
|
23
|
+
puts "Updating core schemas from #{core_path}:"
|
|
24
|
+
CORE_VERSIONS.each do |ver|
|
|
25
|
+
target = "schemas/core/#{ver}"
|
|
26
|
+
puts " #{ver}"
|
|
27
|
+
FileUtils.rm_rf(target)
|
|
28
|
+
FileUtils.mkdir_p(target)
|
|
29
|
+
sh "git -C #{core_path} archive refs/heads/#{ver} -- schema/ | tar x --strip-components=1 -C #{target}"
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
puts "Updating TLC schemas from #{tlc_path}:"
|
|
33
|
+
TLC_VERSIONS.each do |ver|
|
|
34
|
+
target = "schemas/tlc/#{ver}"
|
|
35
|
+
puts " #{ver}"
|
|
36
|
+
FileUtils.rm_rf(target)
|
|
37
|
+
FileUtils.mkdir_p(target)
|
|
38
|
+
sh "git -C #{tlc_path} archive refs/heads/#{ver} -- schema/ | tar x --strip-components=1 -C #{target}"
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
|
|
7
43
|
task default: :test
|
data/lib/rsmp/cli.rb
CHANGED
|
@@ -2,6 +2,24 @@ require 'thor'
|
|
|
2
2
|
require_relative '../rsmp'
|
|
3
3
|
|
|
4
4
|
module RSMP
|
|
5
|
+
# CLI subcommands for SXL schema operations.
|
|
6
|
+
class SchemaCLI < Thor
|
|
7
|
+
namespace :schema
|
|
8
|
+
desc 'generate', 'Generate JSON Schema files from sxl.yaml'
|
|
9
|
+
method_option :in, type: :string, aliases: '-i', banner: 'Path to sxl.yaml input file', default: 'sxl.yaml'
|
|
10
|
+
method_option :out, type: :string, aliases: '-o', banner: 'Path to output directory', default: '.'
|
|
11
|
+
def generate
|
|
12
|
+
input = options[:in]
|
|
13
|
+
output = options[:out]
|
|
14
|
+
unless File.exist?(input)
|
|
15
|
+
puts "Error: Input file #{input} not found"
|
|
16
|
+
exit 1
|
|
17
|
+
end
|
|
18
|
+
sxl = RSMP::Convert::Import::YAML.read(input)
|
|
19
|
+
RSMP::Convert::Export::JSONSchema.write(sxl, output)
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
|
|
5
23
|
# CLI commands for running RSMP site and supervisor.
|
|
6
24
|
class CLI < Thor
|
|
7
25
|
desc 'version', 'Show version'
|
|
@@ -47,14 +65,7 @@ module RSMP
|
|
|
47
65
|
# ctrl-c
|
|
48
66
|
end
|
|
49
67
|
|
|
50
|
-
|
|
51
|
-
method_option :in, type: :string, aliases: '-i', banner: 'Path to YAML input file'
|
|
52
|
-
method_option :out, type: :string, aliases: '-o', banner: 'Path to JSON Schema output file'
|
|
53
|
-
def convert
|
|
54
|
-
validate_convert_options
|
|
55
|
-
validate_input_file_exists
|
|
56
|
-
perform_conversion
|
|
57
|
-
end
|
|
68
|
+
register SchemaCLI, 'schema', 'schema COMMAND', 'SXL schema commands'
|
|
58
69
|
|
|
59
70
|
no_commands do
|
|
60
71
|
def load_site_configuration
|
|
@@ -187,30 +198,6 @@ module RSMP
|
|
|
187
198
|
end
|
|
188
199
|
end
|
|
189
200
|
|
|
190
|
-
def validate_convert_options
|
|
191
|
-
unless options[:in]
|
|
192
|
-
puts 'Error: Input option missing'
|
|
193
|
-
exit
|
|
194
|
-
end
|
|
195
|
-
|
|
196
|
-
return if options[:out]
|
|
197
|
-
|
|
198
|
-
puts 'Error: Output option missing'
|
|
199
|
-
exit
|
|
200
|
-
end
|
|
201
|
-
|
|
202
|
-
def validate_input_file_exists
|
|
203
|
-
return if File.exist? options[:in]
|
|
204
|
-
|
|
205
|
-
puts "Error: Input path file #{options[:in]} not found"
|
|
206
|
-
exit
|
|
207
|
-
end
|
|
208
|
-
|
|
209
|
-
def perform_conversion
|
|
210
|
-
sxl = RSMP::Convert::Import::YAML.read options[:in]
|
|
211
|
-
RSMP::Convert::Export::JSONSchema.write sxl, options[:out]
|
|
212
|
-
end
|
|
213
|
-
|
|
214
201
|
# avoid Thor returnin 0 on failures, see
|
|
215
202
|
# https://github.com/coinbase/salus/pull/380/files
|
|
216
203
|
def self.exit_on_failure?
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
module RSMP
|
|
2
|
+
module Convert
|
|
3
|
+
module Export
|
|
4
|
+
# Converts SXL definitions to JSON Schema files.
|
|
5
|
+
module JSONSchema
|
|
6
|
+
# convert yaml alarm/status/command item to corresponding json schema
|
|
7
|
+
def self.build_item(item, property_key: 'v')
|
|
8
|
+
arguments = item['arguments']
|
|
9
|
+
return simple_item(item) unless arguments
|
|
10
|
+
|
|
11
|
+
property_key == 's' ? build_status_item(item, arguments) : build_default_item(item, arguments, property_key)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def self.simple_item(item)
|
|
15
|
+
{
|
|
16
|
+
'$schema' => 'https://json-schema.org/draft/2020-12/schema',
|
|
17
|
+
'description' => item['description']
|
|
18
|
+
}
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def self.build_status_item(item, arguments)
|
|
22
|
+
branches = arguments.map do |key, argument|
|
|
23
|
+
{
|
|
24
|
+
'if' => { 'properties' => { 'n' => { 'const' => key } } },
|
|
25
|
+
'then' => { 'properties' => { 's' => build_value(argument) } }
|
|
26
|
+
}
|
|
27
|
+
end
|
|
28
|
+
{
|
|
29
|
+
'$schema' => 'https://json-schema.org/draft/2020-12/schema',
|
|
30
|
+
'description' => item['description'],
|
|
31
|
+
'properties' => { 'n' => { 'enum' => arguments.keys.sort } },
|
|
32
|
+
'if' => { '$ref' => '../defs/guards.json#/$defs/q_unknown_or_undefined' },
|
|
33
|
+
'then' => {},
|
|
34
|
+
'else' => { 'allOf' => branches }
|
|
35
|
+
}
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def self.build_default_item(item, arguments, property_key)
|
|
39
|
+
rules = arguments.map do |key, argument|
|
|
40
|
+
{
|
|
41
|
+
'if' => { 'properties' => { 'n' => { 'const' => key } } },
|
|
42
|
+
'then' => { 'properties' => { property_key => build_value(argument) } }
|
|
43
|
+
}
|
|
44
|
+
end
|
|
45
|
+
{
|
|
46
|
+
'$schema' => 'https://json-schema.org/draft/2020-12/schema',
|
|
47
|
+
'description' => item['description'],
|
|
48
|
+
'properties' => { 'n' => { 'enum' => arguments.keys.sort } },
|
|
49
|
+
'allOf' => rules
|
|
50
|
+
}
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
module RSMP
|
|
2
|
+
module Convert
|
|
3
|
+
module Export
|
|
4
|
+
# Converts SXL definitions to JSON Schema files.
|
|
5
|
+
module JSONSchema
|
|
6
|
+
GUARDS_JSON = {
|
|
7
|
+
'$schema' => 'https://json-schema.org/draft/2020-12/schema',
|
|
8
|
+
'$defs' => {
|
|
9
|
+
'q_unknown_or_undefined' => {
|
|
10
|
+
'allOf' => [
|
|
11
|
+
{ 'required' => ['q'] },
|
|
12
|
+
{ 'properties' => { 'q' => { 'enum' => %w[undefined unknown] } } }
|
|
13
|
+
]
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}.freeze
|
|
17
|
+
|
|
18
|
+
# convert alarms to json schema
|
|
19
|
+
def self.output_alarms(out, items)
|
|
20
|
+
list = items.keys.sort.map do |key|
|
|
21
|
+
{
|
|
22
|
+
'if' => { 'required' => ['aCId'], 'properties' => { 'aCId' => { 'const' => key } } },
|
|
23
|
+
'then' => { '$ref' => "#{key}.json" }
|
|
24
|
+
}
|
|
25
|
+
end
|
|
26
|
+
json = {
|
|
27
|
+
'$schema' => 'https://json-schema.org/draft/2020-12/schema',
|
|
28
|
+
'properties' => {
|
|
29
|
+
'aCId' => { 'enum' => items.keys.sort },
|
|
30
|
+
'rvs' => { 'items' => { 'allOf' => list } }
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
out['alarms/alarms.json'] = output_json json
|
|
34
|
+
items.each_pair { |key, item| output_alarm out, key, item }
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
# convert an alarm to json schema
|
|
38
|
+
def self.output_alarm(out, key, item)
|
|
39
|
+
json = build_item item
|
|
40
|
+
out["alarms/#{key}.json"] = output_json json
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
# convert statuses to json schema
|
|
44
|
+
def self.output_statuses(out, items)
|
|
45
|
+
out['defs/guards.json'] ||= output_json(GUARDS_JSON)
|
|
46
|
+
|
|
47
|
+
list = [{ 'properties' => { 'sCI' => { 'enum' => items.keys.sort } } }]
|
|
48
|
+
items.keys.sort.each do |key|
|
|
49
|
+
list << {
|
|
50
|
+
'if' => { 'required' => ['sCI'], 'properties' => { 'sCI' => { 'const' => key } } },
|
|
51
|
+
'then' => { '$ref' => "#{key}.json" }
|
|
52
|
+
}
|
|
53
|
+
end
|
|
54
|
+
json = {
|
|
55
|
+
'$schema' => 'https://json-schema.org/draft/2020-12/schema',
|
|
56
|
+
'properties' => { 'sS' => { 'items' => { 'allOf' => list } } }
|
|
57
|
+
}
|
|
58
|
+
out['statuses/statuses.json'] = output_json json
|
|
59
|
+
items.each_pair { |key, item| output_status out, key, item }
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# convert a status to json schema
|
|
63
|
+
def self.output_status(out, key, item)
|
|
64
|
+
json = build_item item, property_key: 's'
|
|
65
|
+
out["statuses/#{key}.json"] = output_json json
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
# convert commands to json schema
|
|
69
|
+
def self.output_commands(out, items)
|
|
70
|
+
list = [{ 'properties' => { 'cCI' => { 'enum' => items.keys.sort } } }]
|
|
71
|
+
items.keys.sort.each do |key|
|
|
72
|
+
list << {
|
|
73
|
+
'if' => { 'required' => ['cCI'], 'properties' => { 'cCI' => { 'const' => key } } },
|
|
74
|
+
'then' => { '$ref' => "#{key}.json" }
|
|
75
|
+
}
|
|
76
|
+
end
|
|
77
|
+
json = {
|
|
78
|
+
'$schema' => 'https://json-schema.org/draft/2020-12/schema',
|
|
79
|
+
'items' => { 'allOf' => list }
|
|
80
|
+
}
|
|
81
|
+
out['commands/commands.json'] = output_json json
|
|
82
|
+
|
|
83
|
+
json = {
|
|
84
|
+
'$schema' => 'https://json-schema.org/draft/2020-12/schema',
|
|
85
|
+
'properties' => { 'arg' => { '$ref' => 'commands.json' } }
|
|
86
|
+
}
|
|
87
|
+
out['commands/command_requests.json'] = output_json json
|
|
88
|
+
|
|
89
|
+
json = {
|
|
90
|
+
'$schema' => 'https://json-schema.org/draft/2020-12/schema',
|
|
91
|
+
'properties' => { 'rvs' => { '$ref' => 'commands.json' } }
|
|
92
|
+
}
|
|
93
|
+
out['commands/command_responses.json'] = output_json json
|
|
94
|
+
|
|
95
|
+
items.each_pair { |key, item| output_command out, key, item }
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
# convert a command to json schema
|
|
99
|
+
def self.output_command(out, key, item)
|
|
100
|
+
json = build_item item
|
|
101
|
+
json['properties'] ||= {}
|
|
102
|
+
json['properties']['cO'] = { 'const' => item['command'] }
|
|
103
|
+
out["commands/#{key}.json"] = output_json json
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
# output the json schema root
|
|
107
|
+
def self.output_root(out, meta)
|
|
108
|
+
json = {
|
|
109
|
+
'$schema' => 'https://json-schema.org/draft/2020-12/schema',
|
|
110
|
+
'name' => meta['name'],
|
|
111
|
+
'description' => meta['description'],
|
|
112
|
+
'version' => meta['version'],
|
|
113
|
+
'allOf' => root_type_rules
|
|
114
|
+
}
|
|
115
|
+
out['rsmp.json'] = output_json json
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
def self.root_type_rules
|
|
119
|
+
[
|
|
120
|
+
{
|
|
121
|
+
'if' => { 'required' => ['type'], 'properties' => { 'type' => { 'const' => 'CommandRequest' } } },
|
|
122
|
+
'then' => { '$ref' => 'commands/command_requests.json' }
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
'if' => { 'required' => ['type'], 'properties' => { 'type' => { 'const' => 'CommandResponse' } } },
|
|
126
|
+
'then' => { '$ref' => 'commands/command_responses.json' }
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
'if' => {
|
|
130
|
+
'required' => ['type'],
|
|
131
|
+
'properties' => {
|
|
132
|
+
'type' => { 'enum' => %w[StatusRequest StatusResponse StatusSubscribe StatusUnsubscribe
|
|
133
|
+
StatusUpdate] }
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
'then' => { '$ref' => 'statuses/statuses.json' }
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
'if' => { 'required' => ['type'], 'properties' => { 'type' => { 'const' => 'Alarm' } } },
|
|
140
|
+
'then' => { '$ref' => 'alarms/alarms.json' }
|
|
141
|
+
}
|
|
142
|
+
]
|
|
143
|
+
end
|
|
144
|
+
end
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
end
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
module RSMP
|
|
2
|
+
module Convert
|
|
3
|
+
module Export
|
|
4
|
+
# Converts SXL definitions to JSON Schema files.
|
|
5
|
+
module JSONSchema
|
|
6
|
+
# convert a yaml item to json schema
|
|
7
|
+
def self.build_value(item)
|
|
8
|
+
out = {}
|
|
9
|
+
out['description'] = item['description'] if item['description']
|
|
10
|
+
if item['type'] =~ /_list$/
|
|
11
|
+
handle_string_list item, out
|
|
12
|
+
else
|
|
13
|
+
handle_types item, out
|
|
14
|
+
handle_enum item, out
|
|
15
|
+
handle_pattern item, out
|
|
16
|
+
end
|
|
17
|
+
wrap_refs out
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
# convert an item which is not a string-list, to json schema
|
|
21
|
+
def self.handle_types(item, out)
|
|
22
|
+
case item['type']
|
|
23
|
+
when 'boolean'
|
|
24
|
+
out['$ref'] = '../defs/definitions.json#/boolean'
|
|
25
|
+
when 'timestamp'
|
|
26
|
+
out['$ref'] = '../defs/definitions.json#/timestamp'
|
|
27
|
+
when 'integer', 'ordinal', 'unit', 'scale', 'long'
|
|
28
|
+
out['$ref'] = '../defs/definitions.json#/integer'
|
|
29
|
+
when 'array' # a json array
|
|
30
|
+
build_json_array item['items'], out
|
|
31
|
+
else # string, base64, and any unknown types
|
|
32
|
+
out['type'] = 'string'
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
# convert an yaml item with type: array to json schema
|
|
37
|
+
def self.build_json_array(item, out)
|
|
38
|
+
required = item.reject { |_k, v| v['optional'] == true }.keys.sort
|
|
39
|
+
out.merge!({
|
|
40
|
+
'type' => 'array',
|
|
41
|
+
'items' => {
|
|
42
|
+
'type' => 'object',
|
|
43
|
+
'required' => required,
|
|
44
|
+
'unevaluatedProperties' => false
|
|
45
|
+
}
|
|
46
|
+
})
|
|
47
|
+
out['items']['properties'] = {}
|
|
48
|
+
item.each_pair do |key, v|
|
|
49
|
+
out['items']['properties'][key] = build_value(v)
|
|
50
|
+
end
|
|
51
|
+
out
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
# JSON Schema 2020-12 allows combining $ref with other properties directly
|
|
55
|
+
def self.wrap_refs(out)
|
|
56
|
+
out
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# convert a yaml item with list: true to json schema
|
|
60
|
+
def self.handle_string_list(item, out)
|
|
61
|
+
case item['type']
|
|
62
|
+
when 'boolean_list'
|
|
63
|
+
out['$ref'] = '../defs/definitions.json#/boolean_list'
|
|
64
|
+
when 'integer_list'
|
|
65
|
+
out['$ref'] = '../defs/definitions.json#/integer_list'
|
|
66
|
+
when 'string_list'
|
|
67
|
+
out['$ref'] = '../defs/definitions.json#/string_list'
|
|
68
|
+
else
|
|
69
|
+
raise "Error: List of #{item['type']} is not supported: #{item.inspect}"
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
if item['values']
|
|
73
|
+
value_list = item['values'].keys.join('|')
|
|
74
|
+
out['pattern'] = /(?-mix:^(#{value_list})(?:,(#{value_list}))*$)/
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
puts "Warning: Pattern not support for lists: #{item.inspect}" if item['pattern']
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
# convert yaml values to json schema enum
|
|
81
|
+
def self.handle_enum(item, out)
|
|
82
|
+
return unless item['values']
|
|
83
|
+
|
|
84
|
+
out['enum'] = stringify_values(enum_keys(item))
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
def self.enum_keys(item)
|
|
88
|
+
case item['values']
|
|
89
|
+
when Hash
|
|
90
|
+
validate_hash_values! item
|
|
91
|
+
item['values'].keys.sort
|
|
92
|
+
when Array
|
|
93
|
+
item['values'].sort
|
|
94
|
+
else
|
|
95
|
+
raise 'Error: Values must be specified as either a Hash or an Array, ' \
|
|
96
|
+
"got #{item['values'].class}"
|
|
97
|
+
end
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
def self.validate_hash_values!(item)
|
|
101
|
+
item['values'].each_pair do |k, v|
|
|
102
|
+
next unless ['', nil].include?(v)
|
|
103
|
+
|
|
104
|
+
raise "Error: '#{k}' has empty value in #{item}. " \
|
|
105
|
+
'(When using a hash to specify \'values\', the hash values cannot be empty.)'
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
def self.stringify_values(values)
|
|
110
|
+
values.map { |v| v.is_a?(Integer) || v.is_a?(Float) ? v.to_s : v }
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
# convert yaml pattern to json schema
|
|
114
|
+
def self.handle_pattern(item, out)
|
|
115
|
+
out['pattern'] = item['pattern'] if item['pattern']
|
|
116
|
+
end
|
|
117
|
+
end
|
|
118
|
+
end
|
|
119
|
+
end
|
|
120
|
+
end
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# Export SXL to JSON Schema format
|
|
2
|
+
|
|
3
|
+
require 'yaml'
|
|
4
|
+
require 'json'
|
|
5
|
+
require 'fileutils'
|
|
6
|
+
|
|
7
|
+
require_relative 'json_schema/values'
|
|
8
|
+
require_relative 'json_schema/items'
|
|
9
|
+
require_relative 'json_schema/outputs'
|
|
10
|
+
|
|
11
|
+
module RSMP
|
|
12
|
+
module Convert
|
|
13
|
+
# Handles exporting SXL definitions.
|
|
14
|
+
module Export
|
|
15
|
+
# Converts SXL definitions to JSON Schema files.
|
|
16
|
+
module JSONSchema
|
|
17
|
+
JSON_OPTIONS = {
|
|
18
|
+
array_nl: "\n",
|
|
19
|
+
object_nl: "\n",
|
|
20
|
+
indent: ' ',
|
|
21
|
+
space_before: ' ',
|
|
22
|
+
space: ' '
|
|
23
|
+
}.freeze
|
|
24
|
+
|
|
25
|
+
def self.output_json(item)
|
|
26
|
+
JSON.generate(item, JSON_OPTIONS)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
# Default path to definitions.json bundled with the gem's core schemas
|
|
30
|
+
DEFINITIONS_SOURCE = File.expand_path('../../../../schemas/core/3.1.2/definitions.json', __dir__)
|
|
31
|
+
|
|
32
|
+
# generate the json schema from a string containing yaml
|
|
33
|
+
def self.generate(sxl)
|
|
34
|
+
out = {}
|
|
35
|
+
output_root out, sxl[:meta]
|
|
36
|
+
output_alarms out, sxl[:alarms]
|
|
37
|
+
output_statuses out, sxl[:statuses]
|
|
38
|
+
output_commands out, sxl[:commands]
|
|
39
|
+
out
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
# convert yaml to json schema and write files to a folder
|
|
43
|
+
def self.write(sxl, folder)
|
|
44
|
+
out = generate sxl
|
|
45
|
+
out.each_pair do |relative_path, str|
|
|
46
|
+
path = File.join(folder, relative_path)
|
|
47
|
+
FileUtils.mkdir_p File.dirname(path)
|
|
48
|
+
File.open(path, 'w+') { |file| file.puts str }
|
|
49
|
+
end
|
|
50
|
+
# Copy definitions.json so each version folder is self-contained
|
|
51
|
+
defs_dest = File.join(folder, 'defs', 'definitions.json')
|
|
52
|
+
FileUtils.mkdir_p File.dirname(defs_dest)
|
|
53
|
+
FileUtils.cp DEFINITIONS_SOURCE, defs_dest if File.exist?(DEFINITIONS_SOURCE)
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|