]> WPIA git - gigi.git/blob - src/org/cacert/gigi/output/template/SprintfCommand.java
Split of inner anonymous classes of "Template"
[gigi.git] / src / org / cacert / gigi / output / template / SprintfCommand.java
1 package org.cacert.gigi.output.template;
2
3 import java.io.PrintWriter;
4 import java.util.LinkedList;
5 import java.util.Map;
6
7 import org.cacert.gigi.Language;
8 import org.cacert.gigi.output.Outputable;
9
10 final class SprintfCommand implements Outputable {
11         private final String text;
12         private final LinkedList<String> store;
13
14         SprintfCommand(String text, LinkedList<String> store) {
15                 this.text = text;
16                 this.store = store;
17         }
18
19         @Override
20         public void output(PrintWriter out, Language l, Map<String, Object> vars) {
21                 String[] parts = l.getTranslation(text).split("%s");
22                 String[] myvars = store.toArray(new String[store.size()]);
23                 out.print(parts[0]);
24                 for (int j = 1; j < parts.length; j++) {
25                         Template.outputVar(out, l, vars, myvars[j - 1].substring(1));
26                         out.print(parts[j]);
27                 }
28         }
29 }