1 package org.eparapher.rcp.wizards;
2
3 import org.apache.log4j.Logger;
4 import org.eclipse.jface.viewers.IStructuredSelection;
5 import org.eclipse.jface.wizard.Wizard;
6 import org.eclipse.ui.INewWizard;
7 import org.eclipse.ui.IWorkbench;
8 import org.eclipse.ui.IWorkbenchWindow;
9 import org.eparapher.core.signature.XMLSignatureParameters;
10
11
12 public class XMLSigningWizard extends Wizard implements INewWizard {
13
14 private static Logger log = Logger.getLogger(NewCertificateWizard.class);
15
16
17 private IWorkbenchWindow window;
18
19 private XMLSigningWizardPageOne one;
20 private XMLSigningWizardPageTwo two;
21 private XMLSigningWizardPageThree three;
22
23 private XMLSignatureParameters xmlsignatureparams;
24
25 public XMLSigningWizard() {
26 super();
27 setWindowTitle("XML DSig Signature settings");
28 setNeedsProgressMonitor(true);
29 xmlsignatureparams = new XMLSignatureParameters();
30 xmlsignatureparams.setXMLSignatureParamsFromPreferences();
31 }
32 public XMLSigningWizard(XMLSignatureParameters mxmlsp) {
33 this();
34 xmlsignatureparams = mxmlsp;
35 }
36 public void addPages() {
37 one = new XMLSigningWizardPageOne(xmlsignatureparams);
38 two = new XMLSigningWizardPageTwo(xmlsignatureparams);
39 three = new XMLSigningWizardPageThree(xmlsignatureparams);
40 addPage(one);
41 addPage(two);
42 addPage(three);
43 }
44
45
46 public boolean performFinish() {
47
48 xmlsignatureparams.setFileSelectiontoSign( one.getFiles2Process());
49
50 xmlsignatureparams.setSignatureAlias( two.getSelectedSignatureCertificateAlias() );
51
52 xmlsignatureparams.setFormat( three.getSignatureFormat());
53 xmlsignatureparams.setTransform( three.getXMLTransform() );
54 xmlsignatureparams.setCanonical( three.getXMLCanonical() );
55 xmlsignatureparams.setDigestAlg( three.getDigestAlg() );
56 xmlsignatureparams.setSignatureAlg( three.getSignatureAlg() );
57 xmlsignatureparams.setInsertCRLs( three.isCRLsInSignature() );
58 xmlsignatureparams.setInsertTimestamp( three.isTSInSignature() );
59 xmlsignatureparams.setObjectIds( three.getObjectID() );
60 xmlsignatureparams.setOverwritesignedfile( three.isOverwriteOriginalFile());
61 xmlsignatureparams.setDTDValidation( three.isDTDValidation());
62
63 return true;
64 }
65
66 public XMLSignatureParameters getXMLSignatureParams() {
67 return xmlsignatureparams;
68 }
69
70 public void init(IWorkbench workbench, IStructuredSelection selection) {
71 window = workbench.getActiveWorkbenchWindow();
72 }
73 }