diff options
Diffstat (limited to 'base/kra/src/org/dogtagpki/server/kra/rest/KRAApplication.java')
-rw-r--r-- | base/kra/src/org/dogtagpki/server/kra/rest/KRAApplication.java | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/base/kra/src/org/dogtagpki/server/kra/rest/KRAApplication.java b/base/kra/src/org/dogtagpki/server/kra/rest/KRAApplication.java new file mode 100644 index 000000000..ea8a6c038 --- /dev/null +++ b/base/kra/src/org/dogtagpki/server/kra/rest/KRAApplication.java @@ -0,0 +1,82 @@ +package org.dogtagpki.server.kra.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 KRAApplication extends Application { + + private Set<Object> singletons = new LinkedHashSet<Object>(); + private Set<Class<?>> classes = new LinkedHashSet<Class<?>>(); + + public KRAApplication() { + + // 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("kra.standalone", false); + if (standalone) { + classes.add(SecurityDomainService.class); + } + } catch (EBaseException e) { + CMS.debug(e); + throw new RuntimeException(e); + } + + // keys and keyrequests + classes.add(KeyService.class); + classes.add(KeyRequestService.class); + + // 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; + } + +} |