summaryrefslogtreecommitdiffstats
path: root/base/ocsp/src/org/dogtagpki/server/ocsp/rest/OCSPApplication.java
diff options
context:
space:
mode:
Diffstat (limited to 'base/ocsp/src/org/dogtagpki/server/ocsp/rest/OCSPApplication.java')
-rw-r--r--base/ocsp/src/org/dogtagpki/server/ocsp/rest/OCSPApplication.java77
1 files changed, 77 insertions, 0 deletions
diff --git a/base/ocsp/src/org/dogtagpki/server/ocsp/rest/OCSPApplication.java b/base/ocsp/src/org/dogtagpki/server/ocsp/rest/OCSPApplication.java
new file mode 100644
index 000000000..1be534978
--- /dev/null
+++ b/base/ocsp/src/org/dogtagpki/server/ocsp/rest/OCSPApplication.java
@@ -0,0 +1,77 @@
+package org.dogtagpki.server.ocsp.rest;
+
+import java.util.LinkedHashSet;
+import java.util.Set;
+
+import javax.ws.rs.core.Application;
+
+import org.dogtagpki.server.rest.ACLInterceptor;
+import org.dogtagpki.server.rest.AccountService;
+import org.dogtagpki.server.rest.AuditService;
+import org.dogtagpki.server.rest.AuthMethodInterceptor;
+import org.dogtagpki.server.rest.GroupService;
+import org.dogtagpki.server.rest.SecurityDomainService;
+import org.dogtagpki.server.rest.SelfTestService;
+import org.dogtagpki.server.rest.SystemCertService;
+import org.dogtagpki.server.rest.SystemConfigService;
+import org.dogtagpki.server.rest.UserService;
+
+import com.netscape.certsrv.apps.CMS;
+import com.netscape.certsrv.base.EBaseException;
+import com.netscape.certsrv.base.IConfigStore;
+import com.netscape.certsrv.base.PKIException;
+
+public class OCSPApplication extends Application {
+
+ private Set<Object> singletons = new LinkedHashSet<Object>();
+ private Set<Class<?>> classes = new LinkedHashSet<Class<?>>();
+
+ public OCSPApplication() {
+
+ // account
+ classes.add(AccountService.class);
+
+ // audit
+ classes.add(AuditService.class);
+
+ // installer
+ classes.add(SystemConfigService.class);
+
+ // security domain
+ IConfigStore cs = CMS.getConfigStore();
+ try {
+ boolean standalone = cs.getBoolean("ocsp.standalone", false);
+ if (standalone) {
+ classes.add(SecurityDomainService.class);
+ }
+ } catch (EBaseException e) {
+ CMS.debug(e);
+ throw new RuntimeException(e);
+ }
+
+ // selftests
+ classes.add(SelfTestService.class);
+
+ // user and group management
+ classes.add(GroupService.class);
+ classes.add(UserService.class);
+
+ // system certs
+ classes.add(SystemCertService.class);
+
+ // exception mapper
+ classes.add(PKIException.Mapper.class);
+
+ // interceptors
+ singletons.add(new AuthMethodInterceptor());
+ singletons.add(new ACLInterceptor());
+ }
+
+ public Set<Class<?>> getClasses() {
+ return classes;
+ }
+
+ public Set<Object> getSingletons() {
+ return singletons;
+ }
+}