private ManageableSecurity getOrLoadSecurity(final ExternalId ticker) { final SecuritySearchResult underlyingSearch = getToolContext().getSecurityMaster().search(new SecuritySearchRequest(ticker)); switch (underlyingSearch.getDocuments().size()) { case 0: s_logger.debug("Loading security for underlying {}", ticker); return loadSecurity(ticker); case 1: return underlyingSearch.getSingleSecurity(); default: // Duplicate securities in the master s_logger.info( "Multiple securities matched search for ticker {}. Using the first. {}", ticker, underlyingSearch); return underlyingSearch.getFirstSecurity(); } }