protected void doCommonConstructorStuff( DisplayableConcept[] conceptEntries, String[] badWords, String descriptionOfConcept) { this.conceptEntries = conceptEntries; this.badWords = badWords; this.descriptionOfConcept = descriptionOfConcept; schemeAndValuePairsToConceptEntries = new HashMap(); meaningsAndSynonymsToConceptEntries = new HashMap(); codeStringEquivalentToConceptEntries = new HashMap(); for (DisplayableConcept concept : conceptEntries) { { String codeValue = concept.getCodeValue(); String codingSchemeDesignator = concept.getCodingSchemeDesignator(); SchemeAndValuePair key = new SchemeAndValuePair(codeValue, codingSchemeDesignator); schemeAndValuePairsToConceptEntries.put(key, concept); String legacyCodingSchemeDesignator = concept.getLegacyCodingSchemeDesignator(); if (legacyCodingSchemeDesignator != null) { key = new SchemeAndValuePair(codeValue, legacyCodingSchemeDesignator); schemeAndValuePairsToConceptEntries.put(key, concept); } } { String codeMeaning = concept.getCodeMeaning(); String key = codeMeaning.toLowerCase(java.util.Locale.US); meaningsAndSynonymsToConceptEntries.put(key, concept); } { String codeStringEquivalent = concept.getCodeStringEquivalent(); if (codeStringEquivalent != null) { codeStringEquivalentToConceptEntries.put( codeStringEquivalent /* NOT lower case; want exact match*/, concept); String key = codeStringEquivalent.toLowerCase(java.util.Locale.US); meaningsAndSynonymsToConceptEntries.put(key, concept); } } { String[] synonyms = concept.getSynonyms(); if (synonyms != null) { for (String synonym : synonyms) { String key = synonym.toLowerCase(java.util.Locale.US); meaningsAndSynonymsToConceptEntries.put(key, concept); } } } { String key = concept.getConceptUniqueIdentifier(); conceptUniqueIdentifierToConceptEntries.put(key, concept); } { String key = concept.getConceptIdentifier(); conceptIdentifierToConceptEntries.put(key, concept); } } }