//package org.genedb.web.mvc.controller.download; // //import java.util.List; //import java.util.Map; // //import org.apache.log4j.Logger; //import org.genedb.db.domain.objects.PolypeptideRegion; //import org.genedb.db.domain.objects.PolypeptideRegionGroup; //import org.genedb.web.mvc.model.DbXRefDTO; //import org.genedb.web.mvc.model.FeatureCvTermDTO; //import org.genedb.web.mvc.model.FeatureDTO; //import org.genedb.web.mvc.model.TranscriptDTO; //import org.springframework.util.StringUtils; // //import com.google.common.collect.Lists; // //public class FeatureDTOAdaptor { // // private static final Logger logger = Logger.getLogger(FeatureDTOAdaptor.class); // // private FeatureDTO dto; // // private String fieldDelim; // // private Map<String, List<String>> mapping; // // public FeatureDTOAdaptor(FeatureDTO dto, String fieldDelim) { // this.dto = dto; // this.fieldDelim = fieldDelim; // mapping = dto.getSynonymsByTypes(); // } // // // public String getEc() { // List<String> xrefs = Lists.newArrayList(); // for (DbXRefDTO dbxref : dto.getDbXRefDTOs()) { // if (dbxref.getDbName().equals("EC")) { // xrefs.add(dbxref.getDbName() + ":" + dbxref.getAccession()); // } // } // return StringUtils.collectionToDelimitedString(xrefs, fieldDelim); // } // // public String getGO() { // List<FeatureCvTermDTO> goFeatureCvTerms = Lists.newArrayList(); // goFeatureCvTerms.addAll(dto.getGoBiologicalProcesses()); // goFeatureCvTerms.addAll(dto.getGoCellularComponents()); // goFeatureCvTerms.addAll(dto.getGoMolecularFunctions()); // List<String> ids = Lists.newArrayList(); // for (FeatureCvTermDTO fctDTO : goFeatureCvTerms) { // ids.add("GO:" + fctDTO.getTypeAccession()); // } // return StringUtils.collectionToDelimitedString(goFeatureCvTerms, fieldDelim); // } // // public String getInterpro() { // List<String> accessions = Lists.newArrayList(); // if (dto instanceof TranscriptDTO) { // List<PolypeptideRegionGroup> regions = ((TranscriptDTO)dto).getDomainInformation(); // for (PolypeptideRegionGroup region : regions) { // accessions.add(region.getUniqueName()); // for (PolypeptideRegion polypeptideRegion : region.getSubfeatures()) { // accessions.add(polypeptideRegion.getUniqueName()); // } // } // } // // return StringUtils.collectionToDelimitedString(accessions, fieldDelim); // } // // public String getPfam() { // List<String> accessions2 = Lists.newArrayList(); // if (dto instanceof TranscriptDTO) { // List<PolypeptideRegionGroup> regions2 = ((TranscriptDTO)dto).getDomainInformation(); // for (PolypeptideRegionGroup region : regions2) { // accessions2.add(region.getUniqueName()); // for (PolypeptideRegion polypeptideRegion : region.getSubfeatures()) { // accessions2.add(polypeptideRegion.getUniqueName()); // } // // } // } // return StringUtils.collectionToDelimitedString(accessions2, fieldDelim); // } // // public String getPrevIds() { // return StringUtils.collectionToDelimitedString(mapping.get("Previous systematic id"), fieldDelim); // } // // public String getSynonyms() { // return StringUtils.collectionToDelimitedString(mapping.get("Synonym"), fieldDelim); // } // // public String getOrganism() { // return dto.getOrganismCommonName(); // } // // public String getGpiAnchor() { // return dto.getAlgorithmData().get("DGPI").toString(); // } // // public String getType() { // return dto.getTypeDescription(); // } // // public String getIsoelectricPoint() { // if (dto instanceof TranscriptDTO) { // return ((TranscriptDTO)dto).getPolypeptideProperties().getIsoelectricPoint() + fieldDelim; // } // return null; // } // // public String getLocation() { // return dto.getLocation() ; // } // // public String getMolWeight() { // if (dto instanceof TranscriptDTO) { // return ((TranscriptDTO)dto).getPolypeptideProperties().getMass() + fieldDelim; // } // return null; // } // // public String getNumTM() { // return (String) dto.getAlgorithmData().get("TMHMM") + fieldDelim; // } // // public String getPrimaryName() { // return dto.getGeneName() + fieldDelim; // } // // public String getProduct() { // List<String> list = Lists.newArrayList(); // for (FeatureCvTermDTO fct : dto.getProducts()) { // list.add(fct.getTypeName()); // } // return StringUtils.collectionToDelimitedString(list, fieldDelim); // } // // public String isSigP() { // return dto.getAlgorithmData().containsKey("SignalP") ? "true" : ""; // } // // public String getContig() { // return dto.getTopLevelFeatureDisplayName() + fieldDelim; // } // // public String getId() { // return dto.getUniqueName() + fieldDelim; // } //} //