
eu.unicore.gateway.util.DefaultPageRenderer Maven / Gradle / Ivy
package eu.unicore.gateway.util;
import java.io.IOException;
import java.io.PrintWriter;
import java.security.cert.X509Certificate;
import eu.unicore.gateway.Gateway;
import eu.unicore.gateway.SiteOrganiser;
import eu.unicore.gateway.SiteOrganiser.SortOrder;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
public class DefaultPageRenderer {
private final Gateway gateway;
public DefaultPageRenderer(Gateway gateway){
this.gateway = gateway;
}
/**
* show the default Gateway page ("monkey page")
*/
public void doGETDefaultGWPage(HttpServletRequest req, HttpServletResponse res) throws IOException {
SiteOrganiser so = gateway.getSiteOrganiser();
PrintWriter out=res.getWriter();
res.setContentType("text/html");
X509Certificate[] certs = (X509Certificate[]) req.getAttribute("jakarta.servlet.request.X509Certificate");
String clientIP=req.getRemoteAddr();
out.println(""+
"UNICORE Gateway ");
StringBuilder top = new StringBuilder();
top.append("
");
top.append("
Gateway
");
if (certs != null)
{
top.append("You are authenticated as:
")
.append(certs[0].getSubjectX500Principal().getName()).append("
");
}
top.append("Your IP address: ").append(clientIP).append("
");
out.println(getContentDiv(top.toString()));
out.println("
");
if(!gateway.getProperties().isDetailedWebPageDisabled()){
SortOrder ordering = SortOrder.NONE;
if(req.getQueryString()!=null) {
String sort = req.getParameter("sort");
if(sort!=null) {
try {
ordering = SortOrder.valueOf(sort);
}catch(Exception ex) {}
}
}
out.println(getContentDiv(so.toHTMLString(ordering)));
}
else{
out.println(getContentDiv("
Detailed site listing disabled.
"));
}
out.println("
");
out.println(getFooter());
out.println("");
}
private String getContentDiv(String content){
String s=""+
" "+content+
" ";
return s;
}
private String getFooter(){
StringBuilder sb=new StringBuilder();
sb.append(" ");
return sb.toString();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy