aboutsummaryrefslogtreecommitdiff
path: root/app/views/uuid_resolver
diff options
context:
space:
mode:
authorhellekin <hellekin@cepheide.org>2021-03-22 15:30:45 +0100
committerhellekin <hellekin@cepheide.org>2021-03-22 15:30:45 +0100
commit15096ed20f918d585f7b49610f89deefda0a20b3 (patch)
treef6014e03bdd466977446eae004205d992a946de4 /app/views/uuid_resolver
parente5619547d5544a043dfec173f17020b09f882a98 (diff)
downloadincommon-map-15096ed20f918d585f7b49610f89deefda0a20b3.tar.gz
Add UUIDResolver
The UUIDResolver adds a route at `/by-uuid/:uuid` that enables applications to request information about a given UUID. The UUID must be a Random UUID (version 4, see RFC 4122). If an invalid UUID is given, the controller will return 422 Unprocessable Entity. If a valid UUID is given: - 404 indicates that the UUID is not assigned to anything known to the system. - 302 indicates that the UUID was assigned to a record, and the User-Agent will be redirected to that record's Location as indicated in the response header. - 200 indicates that the UUID was assigned to more than one record (which is unlikely) and will list those records.
Diffstat (limited to 'app/views/uuid_resolver')
-rw-r--r--app/views/uuid_resolver/new.html.erb15
1 files changed, 15 insertions, 0 deletions
diff --git a/app/views/uuid_resolver/new.html.erb b/app/views/uuid_resolver/new.html.erb
new file mode 100644
index 0000000..1cefbfc
--- /dev/null
+++ b/app/views/uuid_resolver/new.html.erb
@@ -0,0 +1,15 @@
+<h1>Resolving <%= @resolver.uuid %></h1>
+<p>Found <%= pluralize(@resolver.count, "result") %>.</p>
+
+<% if @resolver.count == 1 %>
+ <%= render @resolver.record %>
+<% elsif @resolver.count > 1 %>
+ <% @resolver.records.each do |rec| %>
+ <%= render rec %>
+ <% end %>
+<% end %>
+
+<% content_for :debug do %>
+ <%= h @resolver.records.inspect %>
+<% end %>
+