All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.actelion.research.chem.io.pdb.converter.AminoAcidsLabeledContainer Maven / Gradle / Ivy

There is a newer version: 2024.12.1
Show newest version
package com.actelion.research.chem.io.pdb.converter;

import com.actelion.research.chem.IDCodeParser;
import com.actelion.research.chem.StereoMolecule;
import com.actelion.research.util.IO;

import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.List;

/**
 * AminoAcidsLabeledContainer
 *
 * The txt file was generated with com.actelion.research.chem.parsers.pdb.ProcessLabeledAminoAcids
 *
 * 

Copyright: Idorsia Pharmaceuticals Ltd., Inc. All Rights Reserved * This software is the proprietary information of Idorsia Pharmaceuticals, Ltd. * Use is subject to license terms.

* Created by korffmo1 on 13.04.18. */ public enum AminoAcidsLabeledContainer { // enum singleton pattern; INSTANCE; public static final int AMINO_ACIDS = 20; private HashMap hmAbbreviation_AminoAcidLabeled; private AminoAcidsLabeledContainer() { read(); } private void read() { try { InputStream inputStream= this.getClass().getResourceAsStream(ConstantsAminoAcidsLabeled.RESOURCE_AAS_LABELED); List li = IO.readLines2List(inputStream); inputStream.close(); // Remove comments. for (int i = li.size() - 1; i >= 0; i--) { if(li.get(i).startsWith("#")){ li.remove(i); } } IDCodeParser parser = new IDCodeParser(); hmAbbreviation_AminoAcidLabeled = new HashMap<>(); for (String line : li) { String [] arr = line.split("\t"); StereoMolecule mol = parser.getCompactMolecule(arr[0], arr[1]); String key = arr[3].toUpperCase(); AminoAcidLabeled aminoAcidLabeled = new AminoAcidLabeled(mol, arr[2], key); hmAbbreviation_AminoAcidLabeled.put(key, aminoAcidLabeled); } } catch(Exception e) { System.err.println("no Amino-Acid File detected!"); } } public AminoAcidLabeled get(String threeLetterCodeUpperCase) { return hmAbbreviation_AminoAcidLabeled.get(threeLetterCodeUpperCase); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy