Package com.opengamma.core.position

Examples of com.opengamma.core.position.Portfolio


   
    PortfolioDocument prtDoc = new PortfolioDocument(manPrt);
   
    when(mockPortfolio.get(UID)).thenReturn(prtDoc);
    MasterPositionSource test = new MasterPositionSource(mockPortfolio, mockPosition);
    Portfolio testResult = test.getPortfolio(UID, VersionCorrection.LATEST);
    verify(mockPortfolio, times(1)).get(UID);
   
    assertEquals(UID, testResult.getUniqueId());
    assertEquals("Hello", testResult.getName());
    assertEquals("Node", testResult.getRootNode().getName());
    assertEquals(UID2, testResult.getRootNode().getUniqueId());
    assertEquals(null, testResult.getRootNode().getParentNodeId());
    assertEquals(0, testResult.getRootNode().getPositions().size());
    assertEquals(1, testResult.getRootNode().getChildNodes().size());
    assertEquals("Child", testResult.getRootNode().getChildNodes().get(0).getName());
    assertEquals(UID3, testResult.getRootNode().getChildNodes().get(0).getUniqueId());
    assertEquals(UID2, testResult.getRootNode().getChildNodes().get(0).getParentNodeId());
    assertEquals(0, testResult.getRootNode().getChildNodes().get(0).getPositions().size());
    assertEquals(0, testResult.getRootNode().getChildNodes().get(0).getChildNodes().size());
   
    assertNotNull(testResult.getAttributes());
    assertEquals(2, testResult.getAttributes().size());
    assertEquals("V1", testResult.getAttributes().get("A1"));
    assertEquals("V2", testResult.getAttributes().get("A2"));
  }
View Full Code Here


    posResult.getDocuments().add(posDoc);
   
    when(mockPortfolio.get(UID)).thenReturn(prtDoc);
    when(mockPosition.search(posRequest)).thenReturn(posResult);
    MasterPositionSource test = new MasterPositionSource(mockPortfolio, mockPosition);
    Portfolio testResult = test.getPortfolio(UID, VC);
    verify(mockPortfolio, times(1)).get(UID);
    verify(mockPosition, times(1)).search(posRequest);
   
    assertEquals(UID, testResult.getUniqueId());
    assertEquals("Hello", testResult.getName());
    assertEquals("Node", testResult.getRootNode().getName());
    assertEquals(UID2, testResult.getRootNode().getUniqueId());
    assertEquals(null, testResult.getRootNode().getParentNodeId());
    assertEquals(0, testResult.getRootNode().getPositions().size());
    assertEquals(1, testResult.getRootNode().getChildNodes().size());
    assertEquals("Child", testResult.getRootNode().getChildNodes().get(0).getName());
    assertEquals(UID3, testResult.getRootNode().getChildNodes().get(0).getUniqueId());
    assertEquals(UID2, testResult.getRootNode().getChildNodes().get(0).getParentNodeId());
    assertEquals(1, testResult.getRootNode().getChildNodes().get(0).getPositions().size());
    assertEquals(0, testResult.getRootNode().getChildNodes().get(0).getChildNodes().size());
    Position pos = testResult.getRootNode().getChildNodes().get(0).getPositions().get(0);
    assertEquals(UID4, pos.getUniqueId());
    assertEquals(BigDecimal.valueOf(1235), pos.getQuantity());
    assertEquals(ExternalIdBundle.of("AA", "BB"), pos.getSecurityLink().getExternalId());
    assertEquals(1, pos.getTrades().size());
    Trade trade = pos.getTrades().iterator().next();
View Full Code Here

    assertEquals(portfolio.getRootNode().getUniqueId(), underlying.getRootNode().getUniqueId());
  }

  public void testSerialization_full() throws Exception {
    final MockComputationTargetResolver resolver = MockComputationTargetResolver.resolved();
    final Portfolio underlying = resolver.getPositionSource().getPortfolio(UniqueId.of("Portfolio", "0"), VersionCorrection.LATEST);
    Portfolio portfolio = new LazyResolvedPortfolio(new LazyResolveContext(resolver.getSecuritySource(), null).atVersionCorrection(VersionCorrection.LATEST), underlying);
    final ByteArrayOutputStream baos = new ByteArrayOutputStream();
    new ObjectOutputStream(baos).writeObject(portfolio);
    final Object resultObject = new ObjectInputStream(new ByteArrayInputStream(baos.toByteArray())).readObject();
    assertTrue(resultObject instanceof SimplePortfolio);
    portfolio = (Portfolio) resultObject;
    assertEquals(portfolio.getUniqueId(), underlying.getUniqueId());
    assertEquals(portfolio.getAttributes(), underlying.getAttributes());
    portfolio.setAttributes(ImmutableMap.of("K1", "V1", "K2", "V2"));
    assertNotEquals(portfolio.getAttributes(), underlying.getAttributes());
    portfolio.addAttribute("K3", "V3");
    assertNotEquals(portfolio.getAttributes(), underlying.getAttributes());
    assertEquals(portfolio.getAttributes().size(), 3);
    assertEquals(portfolio.getName(), underlying.getName());
    assertEquals(portfolio.getRootNode().getUniqueId(), underlying.getRootNode().getUniqueId());
    assertEquals(portfolio.getRootNode().getChildNodes().size(), underlying.getRootNode().getChildNodes().size());
  }
View Full Code Here

    assertEquals(portfolio.getRootNode().getChildNodes().size(), underlying.getRootNode().getChildNodes().size());
  }

  public void testSerialization_targetResolver() throws Exception {
    final MockComputationTargetResolver resolver = MockComputationTargetResolver.resolved();
    final Portfolio underlying = resolver.getPositionSource().getPortfolio(UniqueId.of("Portfolio", "0"), VersionCorrection.LATEST);
    Portfolio portfolio = new LazyResolvedPortfolio(
        new LazyResolveContext(resolver.getSecuritySource(), new DefaultCachingComputationTargetResolver(resolver, _cacheManager)).atVersionCorrection(VersionCorrection.LATEST),
        underlying);
    final ByteArrayOutputStream baos = new ByteArrayOutputStream();
    new ObjectOutputStream(baos).writeObject(portfolio);
    final Object resultObject = new ObjectInputStream(new ByteArrayInputStream(baos.toByteArray())).readObject();
    assertTrue(resultObject instanceof TargetResolverPortfolio);
    portfolio = (Portfolio) resultObject;
    assertEquals(portfolio.getUniqueId(), underlying.getUniqueId());
    assertEquals(portfolio.getAttributes(), underlying.getAttributes());
    portfolio.setAttributes(ImmutableMap.of("K1", "V1", "K2", "V2"));
    assertNotEquals(portfolio.getAttributes(), underlying.getAttributes());
    portfolio.addAttribute("K3", "V3");
    assertNotEquals(portfolio.getAttributes(), underlying.getAttributes());
    assertEquals(portfolio.getAttributes().size(), 3);
    assertEquals(portfolio.getName(), underlying.getName());
    assertEquals(portfolio.getRootNode().getUniqueId(), underlying.getRootNode().getUniqueId());
    assertEquals(portfolio.getRootNode().getChildNodes().size(), underlying.getRootNode().getChildNodes().size());
  }
View Full Code Here

   * @param versionCorrection the version-correction for security resolution, not null
   * @return the resolved portfolio, not null
   */
  public static Portfolio resolvePortfolio(final Portfolio portfolio, final ExecutorService executorService,
      final SecuritySource securitySource, final VersionCorrection versionCorrection) {
    final Portfolio cloned = new SimplePortfolio(portfolio);
    new SecurityLinkResolver(executorService, securitySource, versionCorrection).resolveSecurities(cloned.getRootNode());
    return cloned;
  }
View Full Code Here

      final Set<UniqueId> includeEvents, final Set<UniqueId> excludeEvents) {
    if (calcConfig.getAllPortfolioRequirements().size() == 0) {
      // No portfolio requirements for this calculation configuration - avoid further processing.
      return;
    }
    final Portfolio portfolio = builder.getCompilationContext().getPortfolio();
    final PortfolioCompilerTraversalCallback traversalCallback = new PortfolioCompilerTraversalCallback(calcConfig, builder, context.getActiveResolutions(), includeEvents, excludeEvents);
    final PortfolioNodeTraverser traverser = PortfolioNodeTraverser.parallel(traversalCallback, context.getServices().getExecutorService());
    if (isStripedPortfolioRequirements()) {
      final Map<String, Set<Pair<String, ValueProperties>>> requirementsBySecurityType = traversalCallback.getPortfolioRequirementsBySecurityType();
      Map<String, Set<Pair<String, ValueProperties>>> requirementSubSet = Maps.newHashMapWithExpectedSize(requirementsBySecurityType.size());
      traversalCallback.setPortfolioRequirementsBySecurityType(requirementSubSet);
      for (Pair<String, ValueProperties> stripe : getStripes(requirementsBySecurityType)) {
        s_logger.debug("Adding {} portfolio requirement stripe", stripe);
        final Set<Pair<String, ValueProperties>> stripeRequirements = Collections.singleton(stripe);
        for (Map.Entry<String, Set<Pair<String, ValueProperties>>> securityTypeRequirement : requirementsBySecurityType.entrySet()) {
          if (securityTypeRequirement.getValue().contains(stripe)) {
            requirementSubSet.put(securityTypeRequirement.getKey(), stripeRequirements);
          } else {
            requirementSubSet.remove(securityTypeRequirement.getKey());
          }
        }
        traversalCallback.reset();
        traverser.traverse(portfolio.getRootNode());
        try {
          s_logger.debug("Waiting for stripe {} to complete", stripe);
          // TODO: Waiting for a completion state causes any progress tracker to abort (it sees 100% and stops). Need to rethink how to do the progress estimates.
          builder.waitForDependencyGraphBuild();
        } catch (InterruptedException e) {
          throw new OpenGammaRuntimeException("Interrupted during striped compilation", e);
        }
      }
    } else {
      s_logger.debug("Adding all portfolio requirements directly");
      traverser.traverse(portfolio.getRootNode());
    }
  }
View Full Code Here

  }

  //-------------------------------------------------------------------------
  public void testBasicMethods() {
    final MockComputationTargetResolver resolver = MockComputationTargetResolver.resolved();
    final Portfolio underlying = resolver.getPositionSource().getPortfolio(UniqueId.of("Portfolio", "0"), VersionCorrection.LATEST);
    final Portfolio portfolio = new LazyResolvedPortfolio(new LazyResolveContext(resolver.getSecuritySource(), null).atVersionCorrection(VersionCorrection.LATEST), underlying);
    assertEquals(portfolio.getAttributes(), underlying.getAttributes());
    portfolio.setAttributes(ImmutableMap.of("K1", "V1", "K2", "V2"));
    assertEquals(portfolio.getAttributes(), underlying.getAttributes());
    portfolio.addAttribute("K3", "V3");
    assertEquals(portfolio.getAttributes().size(), 3);
    assertEquals(underlying.getAttributes().size(), 3);
    assertEquals(portfolio.getName(), underlying.getName());
    assertEquals(portfolio.getUniqueId(), underlying.getUniqueId());
    assertEquals(portfolio.getRootNode().getUniqueId(), underlying.getRootNode().getUniqueId());
  }
View Full Code Here

    return getPortfolioOutputs(portfolioId, instant, null, null);
  }

  @Override
  public AvailableOutputs getPortfolioOutputs(final UniqueId portfolioId, final Instant instant, final Integer maxNodes, final Integer maxPositions) {
    Portfolio portfolio = getPortfolio(portfolioId);
    portfolio = preparePortfolio(portfolio, maxNodes, maxPositions);
    final Instant compileInstant = (instant != null ? instant : Instant.now());
    final CompiledFunctionRepository functionRepository = getCompiledFunctionService().compileFunctionRepository(compileInstant);
    return new AvailablePortfolioOutputs(portfolio, functionRepository, getFunctionExclusionGroups(), getMarketDataAvailability(), getWildcardIndicator());
  }
View Full Code Here

  public CompiledViewDefinition buildObject(FudgeDeserializer deserializer, FudgeMsg message) {
    VersionCorrection versionCorrection = deserializer.fieldValueToObject(VersionCorrection.class, message.getByName(VERSION_CORRECTION_FIELD));
    String compilationId = message.getString(COMPILATION_IDENTIFIER_FIELD);
    ViewDefinition viewDefinition = deserializer.fieldValueToObject(ViewDefinition.class, message.getByName(VIEW_DEFINITION_FIELD));
    FudgeField portfolioField = message.getByName(PORTFOLIO_FIELD);
    Portfolio portfolio = portfolioField != null ? deserializer.fieldValueToObject(Portfolio.class, portfolioField) : null;

    // Deserialise each instance specifically into the required type
    Collection<CompiledViewCalculationConfiguration> compiledCalculationConfigurations = new ArrayList<CompiledViewCalculationConfiguration>();
    List<FudgeField> calcConfigFields = message.getAllByName(COMPILED_CALCULATION_CONFIGURATIONS_FIELD);
    for (FudgeField field : calcConfigFields) {
View Full Code Here

      final Collection<DependencyGraph> graphs = new ArrayList<DependencyGraph>(_graphs.size());
      final CompiledFunctionRepository functions = parent.getFunctions().compileFunctionRepository(_compilationTime);
      for (DependencyGraphHolder graph : _graphs) {
        graphs.add(graph.get(functions));
      }
      final Portfolio portfolio = (Portfolio) parent.getFunctions().getFunctionCompilationContext().getRawComputationTargetResolver()
          .resolve(new ComputationTargetSpecification(ComputationTargetType.PORTFOLIO, _portfolio), _versionCorrection).getValue();
      CompiledViewDefinitionWithGraphsImpl compiledViewDef =
          new CompiledViewDefinitionWithGraphsImpl(_versionCorrection, _compilationId, viewDefinition, graphs,
              _resolutions, portfolio, _functionInitId, _calcConfigs);
      return parent.new CompiledViewDefinitionWithGraphsHolder(compiledViewDef);
View Full Code Here

TOP

Related Classes of com.opengamma.core.position.Portfolio

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.