Package com.opengamma.master.security

Examples of com.opengamma.master.security.SecuritySearchResult


   */
  protected ManageableSecurity writeSecurity(ManageableSecurity security) {
   
    ArgumentChecker.notNull(security, "security");
   
    SecuritySearchResult searchResult = lookupSecurity(security);

    ManageableSecurity foundSecurity = updateSecurityVersionIfFound(security, searchResult);

    if (foundSecurity != null) {
      return foundSecurity;
View Full Code Here


    ExternalIdSearch idSearch = new ExternalIdSearch(security.getExternalIdBundle())// match any one of the IDs
    searchReq.setVersionCorrection(VersionCorrection.ofVersionAsOf(Instant.now())); // valid now
    searchReq.setExternalIdSearch(idSearch);
    searchReq.setFullDetail(true);
    searchReq.setSortOrder(SecuritySearchSortOrder.VERSION_FROM_INSTANT_DESC);
    SecuritySearchResult searchResult = _securityMaster.search(searchReq);
    return searchResult;
  }
View Full Code Here

      }
      ManageableSecurity security = (ManageableSecurity) position.getSecurityLink().resolve(_securitySource);
      ExternalId underlyingId = FinancialSecurityUtils.getUnderlyingId(security);
      ManageableSecurity underlying;
      if (underlyingId != null) {
        SecuritySearchResult searchResult = _securityMaster.search(new SecuritySearchRequest(underlyingId));
        underlying = searchResult.getFirstSecurity();
      } else {
        underlying = null;
      }
      T result = function.apply(node, position, security, underlying);
      if (result != null) {
View Full Code Here

    for (ExternalIdBundle requestedBundle : request.getExternalIdBundles()) {
      SecuritySearchRequest searchRequest = new SecuritySearchRequest(requestedBundle);
      searchRequest.setSortOrder(SecuritySearchSortOrder.OBJECT_ID_ASC);
      searchRequest.setFullDetail(request.isReturnSecurityObjects() || request.isForceUpdate());
     
      SecuritySearchResult searchResult = _securityMaster.search(searchRequest);
      if (searchResult.getDocuments().size() == 0) {
        missing.put(requestedBundle, null);
      } else {
        if (searchResult.getDocuments().size() > 1) {
          s_logger.warn("Multiple securities matched bundle {}", requestedBundle);
          // consistent order for duplicates was selected by the sort order
        }
        ManageableSecurity sec = searchResult.getFirstSecurity();
        if (request.isForceUpdate()) {
          missing.put(requestedBundle, sec);
        } else {
          result.getResultMap().put(requestedBundle, sec.getUniqueId());
          if (request.isReturnSecurityObjects()) {
View Full Code Here

    List<ExternalIdBundle> missing = Lists.newArrayList();
    for (ExternalIdBundle underlyingId : underlyingIds) {
      SecuritySearchRequest searchRequest = new SecuritySearchRequest(underlyingId);
      searchRequest.setSortOrder(SecuritySearchSortOrder.OBJECT_ID_ASC);
      searchRequest.setFullDetail(false);
      SecuritySearchResult searchResult = _securityMaster.search(searchRequest);
      if (searchResult.getDocuments().size() == 0) {
        missing.add(underlyingId);
      }
    }
   
    // load from provider
View Full Code Here

    ArgumentChecker.notNull(request.getPagingRequest(), "request.pagingRequest");
    ArgumentChecker.notNull(request.getVersionCorrection(), "request.versionCorrection");
    s_logger.debug("search {}", request);
   
    final VersionCorrection vc = request.getVersionCorrection().withLatestFixed(now());
    final SecuritySearchResult result = new SecuritySearchResult(vc);
   
    final ExternalIdSearch externalIdSearch = request.getExternalIdSearch();
    final List<ObjectId> objectIds = request.getObjectIds();
    if ((objectIds != null && objectIds.size() == 0) ||
        (ExternalIdSearch.canMatch(request.getExternalIdSearch()) == false)) {
      result.setPaging(Paging.of(request.getPagingRequest(), 0));
      return result;
    }
   
    final DbMapSqlParameterSource args = new DbMapSqlParameterSource()
      .addTimestamp("version_as_of_instant", vc.getVersionAsOf())
      .addTimestamp("corrected_to_instant", vc.getCorrectedTo())
      .addValueNullIgnored("name", getDialect().sqlWildcardAdjustValue(request.getName()))
      .addValueNullIgnored("sec_type", request.getSecurityType())
      .addValueNullIgnored("external_id_scheme", getDialect().sqlWildcardAdjustValue(request.getExternalIdScheme()))
      .addValueNullIgnored("external_id_value", getDialect().sqlWildcardAdjustValue(request.getExternalIdValue()));
    if (externalIdSearch != null && externalIdSearch.alwaysMatches() == false) {
      int i = 0;
      for (ExternalId id : externalIdSearch) {
        args.addValue("key_scheme" + i, id.getScheme().getName());
        args.addValue("key_value" + i, id.getValue());
        i++;
      }
      args.addValue("sql_search_external_ids_type", externalIdSearch.getSearchType());
      args.addValue("sql_search_external_ids", sqlSelectIdKeys(externalIdSearch));
      args.addValue("id_search_size", externalIdSearch.getExternalIds().size());
    }
    if (objectIds != null) {
      StringBuilder buf = new StringBuilder(objectIds.size() * 10);
      for (ObjectId objectId : objectIds) {
        checkScheme(objectId);
        buf.append(extractOid(objectId)).append(", ");
      }
      buf.setLength(buf.length() - 2);
      args.addValue("sql_search_object_ids", buf.toString());
    }
    args.addValue("sort_order", ORDER_BY_MAP.get(request.getSortOrder()));
    args.addValue("paging_offset", request.getPagingRequest().getFirstItem());
    args.addValue("paging_fetch", request.getPagingRequest().getPagingSize());
   
    final SecurityMasterDetailProvider detailProvider = getDetailProvider()// lock against change
    if (detailProvider != null) {
      detailProvider.extendSearch(request, args);
    }
   
    String[] sql = {getElSqlBundle().getSql("Search", args), getElSqlBundle().getSql("SearchCount", args)};
    doSearch(request.getPagingRequest(), sql, args, new SecurityDocumentExtractor(), result);
    if (request.isFullDetail()) {
      loadDetail(detailProvider, result.getDocuments());
    }
    return result;
  }
View Full Code Here

    final int pages = (total / PAGE_SIZE) + 1;
    for (int page = 1; page <= pages; page++) {
      request.setPagingRequest(PagingRequest.ofPage(page, PAGE_SIZE));
      System.out.println("Checking security master, page " + request.getPagingRequest());
      try {
        final SecuritySearchResult result = getSecurityMaster().search(request);
        for (final SecurityDocument doc : result.getDocuments()) {
          assertNotNull(doc);
          assertNotNull(doc.getUniqueId());
          assertNotNull(doc.getSecurity());
        }
      } catch (final RuntimeException ex) {
View Full Code Here

    }
    System.out.println("Checked security master, size: " + total);
  }

  private void findError(final SecuritySearchRequest request, final RuntimeException ex, final int total) throws Exception {
    SecuritySearchResult result;
    try {
      request.setFullDetail(false);
      result = _secMaster.search(request);
    } catch (final RuntimeException ex2) {
      throw new RuntimeException("Unable to load securities (or basic info) matching " + request.getPagingRequest(), ex);
    }
    for (final SecurityDocument doc : result.getDocuments()) {
      final UniqueId uniqueId = doc.getUniqueId();
      try {
        getSecurityMaster().get(uniqueId);
      } catch (final RuntimeException ex2) {
        throw new RuntimeException("Unable to load security " + uniqueId + "(" + doc.getName() + ") in " +
View Full Code Here

      s_logger.info("Processing security type " + securityType);
      SecuritySearchRequest searchRequest = new SecuritySearchRequest();
      searchRequest.setName("*");
      searchRequest.setSecurityType(securityType);
      searchRequest.setPagingRequest(PagingRequest.ONE);
      SecuritySearchResult search = securityMaster.search(searchRequest);
      s_logger.info("Search returned " + search.getPaging().getTotalItems() + " securities");
      dumpSecurityStructure(csvWriter, securityType, search.getFirstSecurity());
    }
    csvWriter.close();
  }
View Full Code Here

  private ManageableSecurity loadSecurity(SecurityLink securityLink) {
    if (securityLink.getObjectId() != null) {
      return getSecurityMaster().get(securityLink.getObjectId(), VersionCorrection.LATEST).getSecurity();
    } else if (securityLink.getExternalId() != null) {
      ExternalIdBundle idBundle = securityLink.getExternalId();
      SecuritySearchResult searchResult = getSecurityMaster().search(new SecuritySearchRequest(idBundle));
      if (searchResult.getSecurities().isEmpty()) {
        throw new IllegalArgumentException("No security found for ID bundle " + idBundle);
      }
      return searchResult.getFirstSecurity();
    } else {
      throw new IllegalArgumentException("No IDs in security link " + securityLink);
    }
  }
View Full Code Here

TOP

Related Classes of com.opengamma.master.security.SecuritySearchResult

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.