Package org.jboss.soa.esb.message.mapping

Examples of org.jboss.soa.esb.message.mapping.ObjectMapper


        order.setUnitPrice(new BigDecimal("20.0"));
    message.getBody().add("Order", order);
        //extract the order from the message, so the drl can process it
        List<String> messagePathList = new ArrayList<String>();
        messagePathList.add("body.Order");
        ObjectMapper mapper = new ObjectMapper();
        List<Object> objectList = mapper.createObjectList(message, messagePathList);
        //Now send to the rules engine
    JBossRulesRouter jbossRulesRouter = new JBossRulesRouter();
    ConfigTree configTree = new CBRConfigTreeBuilder( true ).ruleFile( "JBossESBPricingRoutingRules.drl").build();
    jbossRulesRouter.setConfigTree( configTree );
        try {
View Full Code Here


        order.setUnitPrice(new BigDecimal("20.0"));
        message.getBody().add("Order", order);
//      extract the order from the message, so the drl can process it
        List<String> messagePathList = new ArrayList<String>();
        messagePathList.add("body.Order");
        ObjectMapper mapper = new ObjectMapper();
        List<Object> objectList = mapper.createObjectList(message, messagePathList);
        //Now send to the rules engine
        JBossRulesRouter jbossRulesRouter = new JBossRulesRouter();
    ConfigTree configTree = new CBRConfigTreeBuilder( true ).ruleFile( "JBossESBPricingRoutingRules.drl").build();
    jbossRulesRouter.setConfigTree( configTree );
        try {
View Full Code Here

      ArrayList<String> messagePathList = new ArrayList<String>();
        messagePathList.add("body.Order");
        messagePathList.add("body.Counter");

        // process message
        List<Object> objectList = new ObjectMapper().createObjectList(message, messagePathList);
    RuleInfo ruleInfo = new RuleInfoBuilder("JBossESBPricingRulesStateful.drl").reload(true).globals(globals).defaultFacts(objectList).build();
    StatefulRuleInfoImpl statefulRuleInfo = new StatefulRuleInfoImpl(ruleInfo, false, true);
    message = ruleService.executeStatefulRules( statefulRuleInfo, message );
        assertEquals( 20.0, order.getDiscount(), 0 );
        assertEquals( "20%" ,message.getBody().get("DiscountObject"));

        //  process message again with a counter instance
        objectList = new ObjectMapper().createObjectList(message, messagePathList);
    ruleInfo = new RuleInfoBuilder("JBossESBPricingRulesStateful.drl").reload(true).globals(globals).defaultFacts(objectList).build();
    statefulRuleInfo = new StatefulRuleInfoImpl(ruleInfo, false, true);
    message = ruleService.continueStatefulRulesExecution( statefulRuleInfo, message );

        Counter counter = (Counter) message.getBody().get("Counter");
View Full Code Here

        long timestamp = System.currentTimeMillis();
        message.getProperties().setProperty(Environment.MESSAGE_ENTRY_TIME, timestamp);

        final RuleInfoBuilder builder = new RuleInfoBuilder("PricingRulesStatefulEntryPoint.drl");
    builder.global("message", message);
    final ObjectMapper objectMapper = new ObjectMapper();
    builder.defaultFact(objectMapper.getObjectFromMessage(message, "body.Counter"));
    builder.defaultFact(message);

    // OrderEntryPoint that matches the entry-point name in PricingRulesStatfulEntryPoint.drl.
    builder.fact("OrderEntryPoint", objectMapper.getObjectFromMessage(message, "body.Order"));
        // process message
    StatefulRuleInfo statefulInfo = new StatefulRuleInfoImpl(builder.build(), false, true);
        message = ruleService.executeStatefulRules(statefulInfo, message);

        assertEquals( 20.0, order.getDiscount(), 0 );
View Full Code Here

        messagePathList.add("body.Order");
        messagePathList.add("body.Counter");

        final RuleInfoBuilder builder = new RuleInfoBuilder("PricingRulesStatefulEntryPoint.drl");
        builder.global("message", message);
        final ObjectMapper objectMapper = new ObjectMapper();
    builder.defaultFact(objectMapper.getObjectFromMessage(message, "body.Counter"));

        // Non Existing entry-point name.
        builder.fact("Bajja", objectMapper.getObjectFromMessage(message, "body.Order"));
        // process message
    StatefulRuleInfo statefulInfo = new StatefulRuleInfoImpl(builder.build(), true, false);
        ruleService.executeStatefulRules(statefulInfo, message);
    }
View Full Code Here

        AssertArgument.isNotNull(message, "message");
        try
        {
            final Map<String, List<Object>> newEntryPointMap = new HashMap<String, List<Object>>();
           
            ObjectMapper objectMapper = new ObjectMapper();
            for (Entry<String, List<String>> entry : entryPointMap.entrySet())
            {
                final String entryPointName = entry.getKey();
                final List<Object> extractedObjects = new ArrayList<Object>();
                for (String objectName : entry.getValue())
                {
                    Object objectFromMessage = objectMapper.getObjectFromMessage(message, objectName);
                    extractedObjects.add(objectFromMessage);
                }
                newEntryPointMap.put(entryPointName, extractedObjects);
            }
            return newEntryPointMap;
View Full Code Here

      perform(request,_start);
    }
   
    private void perform(Message esbMessage, boolean start)
    {
            ObjectMapper objectMapper = new ObjectMapper();
            final NewProcessInstanceCommand command ;
            if (start) {
                final String transition = MessageHelper.getStringValue(esbMessage, Constants.TRANSITION_NAME);
                command = new AsyncStartProcessInstanceCommand(transition);
            } else {
                command = new NewProcessInstanceCommand();
            }
      Long processDefId = MessageHelper.getLongValue(esbMessage,Constants.PROCESS_DEFINITION_ID);
            if (null!=processDefId) {
                command.setProcessId(processDefId);
            } else {
               String processName  = MessageHelper.getStringValue(esbMessage,Constants.PROCESS_DEFINITION_NAME);
               if (null!=processName) {
                   command.setProcessName(processName);
               } else {
                   throw new JbpmException("At least one of "+Constants.PROCESS_DEFINITION_NAME
            +" or "+Constants.PROCESS_DEFINITION_ID+" must have a valid value");
               }
            }
            String keyPath = MessageHelper.getStringValue(esbMessage, Constants.KEYPATH);
            if (keyPath!=null) {
                try {
                    String key = String.valueOf(objectMapper.getObjectFromMessage(esbMessage, keyPath));
                    command.setKey(key);
                } catch (ObjectMappingException e) {
                    logger.error("Could not locate key " + e.getMessage(), e);
                }
            }
View Full Code Here

                Map processVariables = (Map) result;
                List<Mapping> variableMappings = GetProcessVariablesFacade.getMappings(message);

                for (Mapping mapping : variableMappings) {
                    Object value = processVariables.get(mapping.getBpm());
                    ObjectMapper mapper = new ObjectMapper();

                    try {
                        if(value != null) {
                            mapper.setObjectOnMessage(message, mapping.getEsb(), value);
                        } else {
                            mapper.setObjectOnMessage(message, mapping.getEsb(), mapping.getDefaultValue());
                        }
                    } catch (ObjectMappingException e) {
                        throw new JbpmException("Failed to apply jBPM->ESB mapping for process instance ID '" + processInstanceId + "' (root token ID '" + processInstance.getRootToken().getId() + "'). Mapping: " + mapping);
                    }
                }
View Full Code Here

        //if that fails then try to get it from the ExecutionContext
        if (object==null) {
            object = MVEL.getProperty(mapping.getBpm(), executionContext);
        }
        if (null != object) {
            ObjectMapper mapper = new ObjectMapper();
            mapper.setObjectOnMessage(message, mapping.getEsb(), object);
        } else {
            log.warn("The object " + mapping.getBpm() + " is null and cannot not be set on the message");
        }
    }
View Full Code Here

        _config = config;
        checkMyParms();
        _registry = RegistryFactory.getRegistry();
        _cbr = ContentBasedRouterFactory.getRouter(_cbrClass);
        _cbr.setConfigTree(config);
        _mapper = new ObjectMapper(config);
        try {
            dlQueueInvoker = new ServiceInvoker(ServiceInvoker.INTERNAL_SERVICE_CATEGORY, ServiceInvoker.DEAD_LETTER_SERVICE_NAME);
        } catch (MessageDeliverException e) {
            throw new MessageRouterException(e);
        }
View Full Code Here

TOP

Related Classes of org.jboss.soa.esb.message.mapping.ObjectMapper

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.