From 667af128d0adfeee2aa4748ab58411c91bc4905f Mon Sep 17 00:00:00 2001 From: mcentner Date: Tue, 26 Jan 2010 16:27:04 +0000 Subject: git-svn-id: https://joinup.ec.europa.eu/svn/mocca/branches/mocca-1.2.11-sha2@600 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- .../at/gv/egiz/bku/local/stal/LocalBKUWorker.java | 64 ---------- .../gv/egiz/bku/local/stal/LocalSTALFactory.java | 126 -------------------- .../gv/egiz/bku/local/stal/LocalSecureViewer.java | 129 --------------------- .../bku/local/stal/LocalSignRequestHandler.java | 63 ---------- 4 files changed, 382 deletions(-) delete mode 100644 mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalBKUWorker.java delete mode 100644 mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSTALFactory.java delete mode 100644 mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSecureViewer.java delete mode 100644 mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java (limited to 'mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal') diff --git a/mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalBKUWorker.java b/mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalBKUWorker.java deleted file mode 100644 index 1e3f9a1d..00000000 --- a/mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalBKUWorker.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright 2008 Federal Chancellery Austria and - * Graz University of Technology - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package at.gv.egiz.bku.local.stal; - -import at.gv.egiz.bku.gui.BKUGUIFacade; -import at.gv.egiz.bku.smccstal.AbstractBKUWorker; -import at.gv.egiz.bku.smccstal.PINManagementRequestHandler; -import at.gv.egiz.stal.QuitRequest; -import at.gv.egiz.stal.STALRequest; -import at.gv.egiz.stal.STALResponse; -import at.gv.egiz.stal.SignRequest; - -import at.gv.egiz.stal.ext.PINManagementRequest; -import java.util.List; -import javax.swing.JFrame; - -/** - * - * @author Clemens Orthacker - */ -public class LocalBKUWorker extends AbstractBKUWorker { - - private JFrame container; - - public LocalBKUWorker(BKUGUIFacade gui, JFrame container) { - super(gui); - this.container = container; - addRequestHandler(SignRequest.class, - new LocalSignRequestHandler(new LocalSecureViewer(gui))); - addRequestHandler(PINManagementRequest.class, new PINManagementRequestHandler()); - } - - /** does not change container's visibility (use quit request to close) */ - @Override - public List handleRequest(List requestList) { - signatureCard = null; - List responses = super.handleRequest(requestList); - container.setVisible(false); - return responses; - } - - /** overrides handle quit from abstract bku worker, make container invisible */ - @Override - public STALResponse handleRequest(STALRequest request) { - if (request instanceof QuitRequest) { - container.setVisible(false); - } - return null; - } -} diff --git a/mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSTALFactory.java b/mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSTALFactory.java deleted file mode 100644 index 44322a07..00000000 --- a/mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSTALFactory.java +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Copyright 2008 Federal Chancellery Austria and - * Graz University of Technology - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package at.gv.egiz.bku.local.stal; - -import at.gv.egiz.bku.viewer.ResourceFontLoader; -import java.awt.Dimension; -import java.awt.Toolkit; -import java.net.MalformedURLException; -import java.util.Locale; - - -import at.gv.egiz.bku.gui.BKUGUIFacade; -import at.gv.egiz.bku.gui.BKUIcons; -import at.gv.egiz.bku.gui.PINManagementGUI; -import at.gv.egiz.bku.gui.PINManagementGUIFacade; -import at.gv.egiz.bku.local.gui.GUIProxy; -import at.gv.egiz.bku.local.gui.LocalHelpListener; -import at.gv.egiz.stal.STAL; -import at.gv.egiz.stal.STALFactory; -import java.net.URL; -import javax.swing.JFrame; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * Creates a PINManagementGUI and a LocalBKUWorker, which in turn registers - * PINManagementRequestHandler from smccSTALExt. - * The RequestHandler expects PINManagementGUIFacade, therefore BKUGUIProxy has to implement the extended GUI. - * @author clemens - */ -public class LocalSTALFactory implements STALFactory { - - protected static final Log log = LogFactory.getLog(LocalSTALFactory.class); - protected static final Dimension PREFERRED_SIZE = new Dimension(318, 200); - protected String helpURL; - protected Locale locale; - - @Override - public STAL createSTAL() { - - LocalBKUWorker stal; - //http://java.sun.com/docs/books/tutorial/uiswing/misc/focus.html - // use undecorated JFrame instead of JWindow, - // which creates an invisible owning frame and therefore cannot getFocusInWindow() - JFrame dialog = new JFrame("Bürgerkarte"); - if (log.isTraceEnabled()) { - log.debug("alwaysOnTop supported: " + dialog.isAlwaysOnTopSupported()); - } - // [#439] make mocca dialog alwaysOnTop - dialog.setAlwaysOnTop(true); - dialog.setIconImages(BKUIcons.icons); - dialog.setUndecorated(true); -// dialog.getRootPane().setWindowDecorationStyle(JRootPane.NONE); -// dialog.addWindowListener(new WindowAdapter() { -// -// @Override -// public void windowClosing(WindowEvent e) { -// super.windowClosing(e); -// log.debug("closing window ********************"); -// } -// -// }); - if (locale != null) { - dialog.setLocale(locale); - } - LocalHelpListener helpListener = null; - try { - if (helpURL != null) { - helpListener = new LocalHelpListener(new URL(helpURL), locale); - } else { - log.warn("no HELP URL configured, help system disabled"); - } - } catch (MalformedURLException ex) { - log.error("failed to configure help listener: " + ex.getMessage(), ex); - } - PINManagementGUIFacade gui = new PINManagementGUI(dialog.getContentPane(), - dialog.getLocale(), - BKUGUIFacade.Style.advanced, - null, - new ResourceFontLoader(), - helpListener, - null); - BKUGUIFacade proxy = (BKUGUIFacade) GUIProxy.newInstance(gui, dialog, new Class[] { PINManagementGUIFacade.class} ); - stal = new LocalBKUWorker(proxy, dialog); - dialog.setPreferredSize(PREFERRED_SIZE); - dialog.pack(); - Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); - Dimension frameSize = dialog.getSize(); - if (frameSize.height > screenSize.height) { - frameSize.height = screenSize.height; - } - if (frameSize.width > screenSize.width) { - frameSize.width = screenSize.width; - } - dialog.setLocation((screenSize.width - frameSize.width) / 2, - (screenSize.height - frameSize.height) / 2); - return stal; - } - - @Override - public void setLocale(Locale locale) { - this.locale = locale; - } - - public String getHelpURL() { - return helpURL; - } - - public void setHelpURL(String helpURL) { - this.helpURL = helpURL; - } -} diff --git a/mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSecureViewer.java b/mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSecureViewer.java deleted file mode 100644 index ae58526c..00000000 --- a/mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSecureViewer.java +++ /dev/null @@ -1,129 +0,0 @@ -/* - * Copyright 2008 Federal Chancellery Austria and - * Graz University of Technology - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package at.gv.egiz.bku.local.stal; - -import at.gv.egiz.bku.slcommands.impl.DataObjectHashDataInput; -import at.gv.egiz.bku.smccstal.SecureViewer; -import java.io.IOException; -import java.util.ArrayList; - -import at.gv.egiz.bku.gui.BKUGUIFacade; -import at.gv.egiz.stal.HashDataInput; -import at.gv.egiz.stal.impl.ByteArrayHashDataInput; -import at.gv.egiz.stal.signedinfo.ReferenceType; -import at.gv.egiz.stal.signedinfo.SignedInfoType; -import java.awt.event.ActionListener; -import java.io.ByteArrayOutputStream; -import java.io.InputStream; -import java.util.Collections; -import java.util.List; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * - * @author Clemens Orthacker - */ -public class LocalSecureViewer implements SecureViewer { - - private static final Log log = LogFactory.getLog(LocalSignRequestHandler.class); - private List hashDataInputs = Collections.EMPTY_LIST; - - protected BKUGUIFacade gui; - - public LocalSecureViewer(BKUGUIFacade gui) { - this.gui = gui; - } - - public void setDataToBeSigned(List dataToBeSigned) { - this.hashDataInputs = dataToBeSigned; - } - - /** - * - * @param dsigReferences - * @throws java.lang.Exception - */ - @Override - public void displayDataToBeSigned(SignedInfoType signedInfo, - ActionListener okListener, String okCommand) - throws Exception { - if (signedInfo.getReference().size() == 0) { - log.error("No hashdata input selected to be displayed: null"); - throw new Exception("No HashData Input selected to be displayed"); - } - - ArrayList selectedHashDataInputs = new ArrayList(); - for (ReferenceType dsigRef : signedInfo.getReference()) { - // don't get Manifest, QualifyingProperties, ... - if (dsigRef.getType() == null) { - String dsigRefId = dsigRef.getId(); - if (dsigRefId != null) { - boolean hdiAvailable = false; - for (HashDataInput hashDataInput : hashDataInputs) { - if (dsigRefId.equals(hashDataInput.getReferenceId())) { - log.debug("display hashdata input for dsig:SignedReference " + - dsigRefId); - selectedHashDataInputs.add( - ensureCachedHashDataInput(hashDataInput)); - hdiAvailable = true; - break; - } - } - if (!hdiAvailable) { - log.error("no hashdata input for dsig:SignedReference " + dsigRefId); - throw new Exception( - "No HashDataInput available for dsig:SignedReference " + dsigRefId); - } - } else { - throw new Exception( - "Cannot get HashDataInput for dsig:Reference without Id attribute"); - } - } - } - - if (selectedHashDataInputs.size() < 1) { - log.error("dsig:SignedInfo does not contain a data reference"); - throw new Exception("dsig:SignedInfo does not contain a data reference"); - } - gui.showSecureViewer(selectedHashDataInputs, okListener, okCommand); - } - - - private HashDataInput ensureCachedHashDataInput(HashDataInput hashDataInput) - throws IOException { - if (!(hashDataInput instanceof DataObjectHashDataInput)) { - - log.warn("expected DataObjectHashDataInput for LocalSignRequestHandler, got " + - hashDataInput.getClass().getName()); - - InputStream hdIs = hashDataInput.getHashDataInput(); - ByteArrayOutputStream baos = new ByteArrayOutputStream(hdIs.available()); - int b; - while ((b = hdIs.read()) != -1) { - baos.write(b); - } - hashDataInput = new ByteArrayHashDataInput(baos.toByteArray(), - hashDataInput.getReferenceId(), - hashDataInput.getMimeType(), - hashDataInput.getEncoding(), - hashDataInput.getFilename()); - } - return hashDataInput; - } - -} diff --git a/mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java b/mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java deleted file mode 100644 index 9ae1d9b9..00000000 --- a/mocca-1.2.11/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java +++ /dev/null @@ -1,63 +0,0 @@ -/* - * Copyright 2008 Federal Chancellery Austria and - * Graz University of Technology - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package at.gv.egiz.bku.local.stal; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import at.gv.egiz.bku.smccstal.SignRequestHandler; -import at.gv.egiz.stal.ErrorResponse; -import at.gv.egiz.stal.STALRequest; -import at.gv.egiz.stal.STALResponse; -import at.gv.egiz.stal.SignRequest; - -/** - * - * @author Clemens Orthacker - */ -public class LocalSignRequestHandler extends SignRequestHandler { - - private static final Log log = LogFactory.getLog(LocalSignRequestHandler.class); - - public LocalSignRequestHandler(LocalSecureViewer secureViewer) { - super(secureViewer); - } - - /** - * If the request is a SIGN request, it contains a list of DataObjectHashDataInput - * providing the pre-digested input stream (that can be obtained repeatedly) if - * reference caching is enabled (or null otherwise). - * @param request - * @return - */ - @SuppressWarnings("unchecked") - @Override - public STALResponse handleRequest(STALRequest request) - throws InterruptedException { - - if (request instanceof SignRequest) { - SignRequest signReq = (SignRequest) request; - ((LocalSecureViewer) secureViewer).setDataToBeSigned(signReq.getHashDataInput()); - return super.handleRequest(request); - } else { - log.fatal("Got unexpected STAL request: " + request); - return new ErrorResponse(1000); - } - - - } -} -- cgit v1.2.3