public void executePipeline() { try { ServiceInfo info = locateServiceInfoFromParser(); IService<?, ?> service = info.getService(); Object requestObject = parser.getServiceRequest(info.getRequestClass()); Object responseObject = executePipeline(service, requestObject); parser.writeResponse(responseObject); } catch (Throwable e) { parser.writeErrorResponse(e); } }
private ServiceInfo locateServiceInfoFromParser() { ServiceDescriptor descriptor = parser.getServiceDescriptor(); IServiceLocator locator = new ServiceLocator(); return locator.getServiceInfo(descriptor); }