diff options
| author | tkellner <tkellner@8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4> | 2012-04-02 16:38:53 +0000 | 
|---|---|---|
| committer | tkellner <tkellner@8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4> | 2012-04-02 16:38:53 +0000 | 
| commit | 50f7be0c55da14e1b73c39aa18db9808949387bc (patch) | |
| tree | d43e7d3dec5f79cef7ac876f796ad7092f3d4ae6 /BKUAppletExt/src | |
| parent | 5b9e4b3e9ed531689700b2e0f75907fd9281a042 (diff) | |
| download | mocca-50f7be0c55da14e1b73c39aa18db9808949387bc.tar.gz mocca-50f7be0c55da14e1b73c39aa18db9808949387bc.tar.bz2 mocca-50f7be0c55da14e1b73c39aa18db9808949387bc.zip | |
Person Identity Link Extension:
for Webstart and Applet version
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@1040 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
Diffstat (limited to 'BKUAppletExt/src')
| -rw-r--r-- | BKUAppletExt/src/main/java/at/gv/egiz/bku/online/applet/IdentityLinkApplet.java | 59 | ||||
| -rw-r--r-- | BKUAppletExt/src/main/java/at/gv/egiz/bku/online/applet/IdentityLinkBKUWorker.java | 96 | 
2 files changed, 155 insertions, 0 deletions
| diff --git a/BKUAppletExt/src/main/java/at/gv/egiz/bku/online/applet/IdentityLinkApplet.java b/BKUAppletExt/src/main/java/at/gv/egiz/bku/online/applet/IdentityLinkApplet.java new file mode 100644 index 00000000..08193603 --- /dev/null +++ b/BKUAppletExt/src/main/java/at/gv/egiz/bku/online/applet/IdentityLinkApplet.java @@ -0,0 +1,59 @@ +/* + * Copyright 2011 by Graz University of Technology, Austria + * MOCCA has been developed by the E-Government Innovation Center EGIZ, a joint + * initiative of the Federal Chancellery Austria and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ + + +package at.gv.egiz.bku.online.applet; + +import java.awt.Container; +import java.net.URL; +import java.util.Locale; + +import at.gv.egiz.bku.gui.BKUGUIFacade; +import at.gv.egiz.bku.gui.HelpListener; +import at.gv.egiz.bku.gui.PersonIdentityLinkGUI; +import at.gv.egiz.bku.gui.PersonIdentityLinkGUIFacade; +import at.gv.egiz.bku.gui.SwitchFocusListener; +import at.gv.egiz.bku.gui.viewer.FontProvider; + +/** + *  + * @author Andreas Fitzek <andreas.fitzek@iaik.tugraz.at> + */ +public class IdentityLinkApplet extends BKUApplet { +private static final long serialVersionUID = 1L; +	 +	@Override +	protected BKUGUIFacade createGUI(Container contentPane, Locale locale, +			BKUGUIFacade.Style guiStyle, URL backgroundImgURL, +			FontProvider fontProvider, HelpListener helpListener, +			SwitchFocusListener switchFocusListener) { +		return new PersonIdentityLinkGUI(contentPane, locale, +				backgroundImgURL, fontProvider, helpListener, +				switchFocusListener); +	} + +	@Override +	protected AppletBKUWorker createBKUWorker(BKUApplet applet, BKUGUIFacade gui) { +		return new IdentityLinkBKUWorker(applet, (PersonIdentityLinkGUIFacade) gui); +	} +} diff --git a/BKUAppletExt/src/main/java/at/gv/egiz/bku/online/applet/IdentityLinkBKUWorker.java b/BKUAppletExt/src/main/java/at/gv/egiz/bku/online/applet/IdentityLinkBKUWorker.java new file mode 100644 index 00000000..5a76e935 --- /dev/null +++ b/BKUAppletExt/src/main/java/at/gv/egiz/bku/online/applet/IdentityLinkBKUWorker.java @@ -0,0 +1,96 @@ +/* + * Copyright 2011 by Graz University of Technology, Austria + * MOCCA has been developed by the E-Government Innovation Center EGIZ, a joint + * initiative of the Federal Chancellery Austria and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ + + +package at.gv.egiz.bku.online.applet; + +import java.util.Collections; +import java.util.List; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import at.gv.egiz.bku.gui.BKUGUIFacade; +import at.gv.egiz.bku.gui.PersonIdentityLinkGUIFacade; +import at.gv.egiz.bku.smccstal.PersonIdentityLinkRequestHandler; +import at.gv.egiz.stal.ErrorResponse; +import at.gv.egiz.stal.InfoboxReadRequest; +import at.gv.egiz.stal.QuitRequest; +import at.gv.egiz.stal.STALResponse; +import at.gv.egiz.stal.SignRequest; +import at.gv.egiz.stal.ext.PersonIdentityLinkRequest; +import at.gv.egiz.stal.ext.PersonIdentityLinkResponse; + +public class IdentityLinkBKUWorker extends AppletBKUWorker { +	private final Logger log = LoggerFactory.getLogger(IdentityLinkBKUWorker.class); +	 +	public IdentityLinkBKUWorker(BKUApplet applet, PersonIdentityLinkGUIFacade gui) { +	    super(applet, gui); +	    removeRequestHandler(InfoboxReadRequest.class); +	    removeRequestHandler(SignRequest.class); +	    addRequestHandler(PersonIdentityLinkRequest.class, new PersonIdentityLinkRequestHandler()); +	  } +	 +	@Override +	  public void run() { +		log.error("Identity Link IdentityLinkBKUWorker running."); +	    /*gui.showMessageDialog(BKUGUIFacade.TITLE_WELCOME, +	            BKUGUIFacade.MESSAGE_WELCOME);*/ + +	    try { + +	      List<STALResponse> responses = handleRequest(Collections.singletonList(new PersonIdentityLinkRequest())); +	      handleRequest(Collections.singletonList(new QuitRequest())); +	       +	      if (responses.size() == 1) { +	        STALResponse response = responses.get(0); +	        if (response instanceof PersonIdentityLinkResponse) { +	          log.info("Identity Link dialog terminated."); +	        } else if (response instanceof ErrorResponse) { +	          log.info("Identity Link dialog terminated with error."); +	        } else { +	          throw new RuntimeException("Invalid STAL response: " + response.getClass().getName()); +	        } +	      } else { +	        throw new RuntimeException("invalid number of STAL responses: " + responses.size()); +	      } + +	    } catch (RuntimeException ex) { +	      log.error(ex.getMessage()); +	      Throwable cause = ex.getCause(); +	      if (cause != null) { // && cause instanceof InterruptedException) { +	        log.info(cause.getMessage()); +	      } +	      showErrorDialog(BKUGUIFacade.ERR_UNKNOWN, null); +	    } catch (Exception ex) { +	      log.error(ex.getMessage(), ex); +	      showErrorDialog(BKUGUIFacade.ERR_UNKNOWN_WITH_PARAM, ex); +	    } finally { +	      if (signatureCard != null) { +	        signatureCard.disconnect(false); +	      } +	    } + +	    applet.sendRedirect(); +	  } +} | 
