diff options
author | Endi S. Dewata <edewata@redhat.com> | 2017-02-15 17:51:28 +0100 |
---|---|---|
committer | Endi S. Dewata <edewata@redhat.com> | 2017-02-24 00:20:06 +0100 |
commit | 2d2f2232219c30c14c247a393f02414dc56c4111 (patch) | |
tree | 2433b92403d61162a961fd8b7d347dbb4313c445 /base/server/cms/src/com/netscape/cms/servlet/base | |
parent | 8bd37a1ff3fd14248e65b86ed35f5f6d12e4468f (diff) | |
download | pki-2d2f2232219c30c14c247a393f02414dc56c4111.tar.gz pki-2d2f2232219c30c14c247a393f02414dc56c4111.tar.xz pki-2d2f2232219c30c14c247a393f02414dc56c4111.zip |
Added InfoService and LoginService.
New REST services classes have been added to PKIApplication.
The InfoService provides general information about the server
including version number and access banner. The LoginService
provides a way to notify the server that the banner has been
displayed on the client, which in that case the InfoService
will no longer return the banner again in the same session.
https://fedorahosted.org/pki/ticket/2582
Diffstat (limited to 'base/server/cms/src/com/netscape/cms/servlet/base')
-rw-r--r-- | base/server/cms/src/com/netscape/cms/servlet/base/PKIService.java | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/base/server/cms/src/com/netscape/cms/servlet/base/PKIService.java b/base/server/cms/src/com/netscape/cms/servlet/base/PKIService.java index 3ed4b91b7..8dfbef1e5 100644 --- a/base/server/cms/src/com/netscape/cms/servlet/base/PKIService.java +++ b/base/server/cms/src/com/netscape/cms/servlet/base/PKIService.java @@ -17,8 +17,12 @@ // --- END COPYRIGHT BLOCK --- package com.netscape.cms.servlet.base; +import java.io.IOException; import java.lang.reflect.Method; import java.net.URI; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; import java.util.Arrays; import java.util.HashMap; import java.util.List; @@ -78,8 +82,22 @@ public class PKIService { @Context protected ServletContext servletContext; - public String getInstanceDir() { - return System.getProperty("catalina.base"); + public static Path bannerFile = Paths.get(getInstanceDir(), "conf", "banner.txt"); + + public static String getInstanceDir() { + return System.getProperty("catalina.base"); // provided by Tomcat + } + + public static String getVersion() { + return System.getenv("PKI_VERSION"); // defined in tomcat.conf + } + + public static boolean isBannerEnabled() { + return Files.exists(bannerFile); + } + + public static String getBanner() throws IOException { + return new String(Files.readAllBytes(bannerFile)); } public static MediaType resolveFormat(MediaType format) { |