Package org.fudgemsg

Examples of org.fudgemsg.FudgeField


  }

  @Override
  public ViewCycleExecutionOptions buildObject(final FudgeDeserializer deserializer, final FudgeMsg msg) {
    final ViewCycleExecutionOptions.Builder builder = ViewCycleExecutionOptions.builder();
    FudgeField field;
    field = msg.getByName(VALUATION_TIME_FIELD);
    if (field != null) {
      builder.setValuationTime(deserializer.fieldValueToObject(Instant.class, field));
    }
    final ArrayList<MarketDataSpecification> specs = new ArrayList<>();
    for (final FudgeField marketDataSpecificationField : msg.getAllByName(MARKET_DATA_SPECIFICATION)) {
      specs.add(deserializer.fieldValueToObject(MarketDataSpecification.class, marketDataSpecificationField));
    }
    builder.setMarketDataSpecifications(specs);
    field = msg.getByName(MARKET_DATA_SELECTOR);
    if (field != null) {
      builder.setMarketDataSelector(deserializer.fieldValueToObject(MarketDataSelector.class, field));
    }
    field = msg.getByName(RESOLVER_VERSION_CORRECTION);
    if (field != null) {
      builder.setResolverVersionCorrection(deserializer.fieldValueToObject(VersionCorrection.class, field));
    }
    field = msg.getByName(FUNCTION_PARAMETERS);
    if (field != null) {
      Map<DistinctMarketDataSelector, FunctionParameters> paramMap = Maps.newHashMap();
      FudgeMsg paramsMsg = (FudgeMsg) field.getValue();
      for (FudgeField paramsField : paramsMsg) {
        FudgeMsg paramMsg = (FudgeMsg) paramsField.getValue();
        DistinctMarketDataSelector selector = deserializer.fieldValueToObject(DistinctMarketDataSelector.class,
                                                                              paramMsg.getByName(SELECTOR));
        FunctionParameters params = deserializer.fieldValueToObject(FunctionParameters.class,
View Full Code Here


      if (field.getName() != null) {
        if (field.getValue() == IndicatorType.INSTANCE) {
          transform.suppressRule(field.getName());
        } else if (field.getValue() instanceof FudgeMsg) {
          final FudgeMsg action = (FudgeMsg) field.getValue();
          final FudgeField parameters = action.getByName(PARAMETERS_FIELD);
          final FudgeField filter = action.getByName(FILTER_FIELD);
          final FudgeField priority = action.getByName(PRIORITY_FIELD);
          transform.adjustRule(field.getName(), (parameters != null) ? deserializer.fieldValueToObject(FunctionParameters.class, parameters) : null, (filter != null) ? deserializer.fieldValueToObject(
              ComputationTargetFilter.class, filter) : null, (priority != null) ? message.getFieldValue(Integer.class, priority) : null);
        }
      }
    }
View Full Code Here

  @Override
  public ValueRequirement buildObject(FudgeDeserializer deserializer, FudgeMsg message) {
    String valueName = message.getString(VALUE_NAME_FIELD_NAME);
    Validate.notNull(valueName, "Fudge message is not a ValueRequirement - field 'valueName' is not present");
    ComputationTargetReference targetReference = ComputationTargetReferenceFudgeBuilder.buildObjectImpl(deserializer, message);
    FudgeField constraints = message.getByName(CONSTRAINTS_FIELD_NAME);
    if (constraints != null) {
      return new ValueRequirement(valueName, targetReference, deserializer.fieldValueToObject(ValueProperties.class, constraints));
    } else {
      return new ValueRequirement(valueName, targetReference);
    }
View Full Code Here

    @Override
    public void messageReceived(final FudgeContext fudgeContext, final FudgeMsgEnvelope msgEnvelope) {
      final FudgeMsg msg = msgEnvelope.getMessage();
      final int modificationCount = msg.getInt(DataFunctionBlacklistResource.MODIFICATION_COUNT_FIELD);
      FudgeField field = msg.getByName(DataFunctionBlacklistResource.RULES_ADDED_FIELD);
      final FudgeDeserializer fdc = new FudgeDeserializer(fudgeContext);
      if (field != null) {
        final List<FudgeField> rulesMsg = msg.getFieldValue(FudgeMsg.class, field).getAllFields();
        if (rulesMsg.size() == 1) {
          ruleAdded(modificationCount, fdc.fieldValueToObject(FunctionBlacklistRule.class, rulesMsg.get(0)), getProvider().getBackgroundTasks());
View Full Code Here

    return msg;
  }

  @Override
  public CycleCompletedCall buildObject(FudgeDeserializer deserializer, FudgeMsg msg) {
    FudgeField fullResultField = msg.getByName(FULL_RESULT_FIELD);
    ViewComputationResultModel fullResult = fullResultField != null ? deserializer.fieldValueToObject(ViewComputationResultModel.class, fullResultField) : null;
    FudgeField deltaResultField = msg.getByName(DELTA_RESULT_FIELD);
    ViewDeltaResultModel deltaResult = deltaResultField != null ? deserializer.fieldValueToObject(ViewDeltaResultModel.class, deltaResultField) : null;
    return new CycleCompletedCall(fullResult, deltaResult);
  }
View Full Code Here

  }

  @SuppressWarnings("unchecked")
  @Override
  public DeltaDefinition buildObject(FudgeDeserializer deserializer, FudgeMsg message) {
    FudgeField fudgeField = message.getByName(NUMBER_COMPARER_KEY);
    DeltaDefinition deltaDefinition = new DeltaDefinition();
    if (fudgeField != null) {
      deltaDefinition.setNumberComparer(deserializer.fieldValueToObject(DeltaComparer.class, fudgeField));
    }
    return deltaDefinition;
View Full Code Here

    return msg;
  }

  @Override
  public CycleStartedCall buildObject(FudgeDeserializer deserializer, FudgeMsg msg) {
    FudgeField viewCycleInfoField = msg.getByName(METADATA_FIELD);
    ViewCycleMetadata cycleInfo = viewCycleInfoField != null ? deserializer.fieldValueToObject(ViewCycleMetadata.class, viewCycleInfoField) : null;
    return new CycleStartedCall(cycleInfo);
  }
View Full Code Here

  }

  @Override
  public ViewDefinition buildObject(FudgeDeserializer deserializer, FudgeMsg message) {
   
    final FudgeField portfolioIdField = message.getByName(PORTFOLIO_ID_FIELD);
    final UniqueId portfolioId = portfolioIdField == null ? null : deserializer.fieldValueToObject(UniqueId.class, portfolioIdField);
    final String name = message.getFieldValue(String.class, message.getByName(NAME_FIELD));
    final UserPrincipal user = deserializer.fieldValueToObject(UserPrincipal.class, message.getByName(USER_FIELD));
    final ResultModelDefinition model = deserializer.fieldValueToObject(ResultModelDefinition.class, message.getByName(RESULT_MODEL_DEFINITION_FIELD));
    ViewDefinition viewDefinition = new ViewDefinition(
        name,
        portfolioId,
        user,
        model);

    // FudgeField currencyField = message.getByName(CURRENCY_FIELD);
    // if (currencyField != null) {
    // viewDefinition.setDefaultCurrency(context.fieldValueToObject(Currency.class, currencyField));
    // }

    if (message.hasField(CURRENCY_FIELD)) {
      String isoCode = message.getString(CURRENCY_FIELD);
      viewDefinition.setDefaultCurrency(Currency.of(isoCode));
    }

    if (message.hasField(MIN_DELTA_CALC_PERIOD_FIELD)) {
      viewDefinition.setMinDeltaCalculationPeriod(message.getLong(MIN_DELTA_CALC_PERIOD_FIELD));
    }
    if (message.hasField(MAX_DELTA_CALC_PERIOD_FIELD)) {
      viewDefinition.setMaxDeltaCalculationPeriod(message.getLong(MAX_DELTA_CALC_PERIOD_FIELD));
    }
    if (message.hasField(MIN_FULL_CALC_PERIOD_FIELD)) {
      viewDefinition.setMinFullCalculationPeriod(message.getLong(MIN_FULL_CALC_PERIOD_FIELD));
    }
    //for backward compatibility of renaming fullDeltaCalcPeriod to minFullCalcPeriod
    if (message.hasField("fullDeltaCalcPeriod")) {
      viewDefinition.setMinFullCalculationPeriod(message.getLong("fullDeltaCalcPeriod"));
    }
    if (message.hasField(MAX_FULL_CALC_PERIOD_FIELD)) {
      viewDefinition.setMaxFullCalculationPeriod(message.getLong(MAX_FULL_CALC_PERIOD_FIELD));
    }
   
    if (message.hasField(PERSISTENT_FIELD)) {
      viewDefinition.setPersistent(true);
    }
   
    List<FudgeField> calcConfigs = message.getAllByName(CALCULATION_CONFIGURATION_FIELD);
    for (FudgeField calcConfigField : calcConfigs) {
      FudgeMsg calcConfigMsg = message.getFieldValue(FudgeMsg.class, calcConfigField);
      final ViewCalculationConfiguration calcConfig = new ViewCalculationConfiguration(viewDefinition, message.getFieldValue(String.class, calcConfigMsg.getByName(NAME_FIELD)));
      for (FudgeField securityTypeRequirementsField : calcConfigMsg.getAllByName(PORTFOLIO_REQUIREMENTS_BY_SECURITY_TYPE_FIELD)) {
        FudgeMsg securityTypeRequirementsMsg = (FudgeMsg) securityTypeRequirementsField.getValue();
        String securityType = securityTypeRequirementsMsg.getString(SECURITY_TYPE_FIELD);
        Set<Pair<String, ValueProperties>> requirements = Sets.newLinkedHashSet();
        for (FudgeField requirement : securityTypeRequirementsMsg.getAllByName(PORTFOLIO_REQUIREMENT_FIELD)) {
          FudgeMsg reqMsg = (FudgeMsg) requirement.getValue();
          String requiredOutput = reqMsg.getString(PORTFOLIO_REQUIREMENT_REQUIRED_OUTPUT_FIELD);
          ValueProperties constraints = deserializer.fieldValueToObject(ValueProperties.class, reqMsg.getByName(PORTFOLIO_REQUIREMENT_CONSTRAINTS_FIELD));
          requirements.add(Pair.of(requiredOutput, constraints));
        }
        calcConfig.addPortfolioRequirements(securityType, requirements);
      }
      for (FudgeField specificRequirementField : calcConfigMsg.getAllByName(SPECIFIC_REQUIREMENT_FIELD)) {
        calcConfig.addSpecificRequirement(plat2286Translate(deserializer.fieldValueToObject(ValueRequirement.class, specificRequirementField)));
      }
      if (calcConfigMsg.hasField(DELTA_DEFINITION_FIELD)) {
        calcConfig.setDeltaDefinition(deserializer.fieldValueToObject(DeltaDefinition.class, calcConfigMsg.getByName(DELTA_DEFINITION_FIELD)));
      }
      if (calcConfigMsg.hasField(DEFAULT_PROPERTIES_FIELD)) {
        calcConfig.setDefaultProperties(deserializer.fieldValueToObject(ValueProperties.class,
                                                                        calcConfigMsg.getByName(DEFAULT_PROPERTIES_FIELD)));
      }
      if (calcConfigMsg.hasField(RESOLUTION_RULE_TRANSFORM_FIELD)) {
        calcConfig.setResolutionRuleTransform(deserializer.fieldValueToObject(ResolutionRuleTransform.class,
                                                                              calcConfigMsg.getByName(
                                                                                  RESOLUTION_RULE_TRANSFORM_FIELD)));
      }
      if (calcConfigMsg.hasField(SCENARIO_ID_FIELD)) {
        calcConfig.setScenarioId(deserializer.fieldValueToObject(UniqueId.class,
                                                                 calcConfigMsg.getByName(SCENARIO_ID_FIELD)));
      }
      if (calcConfigMsg.hasField(SCENARIO_PARAMETERS_ID_FIELD)) {
        calcConfig.setScenarioParametersId(deserializer.fieldValueToObject(UniqueId.class,
                                                                 calcConfigMsg.getByName(SCENARIO_PARAMETERS_ID_FIELD)));
      }
      List<ViewCalculationConfiguration.Column> columns = Lists.newArrayList();
      if (calcConfigMsg.hasField(COLUMNS_FIELD)) {
        FudgeField columnsField = calcConfigMsg.getByName(COLUMNS_FIELD);
        FudgeMsg columnsMsg = (FudgeMsg) columnsField.getValue();
        for (FudgeField field : columnsMsg.getAllFields()) {
          FudgeMsg columnMsg = (FudgeMsg) field.getValue();
          String header = deserializer.fieldValueToObject(String.class, columnMsg.getByName(HEADER_FIELD));
          String valueName = deserializer.fieldValueToObject(String.class, columnMsg.getByName(VALUE_NAME_FIELD));
          ValueProperties properties = deserializer.fieldValueToObject(ValueProperties.class, columnMsg.getByName(PORTFOLIO_REQUIREMENT_CONSTRAINTS_FIELD));
          columns.add(new ViewCalculationConfiguration.Column(header, valueName, properties));
        }
      }
      calcConfig.setColumns(columns);
      viewDefinition.addViewCalculationConfiguration(calcConfig);
    }
    FudgeField uniqueId = message.getByName("uniqueId");
    if (uniqueId != null) {
      viewDefinition.setUniqueId(deserializer.fieldValueToObject(UniqueId.class, uniqueId));
    }
    return viewDefinition;
  }
View Full Code Here

        return ComputationTargetSpecification.NULL;
      } else {
        return new ComputationTargetRequirement(type, ExternalIdBundle.EMPTY);
      }
    } else if (types.isEmpty()) {
      FudgeField field = message.getByName(IDENTIFIER_FIELD_NAME);
      if (field == null) {
        field = message.getByName("computationTargetId");
      }
      if (field.getValue() instanceof FudgeMsg) {
        return new ComputationTargetRequirement(type, deserializer.fieldValueToObject(ExternalIdBundle.class, field));
      } else {
        return new ComputationTargetSpecification(type, message.getFieldValue(UniqueId.class, field));
      }
    } else {
      ComputationTargetReference result = null;
      final Iterator<ComputationTargetType> itrType = types.iterator();
      for (final FudgeField field : message.getAllByName(IDENTIFIER_FIELD_NAME)) {
        type = itrType.next();
        if (field.getValue() instanceof FudgeMsg) {
          final ExternalIdBundle identifiers = deserializer.fieldValueToObject(ExternalIdBundle.class, field);
          if (result == null) {
            result = new ComputationTargetRequirement(type, identifiers);
          } else {
            result = result.containing(type, identifiers);
View Full Code Here

  protected InMemoryViewResultModel bootstrapCommonDataFromMessage(final FudgeDeserializer deserializer, final FudgeMsg message) {
    final UniqueId viewProcessId = message.getValue(UniqueId.class, FIELD_VIEWPROCESSID);
    final UniqueId viewCycleId = message.getValue(UniqueId.class, FIELD_VIEWCYCLEID);
    final ViewCycleExecutionOptions viewCycleExecutionOptions = deserializer.fieldValueToObject(ViewCycleExecutionOptions.class, message.getByName(FIELD_VIEW_CYCLE_EXECUTION_OPTIONS));
    final Instant calculationTime = message.getFieldValue(Instant.class, message.getByName(FIELD_CALCULATION_TIME));
    FudgeField durationField = message.getByName(FIELD_CALCULATION_DURATION);
    final Duration calculationDuration = durationField != null ? deserializer.fieldValueToObject(Duration.class, durationField) : null;
    final VersionCorrection versionCorrection = deserializer.fieldValueToObject(VersionCorrection.class, message.getByName(FIELD_VERSION_CORRECTION));
    final Map<String, ViewCalculationResultModel> configurationMap = new HashMap<String, ViewCalculationResultModel>();
    final Queue<String> keys = new LinkedList<String>();
    final Queue<ViewCalculationResultModel> values = new LinkedList<ViewCalculationResultModel>();
View Full Code Here

TOP

Related Classes of org.fudgemsg.FudgeField

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.