*/
package jalview.fts.core;
-import jalview.fts.api.FTSDataColumnI;
-import jalview.fts.api.FTSDataColumnI.FTSDataColumnGroupI;
-import jalview.fts.api.FTSRestClientI;
-import jalview.util.MessageManager;
-
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.util.Collection;
import java.util.Objects;
+import jalview.fts.api.FTSDataColumnI;
+import jalview.fts.api.FTSDataColumnI.FTSDataColumnGroupI;
+import jalview.fts.core.FTSDataColumnPreferences.PreferenceSource;
+import jalview.fts.service.threedbeacons.TDBeaconsFTSRestClient;
+import jalview.fts.api.FTSRestClientI;
+
/**
* Base class providing implementation for common methods defined in
* FTSRestClientI
private int defaultResponsePageSize = 100;
+ protected String mockQuery = null;
+
+ protected String mockResponse = null;
+
protected FTSRestClient()
{
"Couldn't find data column with name : " + nameOrCode);
}
+ public static void createMockFTSRestClient(FTSRestClient instance,String workingQuery,
+ String jsonResponse)
+ {
+ instance.setMock(workingQuery,jsonResponse);
+ }
+
@Override
public FTSDataColumnGroupI getDataColumnGroupById(String id)
throws Exception
break;
case 410:
- message = MessageManager.formatMessage(
- service + " rest services no longer available!");
+ message = service + " rest services no longer available!";
break;
case 403:
case 404:
return String.valueOf(code) + " " + message;
}
+ public static void unMock(FTSRestClient instance)
+ {
+ instance.mockQuery =null;
+ instance.mockResponse =null;
+ }
+
protected String getResourceFile(String fileName)
{
String result = "";
return defaultResponsePageSize;
}
+ protected void setMock(String workingQuery, String jsonResponse)
+ {
+ mockQuery=workingQuery;
+ mockResponse = jsonResponse;
+ }
+
+ protected boolean isMocked()
+ {
+ return mockQuery != null && mockResponse!=null;
+ }
+
+ @Override
+ public String[] getPreferencesColumnsFor(PreferenceSource source)
+ {
+ String[] columnNames = null;
+ switch (source)
+ {
+ case SEARCH_SUMMARY:
+ columnNames = new String[] { "", "Display", "Group" };
+ break;
+ default:
+ // non structure sources don't return any other kind of preferences columns
+ break;
+ }
+ return columnNames;
+ }
}