From 969617f6557c559b173a8cc267c7cd37c6e2e088 Mon Sep 17 00:00:00 2001 From: tkellner Date: Fri, 24 Aug 2012 17:04:54 +0000 Subject: PDF-AS signature working with local BKU git-svn-id: https://svn.iaik.tugraz.at/svn/egiz/prj/current/12PDF-OVER-4.0@12391 3a0b52a2-8410-0410-bc02-ff6273a87459 --- .../pdfover/gui/workflow/states/OutputState.java | 40 ++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) (limited to 'trunk/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/OutputState.java') diff --git a/trunk/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/OutputState.java b/trunk/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/OutputState.java index 7c16d559..50aee387 100644 --- a/trunk/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/OutputState.java +++ b/trunk/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/OutputState.java @@ -16,12 +16,15 @@ package at.asit.pdfover.gui.workflow.states; //Imports +import org.eclipse.swt.SWT; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import at.asit.pdfover.gui.MainWindow.Buttons; import at.asit.pdfover.gui.MainWindowBehavior; +import at.asit.pdfover.gui.composites.OutputComposite; import at.asit.pdfover.gui.workflow.StateMachine; +import at.asit.pdfover.gui.workflow.Status; /** * Procduces the output of the signature process. (save file, open file) @@ -41,11 +44,43 @@ public class OutputState extends State { @SuppressWarnings("unused") private static final Logger log = LoggerFactory.getLogger(OutputState.class); + private OutputComposite outputComposite = null; + + private OutputComposite getSelectionComposite() { + if (this.outputComposite == null) { + this.outputComposite = + this.stateMachine.getGUIProvider().createComposite(OutputComposite.class, SWT.RESIZE, this); + } + + return this.outputComposite; + } + @Override public void run() { // TODO Preform output operations ... end workflow - this.stateMachine.exit(); + Status status = this.stateMachine.getStatus(); + + if(status.getSignResult() != null) + { + OutputComposite outputComposite = this.getSelectionComposite(); + outputComposite.setSignedDocument(status.getSignResult().getSignedDocument()); + this.stateMachine.getGUIProvider().display(outputComposite); + + /*DocumentSource signedDocument = status.getSignResult().getSignedDocument(); + + FileOutputStream output; + try { + output = new FileOutputStream(new File("/tmp/test.pdf")); + output.write(signedDocument.getByteArray(), 0, signedDocument.getByteArray().length); + output.close(); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + }*/ + } + + //this.stateMachine.exit(); } /* (non-Javadoc) @@ -53,7 +88,8 @@ public class OutputState extends State { */ @Override public void cleanUp() { - // TODO + if (this.outputComposite != null) + this.outputComposite.dispose(); } /* (non-Javadoc) -- cgit v1.2.3