aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/knowcenter/wag/egov/egiz/ldap/api/LDAPAPIFactory.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/at/knowcenter/wag/egov/egiz/ldap/api/LDAPAPIFactory.java')
-rw-r--r--src/main/java/at/knowcenter/wag/egov/egiz/ldap/api/LDAPAPIFactory.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/main/java/at/knowcenter/wag/egov/egiz/ldap/api/LDAPAPIFactory.java b/src/main/java/at/knowcenter/wag/egov/egiz/ldap/api/LDAPAPIFactory.java
new file mode 100644
index 0000000..ba58908
--- /dev/null
+++ b/src/main/java/at/knowcenter/wag/egov/egiz/ldap/api/LDAPAPIFactory.java
@@ -0,0 +1,30 @@
+package at.knowcenter.wag.egov.egiz.ldap.api;
+
+import iaik.security.ecc.provider.ECCProvider;
+import at.knowcenter.wag.egov.egiz.sig.LDAPAPI;
+
+/**
+ * @author <a href="mailto:thomas.knall@iaik.tugraz.at">Thomas Knall</a>
+ */
+public abstract class LDAPAPIFactory {
+
+ private static LDAPAPIFactory ldapAPIfactoryInstance;
+
+ protected LDAPAPIFactory() {
+ ECCProvider.addAsProvider();
+ }
+
+ public static synchronized LDAPAPIFactory getInstance() {
+ if (ldapAPIfactoryInstance == null) {
+ ldapAPIfactoryInstance = new LDAPAPIFactoryImpl();
+ }
+ return ldapAPIfactoryInstance;
+ }
+
+ public synchronized LDAPAPI createLDAPAPI() throws LDAPAPIException {
+ return createLDAPAPI(null);
+ }
+
+ public abstract LDAPAPI createLDAPAPI(String implClassURI) throws LDAPAPIException;
+
+}