]> WPIA git - gigi.git/blob - src/org/cacert/gigi/output/CertificateIterable.java
FIX: Cleanup fields
[gigi.git] / src / org / cacert / gigi / output / CertificateIterable.java
1 package org.cacert.gigi.output;
2
3 import java.sql.SQLException;
4 import java.util.Map;
5
6 import org.cacert.gigi.Certificate;
7 import org.cacert.gigi.localisation.Language;
8 import org.cacert.gigi.output.template.IterableDataset;
9
10 public class CertificateIterable implements IterableDataset {
11
12     private Certificate[] certificates;
13
14     public CertificateIterable(Certificate[] certificates) {
15         this.certificates = certificates;
16     }
17
18     private int i = 0;
19
20     @Override
21     public boolean next(Language l, Map<String, Object> vars) {
22         if (i >= certificates.length) {
23             return false;
24         }
25         Certificate c = certificates[i++];
26         try {
27             vars.put("state", l.getTranslation(c.getStatus().toString().toLowerCase()));
28         } catch (SQLException e) {
29             vars.put("state", "Failed");
30             e.printStackTrace();
31         }
32         vars.put("CN", c.getDistinguishedName());
33         vars.put("serial", c.getSerial());
34         vars.put("digest", c.getMessageDigest());
35         vars.put("profile", c.getProfile().getVisibleName());
36
37         vars.put("issued", "TODO"); // TODO output dates
38         vars.put("revoked", "TODO");
39         vars.put("expire", "TODO");
40         return true;
41     }
42 }