當前位置: 首頁>>代碼示例>>Java>>正文


Java Exchange.setException方法代碼示例

本文整理匯總了Java中org.apache.camel.Exchange.setException方法的典型用法代碼示例。如果您正苦於以下問題:Java Exchange.setException方法的具體用法?Java Exchange.setException怎麽用?Java Exchange.setException使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.apache.camel.Exchange的用法示例。


在下文中一共展示了Exchange.setException方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: onCompletion

import org.apache.camel.Exchange; //導入方法依賴的package包/類
@Override
public void onCompletion(Exchange exchange) {
	if (wrappedAggregationStrategy != null
			&& wrappedAggregationStrategy instanceof CompletionAwareAggregationStrategy) {
		((CompletionAwareAggregationStrategy) wrappedAggregationStrategy).onCompletion(exchange);
	}

	// Remove exception, fault and redelivery info from exchange
	exchange.setException(null);
	exchange.removeProperty(Exchange.FAILURE_HANDLED);
	exchange.removeProperty(Exchange.FAILURE_ENDPOINT);
	exchange.removeProperty(Exchange.FAILURE_ROUTE_ID);
	exchange.removeProperty(Exchange.ERRORHANDLER_CIRCUIT_DETECTED);
	exchange.removeProperty(Exchange.ERRORHANDLER_HANDLED);
	exchange.removeProperty(Exchange.EXCEPTION_HANDLED);
	exchange.removeProperty(Exchange.EXCEPTION_CAUGHT);

	Message message = exchange.hasOut() ? exchange.getOut() : exchange.getIn();
	message.setFault(false);
	message.removeHeader(Exchange.REDELIVERED);
	message.removeHeader(Exchange.REDELIVERY_COUNTER);
	message.removeHeader(Exchange.REDELIVERY_DELAY);
	message.removeHeader(Exchange.REDELIVERY_EXHAUSTED);
	message.removeHeader(Exchange.REDELIVERY_MAX_COUNTER);
}
 
開發者ID:bszeti,項目名稱:camel-springboot,代碼行數:26,代碼來源:ContinueOnExceptionStrategy.java

示例2: process

import org.apache.camel.Exchange; //導入方法依賴的package包/類
@Override
public final void process(final Exchange exchange) throws Exception {
    if (exchange.isFailed()) {
        return;
    }

    if (type == null) {
        return;
    }

    final Message message = message(exchange);
    final String bodyAsString = message.getBody(String.class);

    if (bodyAsString == null) {
        return;
    }

    try {
        final Object output = MAPPER.readValue(bodyAsString, type);
        message.setBody(output);
    } catch (final IOException e) {
        exchange.setException(e);
    }
}
 
開發者ID:syndesisio,項目名稱:syndesis,代碼行數:25,代碼來源:UnmarshallProcessor.java

示例3: process

import org.apache.camel.Exchange; //導入方法依賴的package包/類
@Override
public void process(final Exchange exchange) throws Exception {
    // parse input json and extract Id field
    final Message in = exchange.getIn();
    final String body = in.getBody(String.class);

    if (body == null) {
        return;
    }

    final ObjectNode node = (ObjectNode) MAPPER.readTree(body);

    final String idPropertyName = determineIdProperty(exchange);

    final JsonNode idProperty = node.remove(idPropertyName);
    if (idProperty == null) {
        exchange.setException(
            new SalesforceException("Missing option value for Id or " + SalesforceEndpointConfig.SOBJECT_EXT_ID_NAME, 404));

        return;
    }

    final String idValue = idProperty.textValue();
    if ("Id".equals(idPropertyName)) {
        in.setHeader(SalesforceEndpointConfig.SOBJECT_ID, idValue);
    } else {
        in.setHeader(SalesforceEndpointConfig.SOBJECT_EXT_ID_VALUE, idValue);
    }

    // base fields are not allowed to be updated
    clearBaseFields(node);

    // update input json
    in.setBody(MAPPER.writeValueAsString(node));
}
 
開發者ID:syndesisio,項目名稱:syndesis,代碼行數:36,代碼來源:AdaptObjectForUpdateProcessor.java

示例4: process

import org.apache.camel.Exchange; //導入方法依賴的package包/類
@Override
public boolean process(Exchange exchange, AsyncCallback callback) {
    try {
        process(exchange);
        Message out = exchange.getOut();
        out.copyFrom(exchange.getIn());
    } catch (Exception e) {
        exchange.setOut(null);
        exchange.setException(e);
    }
    callback.done(true);
    return true;
}
 
開發者ID:apache,項目名稱:incubator-plc4x,代碼行數:14,代碼來源:PLC4XProducer.java

示例5: setFailureHandled

import org.apache.camel.Exchange; //導入方法依賴的package包/類
private static void setFailureHandled(Exchange exchange) {
	exchange.setProperty(Exchange.EXCEPTION_CAUGHT, exchange.getException());
	exchange.setProperty(Exchange.ERRORHANDLER_HANDLED, Boolean.TRUE);
	exchange.setException(null);
}
 
開發者ID:oehf,項目名稱:ipf-flow-manager,代碼行數:6,代碼來源:FlowBeginProcessor.java


注:本文中的org.apache.camel.Exchange.setException方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。