package doser.server.actions.tabledisambiguation; import java.util.LinkedList; import java.util.List; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.ResponseBody; import doser.entitydisambiguation.table.dpo.ColumnResponseItem; import doser.entitydisambiguation.table.dpo.TableColumn; import doser.entitydisambiguation.table.dpo.TableDisambiguationRequest; import doser.entitydisambiguation.table.dpo.TableDisambiguationResponse; import doser.entitydisambiguation.table.logic.TableDisambiguationMainService; import doser.entitydisambiguation.table.logic.TableDisambiguationTask; @Controller @RequestMapping("/disambiguation/disambiguatetable-proxy") public class TableDisambiguationServiceProxy { @RequestMapping(method = RequestMethod.POST) public @ResponseBody TableDisambiguationResponse disambiguate( @RequestBody final TableDisambiguationRequest request) { final TableDisambiguationResponse response = new TableDisambiguationResponse(); final List<TableColumn> columnList = request.getColumnList(); response.setDocumentId(request.getDocumentId()); final List<TableDisambiguationTask> tasks = new LinkedList<TableDisambiguationTask>(); final TableDisambiguationMainService tablems = TableDisambiguationMainService .getInstance(); for (int i = 0; i < columnList.size(); i++) { final TableDisambiguationTask task = new TableDisambiguationTask( request.getDocumentId(), columnList.get(i).getCellList(), columnList.get(i).getTypeGroundtruth(), columnList.get(i) .getCellheader()); tasks.add(task); } final List<ColumnResponseItem> lst = tablems.disambiguate(tasks); response.setColumns(lst); return response; } }