1 package org.cacert.gigi.pages.account.certs;
3 import java.io.IOException;
4 import java.util.Collections;
5 import java.util.HashMap;
7 import javax.servlet.http.HttpServletRequest;
8 import javax.servlet.http.HttpServletResponse;
10 import org.cacert.gigi.dbObjects.Certificate;
11 import org.cacert.gigi.dbObjects.Certificate.CertificateStatus;
12 import org.cacert.gigi.output.template.Form;
13 import org.cacert.gigi.pages.Page;
15 public class CertificateAdd extends Page {
17 public static final String PATH = "/account/certs/new";
19 public CertificateAdd() {
20 super("Create certificate");
24 public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
25 new CertificateIssueForm(req).output(resp.getWriter(), getLanguage(req), new HashMap<String, Object>());
29 public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
30 CertificateIssueForm f = Form.getForm(req, CertificateIssueForm.class);
31 if (f.submit(resp.getWriter(), req)) {
32 Certificate c = f.getResult();
33 if (c.getStatus() != CertificateStatus.ISSUED) {
34 resp.getWriter().println("Timeout while waiting for certificate.");
37 String ser = c.getSerial();
39 resp.getWriter().println("Timeout while waiting for certificate.");
42 resp.sendRedirect(Certificates.PATH + "/" + ser);
44 f.output(resp.getWriter(), getLanguage(req), Collections.<String,Object>emptyMap());