aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/juick/server/api/hostmeta/HostMeta.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/juick/server/api/hostmeta/HostMeta.java')
-rw-r--r--src/main/java/com/juick/server/api/hostmeta/HostMeta.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/main/java/com/juick/server/api/hostmeta/HostMeta.java b/src/main/java/com/juick/server/api/hostmeta/HostMeta.java
new file mode 100644
index 00000000..fa4d2a3f
--- /dev/null
+++ b/src/main/java/com/juick/server/api/hostmeta/HostMeta.java
@@ -0,0 +1,25 @@
+package com.juick.server.api.hostmeta;
+
+import com.cliqset.xrd.Link;
+import com.cliqset.xrd.XRD;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Collections;
+
+import static com.cliqset.xrd.XRDConstants.XRD_MEDIA_TYPE;
+
+@RestController
+public class HostMeta {
+ @Value("${ap_base_uri:http://localhost:8080/}")
+ private String baseUri;
+ @GetMapping(value = "/.well-known/host-meta", produces = XRD_MEDIA_TYPE)
+ public XRD hostMetaResponse() {
+ Link webfinger = new Link();
+ webfinger.setTemplate(String.format("%swebfinger?resource={uri}", baseUri));
+ XRD xrd = new XRD();
+ xrd.setLinks(Collections.singletonList(webfinger));
+ return xrd;
+ }
+}