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.MessageFormatInterceptor; import org.dogtagpki.server.rest.SecurityDomainService; import org.dogtagpki.server.rest.SelfTestService; import org.dogtagpki.server.rest.SystemCertService; 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 singletons = new LinkedHashSet(); private Set> classes = new LinkedHashSet>(); public OCSPApplication() { // account classes.add(AccountService.class); // audit classes.add(AuditService.class); // installer classes.add(OCSPInstallerService.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()); singletons.add(new MessageFormatInterceptor()); } public Set> getClasses() { return classes; } public Set getSingletons() { return singletons; } }