summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUApplet.java8
-rw-r--r--BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java17
-rw-r--r--BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/ExternalDisplaySignRequestHandler.java12
-rw-r--r--BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/MultiInstanceHandler.java49
-rw-r--r--BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/QuitHandler.java37
-rw-r--r--BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/WebServiceSignRequestHandler.java24
-rw-r--r--BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java5
-rw-r--r--BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTAL.java2
-rw-r--r--BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTALFactory.java5
-rw-r--r--BKULocalApp/src/main/java/at/gv/egiz/bku/local/app/BKULauncher.java2
-rw-r--r--smcc/src/main/java/at/gv/egiz/smcc/AbstractSignatureCard.java2
-rw-r--r--smcc/src/main/java/at/gv/egiz/smcc/util/SMCCHelper.java6
-rw-r--r--smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java21
-rw-r--r--smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/InfoBoxReadRequestHandler.java5
-rw-r--r--smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SMCCSTALRequestHandler.java2
15 files changed, 35 insertions, 162 deletions
diff --git a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUApplet.java b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUApplet.java
index 96c0e7eb..97b5869f 100644
--- a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUApplet.java
+++ b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUApplet.java
@@ -17,11 +17,10 @@
package at.gv.egiz.bku.online.applet;
import java.net.MalformedURLException;
+import java.net.URL;
import java.util.Locale;
import java.util.ResourceBundle;
-import java.util.logging.Level;
-import java.util.logging.Logger;
import javax.net.ssl.HttpsURLConnection;
import javax.swing.JApplet;
@@ -30,10 +29,6 @@ import org.apache.commons.logging.LogFactory;
import at.gv.egiz.bku.gui.BKUGUIFacade;
import at.gv.egiz.bku.gui.BKUGUIFactory;
-import at.gv.egiz.bku.smccstal.AbstractSMCCSTAL;
-import at.gv.egiz.stal.QuitRequest;
-
-import java.net.URL;
/**
* Note: all swing code is executed by the event dispatch thread (see
@@ -66,7 +61,6 @@ public class BKUApplet extends JApplet {
public void init() {
log.info("Welcome to MOCCA\n");
log.debug("Called init()");
- AbstractSMCCSTAL.addRequestHandler(QuitRequest.class, QuitHandler.getInstance());
HttpsURLConnection.setDefaultSSLSocketFactory(InternalSSLSocketFactory.getInstance());
String localeString = getMyAppletParameter(LOCALE_PARAM_KEY);
if (localeString != null) {
diff --git a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java
index 3f64de3d..f708826d 100644
--- a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java
+++ b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java
@@ -37,16 +37,15 @@ import at.gv.egiz.smcc.util.SMCCHelper;
import at.gv.egiz.stal.QuitRequest;
import at.gv.egiz.stal.STALRequest;
import at.gv.egiz.stal.STALResponse;
-import at.gv.egiz.stal.service.types.GetNextRequestResponseType;
-import at.gv.egiz.stal.service.types.GetNextRequestType;
-import at.gv.egiz.stal.service.types.ObjectFactory;
import at.gv.egiz.stal.service.STALPortType;
import at.gv.egiz.stal.service.STALService;
import at.gv.egiz.stal.service.types.ErrorResponseType;
+import at.gv.egiz.stal.service.types.GetNextRequestResponseType;
+import at.gv.egiz.stal.service.types.GetNextRequestType;
+import at.gv.egiz.stal.service.types.ObjectFactory;
import at.gv.egiz.stal.service.types.RequestType;
import at.gv.egiz.stal.service.types.ResponseType;
import at.gv.egiz.stal.util.STALTranslator;
-import java.applet.AppletContext;
public class BKUWorker extends AbstractSMCCSTAL implements Runnable,
ActionListener, SMCCSTALRequestHandler {
@@ -74,7 +73,7 @@ public class BKUWorker extends AbstractSMCCSTAL implements Runnable,
this.gui = gui;
this.parent = parent;
this.errorMessages = errorMessageBundle;
- QuitHandler.getInstance().registerHandlerInstance(this);
+ addRequestHandler(QuitRequest.class, this);
// register SignRequestHandler once we have a webservice port
}
@@ -87,7 +86,7 @@ public class BKUWorker extends AbstractSMCCSTAL implements Runnable,
protected BKUWorker(BKUGUIFacade gui, ResourceBundle errorMessageBundle) {
this.gui = gui;
this.errorMessages = errorMessageBundle;
- QuitHandler.getInstance().registerHandlerInstance(this);
+ addRequestHandler(QuitRequest.class, this);
}
private STALPortType getSTALPort() throws MalformedURLException {
@@ -252,7 +251,6 @@ public class BKUWorker extends AbstractSMCCSTAL implements Runnable,
if (signatureCard != null) {
signatureCard.disconnect(false);
}
- QuitHandler.getInstance().unregisterHandlerInstance(this);
sendRedirect();
}
@@ -383,11 +381,6 @@ public class BKUWorker extends AbstractSMCCSTAL implements Runnable,
}
@Override
- public SMCCSTALRequestHandler newInstance() {
- return this;
- }
-
- @Override
public boolean requireCard() {
return false;
}
diff --git a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/ExternalDisplaySignRequestHandler.java b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/ExternalDisplaySignRequestHandler.java
index a9bbc559..2ac1bc62 100644
--- a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/ExternalDisplaySignRequestHandler.java
+++ b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/ExternalDisplaySignRequestHandler.java
@@ -5,15 +5,16 @@
package at.gv.egiz.bku.online.applet;
-import at.gv.egiz.bku.smccstal.SMCCSTALRequestHandler;
-import at.gv.egiz.bku.smccstal.SignRequestHandler;
-import at.gv.egiz.stal.signedinfo.ReferenceType;
import java.applet.AppletContext;
import java.net.URL;
import java.util.List;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import at.gv.egiz.bku.smccstal.SignRequestHandler;
+import at.gv.egiz.stal.signedinfo.ReferenceType;
+
/**
*
* @author clemens
@@ -31,11 +32,6 @@ public class ExternalDisplaySignRequestHandler extends SignRequestHandler {
}
@Override
- public SMCCSTALRequestHandler newInstance() {
- return new ExternalDisplaySignRequestHandler(ctx, hashDataURL);
- }
-
- @Override
public void displayHashDataInputs(List<ReferenceType> signedReferences) throws Exception {
//TODO pass reference Id's to servlet (TODO servlet)
log.debug("displaying hashdata inputs at " + hashDataURL);
diff --git a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/MultiInstanceHandler.java b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/MultiInstanceHandler.java
deleted file mode 100644
index a07df559..00000000
--- a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/MultiInstanceHandler.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package at.gv.egiz.bku.online.applet;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import at.gv.egiz.bku.gui.BKUGUIFacade;
-import at.gv.egiz.bku.smccstal.SMCCSTALRequestHandler;
-import at.gv.egiz.smcc.SignatureCard;
-import at.gv.egiz.stal.QuitRequest;
-import at.gv.egiz.stal.STALRequest;
-import at.gv.egiz.stal.STALResponse;
-
-public abstract class MultiInstanceHandler implements SMCCSTALRequestHandler {
-
- private static Log log = LogFactory.getLog(MultiInstanceHandler.class);
-
- protected List<SMCCSTALRequestHandler> handlerList = new ArrayList<SMCCSTALRequestHandler>();
-
-
-
- protected MultiInstanceHandler() {
- }
-
- public void registerHandlerInstance(SMCCSTALRequestHandler handler) {
- handlerList.add(handler);
- }
-
- public void unregisterHandlerInstance(SMCCSTALRequestHandler handler) {
- handlerList.remove(handler);
- }
-
-
- @Override
- public void init(SignatureCard sc, BKUGUIFacade gui) {
- }
-
- @Override
- public SMCCSTALRequestHandler newInstance() {
- return this;
- }
-
- @Override
- public boolean requireCard() {
- return false;
- }
-}
diff --git a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/QuitHandler.java b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/QuitHandler.java
deleted file mode 100644
index ab07e1a8..00000000
--- a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/QuitHandler.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package at.gv.egiz.bku.online.applet;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import at.gv.egiz.bku.smccstal.SMCCSTALRequestHandler;
-import at.gv.egiz.stal.QuitRequest;
-import at.gv.egiz.stal.STALRequest;
-import at.gv.egiz.stal.STALResponse;
-
-public class QuitHandler extends MultiInstanceHandler {
-
- private static Log log = LogFactory.getLog(QuitHandler.class);
-
- private static QuitHandler instance = new QuitHandler();
-
- private QuitHandler() {
- }
-
- public static QuitHandler getInstance() {
- return instance;
- }
-
- @Override
- public STALResponse handleRequest(STALRequest request) {
- if (request instanceof QuitRequest) {
- log.info("Received QuitCommand");
- for (SMCCSTALRequestHandler handler : handlerList) {
- handler.handleRequest(request);
- }
- } else {
- log.error("Unexpected request to handle: " + request);
- }
- return null;
- }
-
-}
diff --git a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/WebServiceSignRequestHandler.java b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/WebServiceSignRequestHandler.java
index 4a87b8b5..b417fd33 100644
--- a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/WebServiceSignRequestHandler.java
+++ b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/WebServiceSignRequestHandler.java
@@ -16,24 +16,25 @@
*/
package at.gv.egiz.bku.online.applet;
-import at.gv.egiz.bku.smccstal.SMCCSTALRequestHandler;
-import at.gv.egiz.bku.smccstal.SignRequestHandler;
-import at.gv.egiz.stal.HashDataInput;
-import at.gv.egiz.stal.impl.ByteArrayHashDataInput;
-import at.gv.egiz.stal.service.STALPortType;
-import at.gv.egiz.stal.service.types.GetHashDataInputResponseType;
-import at.gv.egiz.stal.service.types.GetHashDataInputType;
-import at.gv.egiz.stal.signedinfo.DigestMethodType;
-import at.gv.egiz.stal.signedinfo.ReferenceType;
import java.security.DigestException;
import java.security.MessageDigest;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import at.gv.egiz.bku.smccstal.SignRequestHandler;
+import at.gv.egiz.stal.HashDataInput;
+import at.gv.egiz.stal.impl.ByteArrayHashDataInput;
+import at.gv.egiz.stal.service.STALPortType;
+import at.gv.egiz.stal.service.types.GetHashDataInputResponseType;
+import at.gv.egiz.stal.service.types.GetHashDataInputType;
+import at.gv.egiz.stal.signedinfo.DigestMethodType;
+import at.gv.egiz.stal.signedinfo.ReferenceType;
+
/**
* @author clemens
*/
@@ -159,9 +160,4 @@ public class WebServiceSignRequestHandler extends SignRequestHandler {
gui.showHashDataInputDialog(hashDataInputs, this, "ok");
}
-
- @Override
- public SMCCSTALRequestHandler newInstance() {
- return new WebServiceSignRequestHandler(this.sessId, this.stalPort);
- }
}
diff --git a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java
index 4330f570..d5702e0e 100644
--- a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java
+++ b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java
@@ -113,11 +113,6 @@ public class LocalSignRequestHandler extends SignRequestHandler {
gui.showHashDataInputDialog(selectedHashDataInputs, this, "ok");
}
- @Override
- public SMCCSTALRequestHandler newInstance() {
- return new LocalSignRequestHandler();
- }
-
private ByteArrayHashDataInput getByteArrayHashDataInput(HashDataInput hashDataInput) throws IOException {
InputStream hdIs = hashDataInput.getHashDataInput();
diff --git a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTAL.java b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTAL.java
index 4bc921aa..1bbb2e3c 100644
--- a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTAL.java
+++ b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTAL.java
@@ -27,7 +27,7 @@ public class SMCCSTAL extends BKUWorker {
public List<STALResponse> handleRequest(List<STALRequest> requestList) {
signatureCard = null;
List<STALResponse> responses = super.handleRequest(requestList);
- //container.setVisible(false);
+ // container.setVisible(false);
return responses;
}
diff --git a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTALFactory.java b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTALFactory.java
index c5736648..e1d434e3 100644
--- a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTALFactory.java
+++ b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTALFactory.java
@@ -27,9 +27,6 @@ import javax.swing.WindowConstants;
import at.gv.egiz.bku.gui.BKUGUIFacade;
import at.gv.egiz.bku.gui.BKUGUIFactory;
import at.gv.egiz.bku.online.applet.BKUApplet;
-import at.gv.egiz.bku.online.applet.QuitHandler;
-import at.gv.egiz.bku.smccstal.AbstractSMCCSTAL;
-import at.gv.egiz.stal.QuitRequest;
import at.gv.egiz.stal.STAL;
import at.gv.egiz.stal.STALFactory;
@@ -39,7 +36,7 @@ public class SMCCSTALFactory implements STALFactory {
@Override
public STAL createSTAL() {
- AbstractSMCCSTAL.addRequestHandler(QuitRequest.class, QuitHandler.getInstance());
+
SMCCSTAL stal;
JDialog dialog;
ResourceBundle resourceBundle;
diff --git a/BKULocalApp/src/main/java/at/gv/egiz/bku/local/app/BKULauncher.java b/BKULocalApp/src/main/java/at/gv/egiz/bku/local/app/BKULauncher.java
index 54d595fa..23a893b4 100644
--- a/BKULocalApp/src/main/java/at/gv/egiz/bku/local/app/BKULauncher.java
+++ b/BKULocalApp/src/main/java/at/gv/egiz/bku/local/app/BKULauncher.java
@@ -181,9 +181,7 @@ public class BKULauncher implements BKUControllerInterface {
* @param args
*/
public static void main(String[] args) {
-
try {
-
BKULauncher launcher = new BKULauncher();
launcher.initStart();
launcher.checkConfig(args);
diff --git a/smcc/src/main/java/at/gv/egiz/smcc/AbstractSignatureCard.java b/smcc/src/main/java/at/gv/egiz/smcc/AbstractSignatureCard.java
index 7f3a3b1c..77a3e2ea 100644
--- a/smcc/src/main/java/at/gv/egiz/smcc/AbstractSignatureCard.java
+++ b/smcc/src/main/java/at/gv/egiz/smcc/AbstractSignatureCard.java
@@ -267,7 +267,7 @@ public abstract class AbstractSignatureCard implements SignatureCard {
if (card_ != null) {
try {
card_.disconnect(reset);
- } catch (CardException e) {
+ } catch (Exception e) {
log.info("Error while resetting card", e);
}
}
diff --git a/smcc/src/main/java/at/gv/egiz/smcc/util/SMCCHelper.java b/smcc/src/main/java/at/gv/egiz/smcc/util/SMCCHelper.java
index 3d1fd7c7..15971497 100644
--- a/smcc/src/main/java/at/gv/egiz/smcc/util/SMCCHelper.java
+++ b/smcc/src/main/java/at/gv/egiz/smcc/util/SMCCHelper.java
@@ -49,11 +49,11 @@ public class SMCCHelper {
update();
}
- public void update() {
+ public synchronized void update() {
update(-1);
}
- public void update(int sleep) {
+ public synchronized void update(int sleep) {
SignatureCardFactory factory = SignatureCardFactory.getInstance();
if (useSWCard) {
try {
@@ -113,7 +113,7 @@ public class SMCCHelper {
}
}
- public SignatureCard getSignatureCard(Locale locale) {
+ public synchronized SignatureCard getSignatureCard(Locale locale) {
if (signatureCard != null) {
signatureCard.setLocale(locale);
}
diff --git a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java
index b48388db..cf524737 100644
--- a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java
+++ b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java
@@ -37,19 +37,17 @@ import at.gv.egiz.stal.SignRequest;
public abstract class AbstractSMCCSTAL implements STAL {
private static Log log = LogFactory.getLog(AbstractSMCCSTAL.class);
-
+
public final static int DEFAULT_MAX_RETRIES = 3;
protected Locale locale = Locale.getDefault();
- // protected SMCCHelper smccHelper = new SMCCHelper();
protected SignatureCard signatureCard = null;
- protected static Map<String, SMCCSTALRequestHandler> handlerMap = new HashMap<String, SMCCSTALRequestHandler>();
-
+ protected Map<String, SMCCSTALRequestHandler> handlerMap = new HashMap<String, SMCCSTALRequestHandler>();
+
protected int maxRetries = DEFAULT_MAX_RETRIES;
- static {
+ protected AbstractSMCCSTAL() {
addRequestHandler(InfoboxReadRequest.class, new InfoBoxReadRequestHandler());
- // addRequestHandler(SignRequest.class, new SignRequestHandler());
}
/**
@@ -72,7 +70,7 @@ public abstract class AbstractSMCCSTAL implements STAL {
log.info("Processing: " + request.getClass());
int retryCounter = 0;
while (retryCounter < maxRetries) {
- log.info("Number of retries: "+retryCounter);
+ log.info("Number of retries: " + retryCounter);
SMCCSTALRequestHandler handler = null;
handler = handlerMap.get(request.getClass().getSimpleName());
if (handler != null) {
@@ -83,7 +81,6 @@ public abstract class AbstractSMCCSTAL implements STAL {
}
}
try {
- handler = handler.newInstance();
handler.init(signatureCard, getGUI());
STALResponse response = handler.handleRequest(request);
if (response != null) {
@@ -91,7 +88,7 @@ public abstract class AbstractSMCCSTAL implements STAL {
log.info("Got an error response");
ErrorResponse err = (ErrorResponse) response;
if (err.getErrorCode() == 6001) {
- retryCounter = Integer.MAX_VALUE-1;
+ retryCounter = Integer.MAX_VALUE - 1;
}
if (++retryCounter < maxRetries) {
log.info("Retrying");
@@ -128,13 +125,13 @@ public abstract class AbstractSMCCSTAL implements STAL {
return responseList;
}
- public static void addRequestHandler(Class<? extends STALRequest> id,
+ public void addRequestHandler(Class<? extends STALRequest> id,
SMCCSTALRequestHandler handler) {
log.debug("Registering STAL request handler: " + id.getSimpleName());
handlerMap.put(id.getSimpleName(), handler);
}
- public static SMCCSTALRequestHandler getRequestHandler(
+ public SMCCSTALRequestHandler getRequestHandler(
Class<? extends STALRequest> request) {
return handlerMap.get(request.getSimpleName());
}
@@ -150,5 +147,5 @@ public abstract class AbstractSMCCSTAL implements STAL {
public void setMaxRetries(int maxRetries) {
this.maxRetries = maxRetries;
}
-
+
}
diff --git a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/InfoBoxReadRequestHandler.java b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/InfoBoxReadRequestHandler.java
index 25085b16..b48d6d50 100644
--- a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/InfoBoxReadRequestHandler.java
+++ b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/InfoBoxReadRequestHandler.java
@@ -133,9 +133,4 @@ public class InfoBoxReadRequestHandler extends AbstractRequestHandler implements
}
return new String(gui.getPin());
}
-
- @Override
- public SMCCSTALRequestHandler newInstance() {
- return new InfoBoxReadRequestHandler();
- }
}
diff --git a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SMCCSTALRequestHandler.java b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SMCCSTALRequestHandler.java
index 6f303f76..94ab7a5b 100644
--- a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SMCCSTALRequestHandler.java
+++ b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SMCCSTALRequestHandler.java
@@ -30,6 +30,4 @@ public interface SMCCSTALRequestHandler {
public boolean requireCard();
- public SMCCSTALRequestHandler newInstance();
-
}