package aliview.sequences;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import aliview.utils.ArrayUtilities;
public class InMemorySequence extends BasicSequence{
private static final Logger logger = Logger.getLogger(FastFastaSequence.class);
public InMemorySequence(String name, String basesAsString) {
this(name, basesAsString.getBytes());
}
public InMemorySequence(String name, byte[] bytes) {
super();
// replace all . with -
if(bytes != null){
ArrayUtilities.replaceAll(bytes, (byte) '.', (byte) '-');
}
this.bases = new DefaultBases(bytes);
this.name = name;
}
public void setBases(byte[] bytes) {
logger.info("setnewbases");
this.bases = new DefaultBases(bytes);
translatedBases = null;
if(selectionModel == null){
createNewSelectionModel();
}
}
/*
public String getSimpleName(){
String formatted = StringUtils.substringAfter(this.name, "-");
formatted = StringUtils.substringAfter(formatted, "-");
formatted = StringUtils.substringAfter(formatted, "-");
if(formatted.length() == 0){
formatted = this.name;
}
return formatted;
}
public String toString(){
return getSimpleName();
}
public int compareTo(Sequence anotherSeq) {
return this.getSimpleName().compareTo(anotherSeq.getSimpleName());
}
*/
}