Add a HTTP and a HTML header with the version of ctbrec
This commit is contained in:
parent
258334b637
commit
7f661c3dc1
|
@ -29,6 +29,7 @@
|
||||||
<filtering>true</filtering>
|
<filtering>true</filtering>
|
||||||
<includes>
|
<includes>
|
||||||
<include>version</include>
|
<include>version</include>
|
||||||
|
<include>html/static/index.html</include>
|
||||||
</includes>
|
</includes>
|
||||||
</resource>
|
</resource>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -7,10 +7,17 @@ import java.io.InputStreamReader;
|
||||||
import java.net.BindException;
|
import java.net.BindException;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.EnumSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
|
import javax.servlet.DispatcherType;
|
||||||
|
import javax.servlet.Filter;
|
||||||
|
import javax.servlet.FilterChain;
|
||||||
|
import javax.servlet.FilterConfig;
|
||||||
import javax.servlet.ServletException;
|
import javax.servlet.ServletException;
|
||||||
|
import javax.servlet.ServletRequest;
|
||||||
|
import javax.servlet.ServletResponse;
|
||||||
import javax.servlet.http.HttpServlet;
|
import javax.servlet.http.HttpServlet;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
@ -28,6 +35,7 @@ import org.eclipse.jetty.server.Server;
|
||||||
import org.eclipse.jetty.server.ServerConnector;
|
import org.eclipse.jetty.server.ServerConnector;
|
||||||
import org.eclipse.jetty.server.handler.HandlerList;
|
import org.eclipse.jetty.server.handler.HandlerList;
|
||||||
import org.eclipse.jetty.server.handler.SecuredRedirectHandler;
|
import org.eclipse.jetty.server.handler.SecuredRedirectHandler;
|
||||||
|
import org.eclipse.jetty.servlet.FilterHolder;
|
||||||
import org.eclipse.jetty.servlet.ServletContextHandler;
|
import org.eclipse.jetty.servlet.ServletContextHandler;
|
||||||
import org.eclipse.jetty.servlet.ServletHolder;
|
import org.eclipse.jetty.servlet.ServletHolder;
|
||||||
import org.eclipse.jetty.util.security.Constraint;
|
import org.eclipse.jetty.util.security.Constraint;
|
||||||
|
@ -193,6 +201,7 @@ public class HttpServer {
|
||||||
|
|
||||||
ServletContextHandler defaultContext = new ServletContextHandler(ServletContextHandler.SESSIONS);
|
ServletContextHandler defaultContext = new ServletContextHandler(ServletContextHandler.SESSIONS);
|
||||||
defaultContext.setContextPath(contextPath);
|
defaultContext.setContextPath(contextPath);
|
||||||
|
addHttpHeaderFilter(defaultContext);
|
||||||
|
|
||||||
RecorderServlet recorderServlet = new RecorderServlet(recorder, sites);
|
RecorderServlet recorderServlet = new RecorderServlet(recorder, sites);
|
||||||
ServletHolder holder = new ServletHolder(recorderServlet);
|
ServletHolder holder = new ServletHolder(recorderServlet);
|
||||||
|
@ -255,6 +264,27 @@ public class HttpServer {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void addHttpHeaderFilter(ServletContextHandler defaultContext) {
|
||||||
|
FilterHolder httpHeaderFilter = new FilterHolder(new Filter() {
|
||||||
|
@Override
|
||||||
|
public void init(FilterConfig filterConfig) throws ServletException {
|
||||||
|
// noop
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
|
||||||
|
((HttpServletResponse)response).addHeader("Server", "CTB Recorder/" + getVersion());
|
||||||
|
chain.doFilter(request, response);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void destroy() {
|
||||||
|
// noop
|
||||||
|
}
|
||||||
|
});
|
||||||
|
defaultContext.addFilter(httpHeaderFilter, "/*", EnumSet.of(DispatcherType.REQUEST, DispatcherType.INCLUDE));
|
||||||
|
}
|
||||||
|
|
||||||
private static final SecurityHandler basicAuth(String username, String password, String realm) {
|
private static final SecurityHandler basicAuth(String username, String password, String realm) {
|
||||||
UserStore userStore = new UserStore();
|
UserStore userStore = new UserStore();
|
||||||
userStore.addUser(username, Credential.getCredential(password), new String[] { "user" });
|
userStore.addUser(username, Credential.getCredential(password), new String[] { "user" });
|
||||||
|
|
|
@ -7,8 +7,9 @@
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
<meta name="description" content="CTB Recorder is a free recording software for Chaturbate">
|
<meta name="description" content="CTB Recorder is a free recording software for Chaturbate">
|
||||||
<meta name="author" content="">
|
<meta name="author" content="">
|
||||||
|
<meta name="version" content="${project.version}">
|
||||||
|
|
||||||
<title>CTB Recorder</title>
|
<title>CTB Recorder ${project.version}</title>
|
||||||
|
|
||||||
<!-- Bootstrap core CSS -->
|
<!-- Bootstrap core CSS -->
|
||||||
<link href="vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet">
|
<link href="vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet">
|
||||||
|
|
Loading…
Reference in New Issue