/** * {@inheritDoc} */ @Override public Object getPropertyValue(String name) { return _context.getPropertyValue(name); }
/** * {@inheritDoc} */ @Override public <T> T getPropertyValue(String name) { return _context.getPropertyValue(name); }
/** * {@inheritDoc} */ @Override public <T> T getPropertyValue(String name) { return _context.getPropertyValue(name); }
/** * {@inheritDoc} */ @Override public <T> T getPropertyValue(String name) { return getContext().getPropertyValue(name); }
/** * {@inheritDoc} */ @Override public <T> T getPropertyValue(String name) { return getContext().getPropertyValue(name); }
private String getContextProperty(Context context, String name) { Object p = context.getPropertyValue(name); if (p instanceof SOAPHeaderElement) { return ((SOAPHeaderElement)p).getValue(); } else if (p != null) { return p.toString(); } return null; } }
@Override public Object getProperty(String name) { return _exchange.getContext().getPropertyValue(name); }
@Override public Object getProperty(String name) { return _exchange.getContext().getPropertyValue(name); }
protected boolean getTxEnabledFromContext(Context ctx) { String key = CONTEXT_PROPERTY_PREFIX + KEY_TRANSACTED; if (ctx.getProperty(key) != null) { boolean transacted = Boolean.parseBoolean(ctx.getPropertyValue(key).toString()); if (_logger.isDebugEnabled()) { _logger.debug("transacted is set to '" + transacted + "'"); } return transacted; } return _defaultTxEnabled; }
protected int getAcknowledgeModeFromContext(Context ctx) { String key = CONTEXT_PROPERTY_PREFIX + KEY_ACKNOWLEDGE_MODE; if (ctx.getProperty(key) != null) { int ackMode = Integer.parseInt(ctx.getPropertyValue(key).toString()); if (_logger.isDebugEnabled()) { _logger.debug("Acknowledge Mode is set to '" + ackMode + "'"); } return ackMode; } return _defaultAckMode; }
private QName getTargetServiceName(Exchange exchange) { // Figure out the QName for the service were invoking. QName service = exchange.getProvider().getName(); // Overriding target service name if it's specified in context property. String targetName = exchange.getContext().getPropertyValue(CONTEXT_PROPERTY_PREFIX + KEY_TARGET_SERVICE); if (targetName == null) { targetName = _targetService != null ? _targetService : service.getLocalPart(); } String targetNS = exchange.getContext().getPropertyValue(CONTEXT_PROPERTY_PREFIX + KEY_TARGET_NAMESPACE); if (targetNS == null) { targetNS = _targetNamespace != null ? _targetNamespace : service.getNamespaceURI(); } return new QName(targetNS, targetName); }
/** * Gets an Object context property. * @param exchange the exchange * @param message the message * @param name the name * @return the property */ protected Object getObject(Exchange exchange, Message message, String name) { Context context = message != null ? exchange.getContext(message) : exchange.getContext(); return context.getPropertyValue(name); }
/** * Gets an Object context property. * @param exchange the exchange * @param message the message * @param name the name * @return the property */ protected Object getObject(Exchange exchange, Message message, String name) { Context context = message != null ? exchange.getContext(message) : exchange.getContext(); return context.getPropertyValue(name); }
@Override public void recordMetrics(Exchange exchange) { final String gatewayName = exchange.getContext().getPropertyValue(ExchangeCompletionEvent.GATEWAY_NAME); if (gatewayName != null && _gateways.containsKey(gatewayName)) { _gateways.get(gatewayName).recordMetrics(exchange); } _promotedService.recordMetrics(exchange); } }
protected MessageType getOutputMessageTypeFromContext(Context ctx) { String key = CONTEXT_PROPERTY_PREFIX + KEY_MESSAGE_TYPE; if (ctx.getProperty(key) != null) { MessageType type = MessageType.valueOf(ctx.getPropertyValue(key).toString()); if (_logger.isDebugEnabled()) { _logger.debug("Output message type is set to '" + type.toString() + "'"); } return type; } return _defaultOutMessageType; }
protected MessageType getOutputMessageTypeFromContext(Context ctx) { String key = CONTEXT_PROPERTY_PREFIX + KEY_MESSAGE_TYPE; if (ctx.getProperty(key) != null) { MessageType msgType = MessageType.valueOf(ctx.getPropertyValue(key).toString()); if (_logger.isDebugEnabled()) { _logger.debug("Output message type is set to '" + msgType.toString() + "'"); } return msgType; } return _defaultOutMessageType; }
@Override public void recordMetrics(Exchange exchange) { final String gatewayName = exchange.getContext().getPropertyValue(ExchangeCompletionEvent.GATEWAY_NAME); if (gatewayName != null && _gateways.containsKey(gatewayName)) { _gateways.get(gatewayName).recordMetrics(exchange); } final String operationName = exchange.getContract().getProviderOperation().getName(); if (operationName != null) { for (final ServiceOperation operation : _operations) { if (operationName.equals(operation.getName())) { operation.recordMetrics(exchange); break; } } } super.recordMetrics(exchange); } }
@Test public void testRelatesToSetOnReply() { ServiceReference service = _domain.createInOutService( new QName("ReplyTest"), new MockHandler().forwardInToOut()); MockHandler replyHandler = new MockHandler(); Exchange exchange = service.createExchange(replyHandler); Message message = exchange.createMessage(); exchange.send(message); String requestId = message.getContext().getPropertyValue(Exchange.MESSAGE_ID); String replyId = exchange.getMessage().getContext().getPropertyValue(Exchange.MESSAGE_ID); String replyRelatesTo = exchange.getMessage().getContext().getPropertyValue(Exchange.RELATES_TO); Assert.assertEquals(requestId, replyRelatesTo); Assert.assertFalse(requestId.equals(replyId)); }
@Override public synchronized void sendFault(Message message) { assertMessageOK(message); // You can't send a fault before you send a message if (_phase == null) { throw RuntimeMessages.MESSAGES.sendFaultNotAllowed(); } _phase = ExchangePhase.OUT; _state = ExchangeState.FAULT; initFaultContentType(); // set relatesTo header on OUT context message.getContext().setProperty(RELATES_TO, _message.getContext().getPropertyValue(MESSAGE_ID)) .addLabels(BehaviorLabel.TRANSIENT.label()); sendInternal(message); }
@Override public void sendFault(Message message) { org.apache.camel.Message extract = extract(message); _exchange.setProperty(PHASE, ExchangePhase.OUT); String id = getContext().getPropertyValue(MESSAGE_ID); _exchange.setIn(extract); _exchange.setProperty(FAULT, true); getContext().setProperty(Exchange.RELATES_TO, id); getContext().setProperty(Exchange.MESSAGE_ID, extract.getMessageId()); org.switchyard.Property rollbackOnFaultProperty = getContext().getProperty(org.switchyard.Exchange.ROLLBACK_ON_FAULT); if (rollbackOnFaultProperty == null || rollbackOnFaultProperty.getValue() == null) { getContext().setProperty(org.switchyard.Exchange.ROLLBACK_ON_FAULT, Boolean.FALSE, Scope.EXCHANGE); } sendInternal(); }