* @author JimP
*
*/
-public class Alignment implements AlignmentI
+public class Alignment implements AlignmentI, AutoCloseable
{
private Alignment dataset;
/**
* Make a new alignment from an array of SeqCigars
*
- * @param alseqs
+ * @param seqs
+ * SeqCigar[]
*/
public Alignment(SeqCigar[] alseqs)
{
}
@Override
- public void finalize() throws Throwable
+ public void close()
{
if (getDataset() != null)
{
- getDataset().removeAlignmentRef();
+ try
+ {
+ getDataset().removeAlignmentRef();
+ } catch (Throwable e)
+ {
+ e.printStackTrace();
+ }
}
nullReferences();
- super.finalize();
}
/**
return null;
}
- private static final SequenceGroup[] noGroups = new SequenceGroup[0];
-
- private ArrayList<SequenceGroup> temp = new ArrayList<>();
-
/*
* (non-Javadoc)
*
@Override
public SequenceGroup[] findAllGroups(SequenceI s)
{
+ ArrayList<SequenceGroup> temp = new ArrayList<>();
synchronized (groups)
{
int gSize = groups.size();
- if (gSize == 0)
- {
- return noGroups;
- }
- temp.clear();
for (int i = 0; i < gSize; i++)
{
SequenceGroup sg = groups.get(i);
}
}
- @Override
- public void resetColors()
- {
- for (int i = getHeight(); --i >= 0;)
- {
- sequences.get(i).resetColors();
- }
- // if (dataset != null)
- // {
- // dataset.resetColors();
- // }
- }
-
}