001package co.codewizards.cloudstore.ls.rest.server; 002 003import javax.ws.rs.ApplicationPath; 004 005import org.glassfish.jersey.server.ResourceConfig; 006import org.slf4j.Logger; 007import org.slf4j.LoggerFactory; 008 009import co.codewizards.cloudstore.ls.core.provider.JavaNativeMessageBodyReader; 010import co.codewizards.cloudstore.ls.core.provider.JavaNativeMessageBodyWriter; 011import co.codewizards.cloudstore.ls.core.provider.JavaNativeWithObjectRefMessageBodyReader; 012import co.codewizards.cloudstore.ls.core.provider.JavaNativeWithObjectRefMessageBodyWriter; 013import co.codewizards.cloudstore.ls.rest.server.auth.AuthFilter; 014import co.codewizards.cloudstore.ls.rest.server.service.ClassInfoService; 015import co.codewizards.cloudstore.ls.rest.server.service.InverseServiceRequestService; 016import co.codewizards.cloudstore.ls.rest.server.service.InverseServiceResponseService; 017import co.codewizards.cloudstore.ls.rest.server.service.InvokeMethodService; 018import co.codewizards.cloudstore.ls.rest.server.service.RepoInfoService; 019import co.codewizards.cloudstore.ls.rest.server.service.TestService; 020 021/** 022 * @author Marco หงุ่ยตระกูล-Schulze - marco at nightlabs dot de 023 */ 024@ApplicationPath("LocalServerRest") 025public class LocalServerRest extends ResourceConfig { 026 private static final Logger logger = LoggerFactory.getLogger(LocalServerRest.class); 027 028 static { 029 logger.debug("<static_init>: Class loaded."); 030 } 031 032 { 033 logger.debug("<init>: Instance created."); 034 035 registerClasses( 036 // BEGIN services 037 ClassInfoService.class, 038 InverseServiceRequestService.class, 039 InverseServiceResponseService.class, 040 InvokeMethodService.class, 041 RepoInfoService.class, 042 TestService.class, 043 // END services 044 045 // BEGIN providers 046 // providers are not services (they are infrastructure), but they are registered the same way. 047 AuthFilter.class, 048 JavaNativeMessageBodyReader.class, 049 JavaNativeMessageBodyWriter.class, 050 CloudStoreJaxbContextResolver.class, 051 DefaultExceptionMapper.class 052 // END providers 053 ); 054 055 register(new LocalServerRestBinder()); 056 057 final ObjectRefConverterFactoryImpl objectRefConverterFactory = new ObjectRefConverterFactoryImpl(); 058 register(new JavaNativeWithObjectRefMessageBodyReader(objectRefConverterFactory)); 059 register(new JavaNativeWithObjectRefMessageBodyWriter(objectRefConverterFactory)); 060 } 061}