X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Ffts%2Fservice%2Funiprot%2FUniProtFTSRestClient.java;h=57689f9cb2acfaf8f1f9a40c6282e2cc93aa4fba;hb=e1976b4025f648431974e7ddcb2be93115688abd;hp=310b1c67066cd64665b1c8ac33655130368fc222;hpb=ce26ffcae5e876cf4127173c92f0eddffc9830da;p=jalview.git diff --git a/src/jalview/fts/service/uniprot/UniProtFTSRestClient.java b/src/jalview/fts/service/uniprot/UniProtFTSRestClient.java index 310b1c6..57689f9 100644 --- a/src/jalview/fts/service/uniprot/UniProtFTSRestClient.java +++ b/src/jalview/fts/service/uniprot/UniProtFTSRestClient.java @@ -58,8 +58,15 @@ public class UniProtFTSRestClient extends FTSRestClient int responseSize = (uniportRestRequest.getResponseSize() == 0) ? getDefaultResponsePageSize() : uniportRestRequest.getResponseSize(); - String query = uniportRestRequest.getFieldToSearchBy() + ":" - + uniportRestRequest.getSearchTerm(); + int offSet = (uniportRestRequest.getOffSet() == 0) ? getDefaultResponsePageSize() + : uniportRestRequest.getOffSet(); + + String query = uniportRestRequest.getFieldToSearchBy() + .equalsIgnoreCase("Search All") ? uniportRestRequest + .getSearchTerm() + : uniportRestRequest.getFieldToSearchBy() + ":" + + uniportRestRequest.getSearchTerm(); + // + (uniportRestRequest.isAllowUnpublishedEntries() ? "" // : " AND status:REL"); // System.out.println(">>>>> Query : " + query); @@ -69,6 +76,8 @@ public class UniProtFTSRestClient extends FTSRestClient .queryParam("format", "tab") .queryParam("columns", wantedFields) .queryParam("limit", String.valueOf(responseSize)) + .queryParam("offset", String.valueOf(offSet)) + .queryParam("sort", "score") .queryParam("query", query); // Execute the REST request ClientResponse clientResponse = webResource @@ -115,6 +124,38 @@ public class UniProtFTSRestClient extends FTSRestClient return searchResult; } + /** + * Takes a collection of FTSDataColumnI and converts its 'code' values into a + * tab delimited string. + * + * @param dataColumnFields + * the collection of FTSDataColumnI to process + * @return the generated comma delimited string from the supplied + * FTSDataColumnI collection + */ + private String getDataColumnsFieldsAsTabDelimitedString( + Collection dataColumnFields) + { + String result = ""; + if (dataColumnFields != null && !dataColumnFields.isEmpty()) + { + StringBuilder returnedFields = new StringBuilder(); + for (FTSDataColumnI field : dataColumnFields) + { + if (field.getName().equalsIgnoreCase("Uniprot Id")) + { + returnedFields.append("\t").append("Entry"); + } + else + { + returnedFields.append("\t").append(field.getName()); + } + } + returnedFields.deleteCharAt(0); + result = returnedFields.toString(); + } + return result; + } public static FTSData getFTSData(String tabDelimittedDataStr, FTSRestRequest request) { @@ -217,7 +258,7 @@ public class UniProtFTSRestClient extends FTSRestClient @Override public String getColumnDataConfigFileName() { - return getResourceFile("fts/uniprot_data_columns.conf"); + return "/fts/uniprot_data_columns.txt"; } }