import jalview.fts.api.FTSRestClientI;
import java.io.BufferedReader;
-import java.io.FileReader;
import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Objects;
public void parseDataColumnsConfigFile()
{
String fileName = getColumnDataConfigFileName();
- try (BufferedReader br = new BufferedReader(new FileReader(fileName)))
+
+ InputStream in = getClass().getResourceAsStream(fileName);
+
+ try (BufferedReader br = new BufferedReader(new InputStreamReader(in)))
{
String line;
while ((line = br.readLine()) != null)
@Override
public String getCode()
{
- return lineData[1];
+ return lineData[1].split("\\|")[0];
+ }
+
+ @Override
+ public String getAltCode()
+ {
+ return lineData[1].split("\\|").length > 1 ? lineData[1]
+ .split("\\|")[1] : getCode();
}
@Override
e.printStackTrace();
}
}
+ try
+ {
+ this.primaryKeyColumn = getDataColumnByNameOrCode(primaryKeyColumnCode);
+ } catch (Exception e)
+ {
+ e.printStackTrace();
+ }
} catch (IOException e)
{
e.printStackTrace();
return result;
}
- /**
- * 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
- */
- public String getDataColumnsFieldsAsTabDelimitedString(
- Collection<FTSDataColumnI> dataColumnFields)
- {
- String result = "";
- if (dataColumnFields != null && !dataColumnFields.isEmpty())
- {
- StringBuilder returnedFields = new StringBuilder();
- for (FTSDataColumnI field : dataColumnFields)
- {
- returnedFields.append("\t").append(field.getName());
- }
- returnedFields.deleteCharAt(0);
- result = returnedFields.toString();
- }
- return result;
- }
@Override
public Collection<FTSDataColumnI> getAllFTSDataColumns()
@Override
public FTSDataColumnI getPrimaryKeyColumn()
{
+ if (defaulDisplayedDataColumns == null
+ || defaulDisplayedDataColumns.isEmpty())
+ {
+ parseDataColumnsConfigFile();
+ }
return primaryKeyColumn;
}
protected String getResourceFile(String fileName)
{
- ClassLoader classLoader = getClass().getClassLoader();
String result = "";
try
{
- result = classLoader.getResource(fileName).getFile();
+ result = getClass().getResource(fileName).getFile();
} catch (Exception e)
{
e.printStackTrace();
@Override
public int getDefaultResponsePageSize()
{
+ if (dataColumns == null || dataColumns.isEmpty())
+ {
+ parseDataColumnsConfigFile();
+ }
return defaultResponsePageSize;
}