Package com.opengamma.provider.livedata

Examples of com.opengamma.provider.livedata.LiveDataMetaData


    repo.registerComponent(info, marketDataProviderFactory);
    return marketDataProviderFactory;
  }

  private LiveDataClient createLiveDataClient(final LiveDataMetaDataProvider provider) {
    final LiveDataMetaData metaData = provider.metaData();
    final URI jmsUri = metaData.getJmsBrokerUri();
    if (metaData.getServerType() != LiveDataServerTypes.STANDARD || jmsUri == null) {
      throw new IllegalStateException();
    }
    JmsConnector jmsConnector = getJmsConnector();
    if (jmsConnector.getClientBrokerUri().equals(jmsUri) == false) {
      final JmsConnectorFactoryBean jmsFactory = new JmsConnectorFactoryBean(jmsConnector);
      jmsFactory.setClientBrokerUri(jmsUri);
      jmsConnector = jmsFactory.getObjectCreating();
    }

    final RemoteLiveDataClientFactoryBean ldcFb = new RemoteLiveDataClientFactoryBean();
    ldcFb.setJmsConnector(jmsConnector);
    ldcFb.setSubscriptionTopic(metaData.getJmsSubscriptionTopic());
    ldcFb.setEntitlementTopic(metaData.getJmsEntitlementTopic());
    ldcFb.setHeartbeatTopic(metaData.getJmsHeartbeatTopic());
    final LiveDataClient ldcDistributed = ldcFb.getObjectCreating();
    return ldcDistributed;
  }
View Full Code Here


   * @param provider the metadata provider, null returns null
   * @return the client
   */
  @SuppressWarnings("deprecation")
  protected LiveDataClient createLiveDataClient(final LiveDataMetaDataProvider provider) {
    LiveDataMetaData metaData = provider.metaData();
    URI jmsUri = metaData.getJmsBrokerUri();
    if (metaData.getServerType() != LiveDataServerTypes.STANDARD || jmsUri == null) {
      s_logger.warn("Unsupported live data server type " + metaData.getServerType() + " for " + metaData.getDescription() + " live data provider. This provider will not be available.");
      return null;
    }
    JmsConnector jmsConnector = getJmsConnector();
    if (!jmsConnector.getClientBrokerUri().equals(jmsUri)) {
      JmsConnectorFactoryBean jmsFactory = new JmsConnectorFactoryBean(jmsConnector);
      jmsFactory.setClientBrokerUri(jmsUri);
      jmsConnector = jmsFactory.getObjectCreating();
    }
   
    JmsTemplate jmsTemplate = getJmsConnector().getJmsTemplateTopic();
   
    JmsByteArrayRequestSender jmsSubscriptionRequestSender;

    if (metaData.getJmsSubscriptionQueue() != null) {
      JmsTemplate subscriptionRequestTemplate = getJmsConnector().getJmsTemplateQueue();
      jmsSubscriptionRequestSender = new JmsByteArrayRequestSender(metaData.getJmsSubscriptionQueue(), subscriptionRequestTemplate);
    } else {
      jmsSubscriptionRequestSender = new JmsByteArrayRequestSender(metaData.getJmsSubscriptionTopic(), jmsTemplate);
    }
    ByteArrayFudgeRequestSender fudgeSubscriptionRequestSender = new ByteArrayFudgeRequestSender(jmsSubscriptionRequestSender);
   
    JmsByteArrayRequestSender jmsEntitlementRequestSender = new JmsByteArrayRequestSender(metaData.getJmsEntitlementTopic(), jmsTemplate);
    ByteArrayFudgeRequestSender fudgeEntitlementRequestSender = new ByteArrayFudgeRequestSender(jmsEntitlementRequestSender);
   
    final JmsLiveDataClient liveDataClient = new JmsLiveDataClient(fudgeSubscriptionRequestSender,
        fudgeEntitlementRequestSender, getJmsConnector(), OpenGammaFudgeContext.getInstance(), JmsLiveDataClient.DEFAULT_NUM_SESSIONS);
    liveDataClient.setFudgeContext(OpenGammaFudgeContext.getInstance());
    if (metaData.getJmsHeartbeatTopic() != null) {
      JmsByteArrayMessageSender jmsHeartbeatSender = new JmsByteArrayMessageSender(metaData.getJmsHeartbeatTopic(), jmsTemplate);
      liveDataClient.setHeartbeatMessageSender(jmsHeartbeatSender);
    }
    liveDataClient.start();
    liveDataClient.registerMetrics(OpenGammaMetricRegistry.getSummaryInstance(), OpenGammaMetricRegistry.getDetailedInstance(), "LiveDataClient - " + provider.metaData().getDescription());
    return liveDataClient;
View Full Code Here

   * @param repo the repository, not null
   * @param server the server being produced, not null
   */
  @SuppressWarnings("deprecation")
  protected void publishRest(ComponentRepository repo, StandardLiveDataServer server) {
    final LiveDataMetaData metaData = createMetaData(repo);
    metaData.setJmsBrokerUri(getJmsConnector().getClientBrokerUri());
    metaData.setJmsSubscriptionTopic(getJmsSubscriptionTopic());
    metaData.setJmsSubscriptionQueue(getJmsSubscriptionQueue());
    metaData.setJmsEntitlementTopic(getJmsEntitlementTopic());
    metaData.setJmsHeartbeatTopic(getJmsHeartbeatTopic());
    final LiveDataMetaDataProvider provider = new SimpleLiveDataMetaDataProvider(metaData);
    final ComponentInfo infoProvider = new ComponentInfo(LiveDataMetaDataProvider.class, getClassifier());
    infoProvider.addAttribute(ComponentInfoAttributes.LEVEL, 1);
    infoProvider.addAttribute(ComponentInfoAttributes.REMOTE_CLIENT_JAVA, RemoteLiveDataMetaDataProvider.class);
    repo.registerComponent(infoProvider, provider);
View Full Code Here

    repo.registerComponent(info, marketDataProviderFactory);
    return marketDataProviderFactory;
  }

  private LiveDataClient createLiveDataClient(final LiveDataMetaDataProvider provider) {
    final LiveDataMetaData metaData = provider.metaData();
    final URI jmsUri = metaData.getJmsBrokerUri();
    if (metaData.getServerType() != LiveDataServerTypes.STANDARD || jmsUri == null) {
      throw new IllegalStateException();
    }
    JmsConnector jmsConnector = getJmsConnector();
    if (jmsConnector.getClientBrokerUri().equals(jmsUri) == false) {
      final JmsConnectorFactoryBean jmsFactory = new JmsConnectorFactoryBean(jmsConnector);
      jmsFactory.setClientBrokerUri(jmsUri);
      jmsConnector = jmsFactory.getObjectCreating();
    }

    final RemoteLiveDataClientFactoryBean ldcFb = new RemoteLiveDataClientFactoryBean();
    ldcFb.setJmsConnector(jmsConnector);
    ldcFb.setSubscriptionTopic(metaData.getJmsSubscriptionTopic());
    ldcFb.setEntitlementTopic(metaData.getJmsEntitlementTopic());
    ldcFb.setHeartbeatTopic(metaData.getJmsHeartbeatTopic());
    final LiveDataClient ldcDistributed = ldcFb.getObjectCreating();
    return ldcDistributed;
  }
View Full Code Here

    return server;
  }

  @Override
  protected LiveDataMetaData createMetaData(final ComponentRepository repo) {
    return new LiveDataMetaData(ImmutableList.of(ExternalSchemes.OG_SYNTHETIC_TICKER), LiveDataServerTypes.STANDARD, ExampleMarketDataComponentFactory.SIMULATED_LIVE_SOURCE_NAME);
  }
View Full Code Here

      ComponentInfo infoProvider = repo.findInfo(LiveDataMetaDataProvider.class, info.getClassifier());
      if (infoProvider == null) {
        throw new OpenGammaRuntimeException("Unable to find matching LiveDataMetaDataProvider: " + info);
      }
      LiveDataMetaDataProvider provider = (LiveDataMetaDataProvider) repo.getInstance(infoProvider);
      LiveDataMetaData metaData = provider.metaData();
      schemes.addAll(metaData.getSupportedSchemes());
      buf.appendSeparator(", ").append(metaData.getDescription());
    }
    return new LiveDataMetaData(ImmutableList.copyOf(schemes), LiveDataServerTypes.STANDARD, buf.toString());
  }
View Full Code Here

  @Override
  protected LiveDataMetaData createMetaData(ComponentRepository repo) {
    ImmutableList<ExternalScheme> schemes = ImmutableList.of(ExternalSchemes.BLOOMBERG_BUID, ExternalSchemes.BLOOMBERG_TICKER,
        ExternalSchemes.BLOOMBERG_TCM, ExternalSchemes.BLOOMBERG_BUID_WEAK, ExternalSchemes.BLOOMBERG_TICKER_WEAK);
    return new LiveDataMetaData(schemes, LiveDataServerTypes.STANDARD, "Bloomberg");
  }
View Full Code Here

  @PropertyDefinition
  private String _jmsMarketDataAvailabilityTopic;

  @Override
  public void init(final ComponentRepository repo, final LinkedHashMap<String, String> configuration) throws Exception {
    final LiveDataMetaData metaData = getBloombergMetaDataProvider().metaData();
    if (metaData.getServerType() != LiveDataServerTypes.STANDARD) {
      throw new OpenGammaRuntimeException("Unexpected server type in metadata " + metaData);
    }
    String description = metaData.getDescription() != null ? metaData.getDescription() : "Bloomberg";
    description = "Live market data (" + description + ")";
    final URI jmsUri = metaData.getJmsBrokerUri();
    if (jmsUri == null) {
      throw new OpenGammaRuntimeException("JMS URI not set in metadata " + metaData);
    }

    JmsConnector jmsConnector = getJmsConnector();
    if (jmsConnector.getClientBrokerUri().equals(jmsUri) == false) {
      final JmsConnectorFactoryBean jmsFactory = new JmsConnectorFactoryBean(jmsConnector);
      jmsFactory.setClientBrokerUri(jmsUri);
      jmsConnector = jmsFactory.getObjectCreating();
    }

    final RemoteLiveDataClientFactoryBean liveDataClientFactory = new RemoteLiveDataClientFactoryBean();
    liveDataClientFactory.setJmsConnector(jmsConnector);
    liveDataClientFactory.setSubscriptionTopic(metaData.getJmsSubscriptionTopic());
    liveDataClientFactory.setEntitlementTopic(metaData.getJmsEntitlementTopic());
    liveDataClientFactory.setHeartbeatTopic(metaData.getJmsHeartbeatTopic());
    final LiveDataClient liveDataClient = liveDataClientFactory.getObjectCreating();

    final MarketDataAvailabilityFilter availability = BloombergDataUtils.createAvailabilityFilter();
    final LiveDataFactory liveDataFactory = new LiveDataFactory(liveDataClient, availability);
    final MarketDataProviderFactory liveMarketDataProviderFactory = new InMemoryLKVLiveMarketDataProviderFactory(liveDataFactory, ImmutableMap.of(description, liveDataFactory));
View Full Code Here

TOP

Related Classes of com.opengamma.provider.livedata.LiveDataMetaData

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.