Mercurial Hosting > nabble
comparison src/nabble/view/web/w3c/PolicyXML.java @ 0:7ecd1a4ef557
add content
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 21 Mar 2019 19:15:52 -0600 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:7ecd1a4ef557 |
---|---|
1 | |
2 package nabble.view.web.w3c; | |
3 | |
4 import fschmidt.util.servlet.JtpContext; | |
5 import nabble.view.lib.Cache; | |
6 import nabble.view.lib.Jtp; | |
7 import nabble.view.lib.UrlMappable; | |
8 | |
9 import javax.servlet.ServletException; | |
10 import javax.servlet.http.HttpServlet; | |
11 import javax.servlet.http.HttpServletRequest; | |
12 import javax.servlet.http.HttpServletResponse; | |
13 import java.io.IOException; | |
14 import java.io.PrintWriter; | |
15 import java.util.HashMap; | |
16 import java.util.Map; | |
17 import java.util.regex.Matcher; | |
18 import java.util.regex.Pattern; | |
19 | |
20 public final class PolicyXML extends HttpServlet implements UrlMappable { | |
21 | |
22 private static final Pattern URL_PATTERN = Pattern.compile("/w3c/policy.xml$"); | |
23 | |
24 public Map<String, String[]> getParameterMapFromUrl(HttpServletRequest request,String mappedUrl) { | |
25 Matcher m = URL_PATTERN.matcher(mappedUrl); | |
26 if (!m.find()) | |
27 throw new RuntimeException(); | |
28 return new HashMap<String,String[]>(); | |
29 } | |
30 | |
31 public Pattern getUrlPattern() { | |
32 return URL_PATTERN; | |
33 } | |
34 | |
35 protected void service(HttpServletRequest request, HttpServletResponse response) | |
36 throws ServletException, IOException { | |
37 | |
38 JtpContext jtpContext = (JtpContext)getServletContext().getAttribute(JtpContext.attrName); | |
39 jtpContext.setEtag(request,response); | |
40 PrintWriter out = response.getWriter(); | |
41 | |
42 out.print( "\r\n<?xml version=\"1.0\"?>\r\n<POLICIES xmlns=\"http://www.w3.org/2002/01/P3Pv1\">\r\n <EXPIRY max-age=\"86400\"/>\r\n<POLICY\r\n name=\"Policy\"\r\n discuri=\"https://www.nabble.com/w3c/policy.html\"\r\n xml:lang=\"en\">\r\n <ENTITY>\r\n <DATA-GROUP>\r\n<DATA ref=\"#business.contact-info.online.email\">support@nabble.com</DATA>\r\n<DATA ref=\"#business.contact-info.online.uri\">https://www.nabble.com</DATA>\r\n<DATA ref=\"#business.name\">Nabble</DATA>\r\n </DATA-GROUP>\r\n </ENTITY>\r\n <ACCESS><ident-contact/></ACCESS>\r\n <DISPUTES-GROUP>\r\n <DISPUTES resolution-type=\"service\" service=\"" ); | |
43 out.print( (Jtp.termsUrl(false)) ); | |
44 out.print( "\" short-description=\"Disputes\">\r\n <LONG-DESCRIPTION>If any question arises regarding the user experience, ability or inability to perform actions with the site, a user is advised to contact Nabble Support.</LONG-DESCRIPTION>\r\n </DISPUTES>\r\n </DISPUTES-GROUP>\r\n <STATEMENT>\r\n <EXTENSION optional=\"yes\">\r\n <GROUP-INFO xmlns=\"http://www.software.ibm.com/P3P/editor/extension-1.0.html\" name=\"User Information\"/>\r\n </EXTENSION>\r\n <PURPOSE><other-purpose required=\"opt-in\">Display the user name</other-purpose></PURPOSE>\r\n <RECIPIENT><ours/></RECIPIENT>\r\n <RETENTION><indefinitely/></RETENTION>\r\n <DATA-GROUP>\r\n <DATA ref=\"#user.name\" optional=\"yes\"/>\r\n <DATA ref=\"#dynamic.miscdata\" optional=\"yes\"><CATEGORIES><preference/></CATEGORIES></DATA>\r\n <DATA ref=\"#user.home-info.online.email\" optional=\"yes\"/>\r\n <DATA ref=\"#user.business-info.online.email\" optional=\"yes\"/>\r\n </DATA-GROUP>\r\n</STATEMENT>\r\n <STATEMENT>\r\n <EXTENSION optional=\"yes\">\r\n <GROUP-INFO xmlns=\"http://www.software.ibm.com/P3P/editor/extension-1.0.html\" name=\"Cookies\"/>\r\n </EXTENSION>\r\n <CONSEQUENCE>\r\nTo keep users logged in and apply their preferences.</CONSEQUENCE>\r\n <PURPOSE><pseudo-analysis required=\"opt-in\"/><pseudo-decision required=\"opt-in\"/><tailoring required=\"opt-in\"/></PURPOSE>\r\n <RECIPIENT><ours/></RECIPIENT>\r\n <RETENTION><indefinitely/></RETENTION>\r\n <DATA-GROUP>\r\n <DATA ref=\"#dynamic.cookies\" optional=\"yes\"><CATEGORIES><location/><navigation/><preference/><uniqueid/></CATEGORIES></DATA>\r\n </DATA-GROUP>\r\n</STATEMENT>\r\n</POLICY>\r\n</POLICIES>\r\n" ); | |
45 | |
46 } | |
47 } | |
48 |