![JAR search and dependency download from the Maven repository](/logo.png)
com.aol.micro.server.servers.grizzly.GrizzlyApplicationFactory Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of micro-grizzly Show documentation
Show all versions of micro-grizzly Show documentation
Opinionated rest microservices
The newest version!
package com.aol.micro.server.servers.grizzly;
import java.util.List;
import lombok.AllArgsConstructor;
import org.pcollections.PStack;
import org.springframework.context.ApplicationContext;
import com.aol.micro.server.module.Environment;
import com.aol.micro.server.module.Module;
import com.aol.micro.server.module.ModuleDataExtractor;
import com.aol.micro.server.servers.ServerApplication;
import com.aol.micro.server.servers.ServerApplicationFactory;
import com.aol.micro.server.servers.model.AllData;
import com.aol.micro.server.servers.model.FilterData;
import com.aol.micro.server.servers.model.ServerData;
import com.aol.micro.server.servers.model.ServletData;
@AllArgsConstructor
public class GrizzlyApplicationFactory implements ServerApplicationFactory {
public ServerApplication createApp(final Module module, final ApplicationContext rootContext) {
ModuleDataExtractor extractor = new ModuleDataExtractor(module);
PStack resources = extractor.getRestResources(rootContext);
Environment environment = rootContext.getBean(Environment.class);
environment.assureModule(module);
String fullRestResource = "/" + module.getContext() + "/*";
ServerData serverData = new ServerData(environment.getModuleBean(module).getPort(),
resources,
rootContext, fullRestResource, module);
List filterDataList = extractor.createFilteredDataList(serverData);
List servletDataList = extractor.createServletDataList(serverData);
GrizzlyApplication app = new GrizzlyApplication(
new AllData(serverData,
filterDataList,
servletDataList,
module.getListeners(serverData),
module.getRequestListeners(serverData)));
return app;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy