org.apache.synapse.MessageContext.getEnvironment()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(10.2k)|赞(0)|评价(0)|浏览(101)

本文整理了Java中org.apache.synapse.MessageContext.getEnvironment()方法的一些代码示例,展示了MessageContext.getEnvironment()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。MessageContext.getEnvironment()方法的具体详情如下:
包路径:org.apache.synapse.MessageContext
类名称:MessageContext
方法名:getEnvironment

MessageContext.getEnvironment介绍

[英]Returns a reference to the host Synapse Environment
[中]返回对主机Synapse环境的引用

代码示例

代码示例来源:origin: wso2/wso2-synapse

/**
 * {@inheritDoc}
 */
public SynapseEnvironment getEnvironment() {
  return mc.getEnvironment();
}

代码示例来源:origin: wso2/wso2-synapse

/**
 * {@inheritDoc}
 */
public SynapseEnvironment getEnvironment() {
  return mc.getEnvironment();
}

代码示例来源:origin: org.apache.synapse/synapse-extensions

public SynapseEnvironment getEnvironment() {
  return mc.getEnvironment();
}

代码示例来源:origin: org.apache.synapse/synapse-core

/**
 * Public method for event dispatching, used by the eventPublisher mediator and eventSource
 *
 * @param msgCtx message context
 */
public void dispatchEvents(org.apache.synapse.MessageContext msgCtx) {
  List<Subscription> subscribers = null;
  // Call event dispatcher
  msgCtx.getEnvironment().getExecutorService()
      .execute(new EventDispatcher(msgCtx));
}

代码示例来源:origin: wso2/wso2-synapse

/**
 * Public method for event dispatching, used by the eventPublisher mediator and eventSource
 *
 * @param msgCtx message context
 */
public void dispatchEvents(org.apache.synapse.MessageContext msgCtx) {
  List<Subscription> subscribers = null;
  // Call event dispatcher
  msgCtx.getEnvironment().getExecutorService()
      .execute(new EventDispatcher(msgCtx));
}

代码示例来源:origin: wso2/wso2-synapse

/**
 * Mediation method. This will not do any tasks in CommentMediator
 *
 * @param synCtx the current message for mediation     *
 * @return true since remaining mediators should be executed
 */
public boolean mediate(MessageContext synCtx) {
  if (synCtx.getEnvironment().isDebuggerEnabled()) {
    if (super.divertMediationRoute(synCtx)) {
      return true;
    }
  }
  return true;
}

代码示例来源:origin: wso2/wso2-synapse

public boolean mediate(MessageContext synCtx) {

     if (synCtx.getEnvironment().isDebuggerEnabled()) {
       if (super.divertMediationRoute(synCtx)) {
         return true;
       }
     }

     return super.mediate(synCtx);
   }
}

代码示例来源:origin: org.wso2.carbon.appmgt/org.wso2.carbon.appmgt.usage.publisher

public static String getAppNameFromSynapseEnvironment(MessageContext synCtx, String referer) {

    // TODO check this logic when multitenancy is involved
    Collection<API> apis = synCtx.getEnvironment().getSynapseConfiguration().getAPIs();
    for (API api : apis) {
      if ("/".equals(api.getContext())) {
        return "/";
      } else if (referer.contains(api.getContext())) {
        return api.getAPIName();
      }
    }
    return null;
  }
}

代码示例来源:origin: wso2/wso2-synapse

public boolean mediate(MessageContext synCtx) {
  if (synCtx.getEnvironment().isDebuggerEnabled()) {
    if (super.divertMediationRoute(synCtx)) {
      return true;
    }
  }
  if (log.isDebugEnabled()) {
    log.debug("Mediation for Event Publisher started");
  }
  SynapseEventSource eventSource = synCtx.getConfiguration().getEventSource(eventSourceName);
  eventSource.dispatchEvents(synCtx);
  return true;
}

代码示例来源:origin: wso2/wso2-synapse

/**
 * Contains 2 paths - one when JSON Streaming is in use (mediateJsonStreamPayload) and the other for regular
 * builders (mediatePayload).
 * @param synCtx the current message for mediation
 * @return
 */
public boolean mediate(MessageContext synCtx) {
  if (synCtx.getEnvironment().isDebuggerEnabled()) {
    if (super.divertMediationRoute(synCtx)) {
      return true;
    }
  }
  String format = formatRaw;
  return mediate(synCtx, format);
}

代码示例来源:origin: org.apache.synapse/synapse-core

@Override
public void send(MessageContext synCtx) {
  reLoadAndInitEndpoint(synCtx.getEnvironment());
  if (realEndpoint != null) {
    realEndpoint.send(synCtx);
  } else {
    informFailure(synCtx, SynapseConstants.ENDPOINT_IN_DIRECT_NOT_READY,
        "Couldn't find the endpoint with the name " + getName() +
            " & template : " + template);
  }
}

代码示例来源:origin: wso2/wso2-synapse

public void sendMessage(MessageContext synCtx) {
  reLoadAndInitEndpoint(synCtx.getEnvironment());
  if (realEndpoint != null) {
    realEndpoint.send(synCtx);
  } else {
    informFailure(synCtx, SynapseConstants.ENDPOINT_IN_DIRECT_NOT_READY,
        "Couldn't find the endpoint with the name " + getName() +
            " & template : " + template);
  }
}

代码示例来源:origin: org.apache.synapse/synapse-core

private boolean dispatchToAPI(MessageContext synCtx) {
    Collection<API> apiSet = synCtx.getEnvironment().getSynapseConfiguration().getAPIs();
    API defaultAPI = null;
    for (API api : apiSet) {
      if ("/".equals(api.getContext())) {
        defaultAPI = api;
      } else if (api.canProcess(synCtx)) {
        if (log.isDebugEnabled()) {
          log.debug("Located specific API: " + api.getName() + " for processing message");
        }
        api.process(synCtx);
        return true;
      }
    }

    if (defaultAPI != null && defaultAPI.canProcess(synCtx)) {
      defaultAPI.process(synCtx);
      return true;
    }

    return false;
  }
}

代码示例来源:origin: wso2/wso2-synapse

public boolean mediate(MessageContext synCtx) {
  if (synCtx.getEnvironment().isDebuggerEnabled()) {
    if (super.divertMediationRoute(synCtx)) {
      return true;
    }
  }
  if (handlerTest != null) {
    handlerTest.handle(synCtx);
  }
  return true;
}

代码示例来源:origin: wso2/wso2-synapse

/**
 * This method is to set mediatorId property to axis2 message context. This Id will be copied to iosession from the DeliveryAgent.java
 * class and it will be used at wire level to identify to which mediator the wirelogs belongs.
 *
 * @param synCtx
 */
public static void setWireLogHolderProperties(MessageContext synCtx, boolean isBreakPoint, SynapseMediationFlowPoint mediationFlowPoint) {
  if (isBreakPoint) {
    String mediatorId = synCtx.getEnvironment().getSynapseDebugManager().createDebugMediationFlowPointJSONForWireLogs(mediationFlowPoint).toString();
    ((Axis2MessageContext) synCtx).getAxis2MessageContext().setProperty(SynapseDebugInfoHolder.SYNAPSE_WIRE_LOG_MEDIATOR_ID_PROPERTY, mediatorId);
  } else {
    /**
     * this is to be used when there are mediators which sends back-end requests, but not a break point.
     */
    ((Axis2MessageContext) synCtx).getAxis2MessageContext().setProperty(SynapseDebugInfoHolder.SYNAPSE_WIRE_LOG_MEDIATOR_ID_PROPERTY,
                                      SynapseDebugInfoHolder.DUMMY_MEDIATOR_ID); //
  }
}

代码示例来源:origin: wso2/wso2-synapse

/**
   * Enqueue CallbackHandledEvent event to the event queue. This informs that callback handling is finished after
   * receiving the callback.
   *
   * @param synapseOutMsgCtx Old MessageContext of the flow.
   * @param callbackId       Callback Id.
   */
  public static void reportCallbackHandlingCompletion(MessageContext synapseOutMsgCtx, String callbackId) {
    if (shouldReportStatistic(synapseOutMsgCtx)) {
      CallbackDataUnit dataUnit = new CallbackDataUnit();
      dataUnit.setCallbackId(callbackId);
      dataUnit.setTime(System.currentTimeMillis());
      dataUnit.setSynapseEnvironment(synapseOutMsgCtx.getEnvironment());
      dataUnit.setStatisticId(StatisticDataCollectionHelper.getStatisticTraceId(synapseOutMsgCtx));
      dataUnit.setCurrentIndex(StatisticDataCollectionHelper.getParentFlowPosition(synapseOutMsgCtx, null));

      CallbackHandledEvent callbackHandledEvent = new CallbackHandledEvent(dataUnit);
      addEventAndDecrementCallbackCount(synapseOutMsgCtx, callbackHandledEvent);
    }
  }
}

代码示例来源:origin: wso2/wso2-synapse

/**
 * Enqueue CallbackReceivedEvent event to the event queue. This informs that callback has received its response.
 *
 * @param oldMessageContext Current MessageContext of the flow.
 * @param callbackId        Callback Id.
 */
public static void updateParentsForCallback(MessageContext oldMessageContext, String callbackId) {
  if (shouldReportStatistic(oldMessageContext)) {
    CallbackDataUnit dataUnit = new CallbackDataUnit();
    dataUnit.setCallbackId(callbackId);
    dataUnit.setTime(System.currentTimeMillis());
    dataUnit.setSynapseEnvironment(oldMessageContext.getEnvironment());
    dataUnit.setStatisticId(StatisticDataCollectionHelper.getStatisticTraceId(oldMessageContext));
    dataUnit.setCurrentIndex(StatisticDataCollectionHelper.getParentFlowPosition(oldMessageContext, null));
    dataUnit.setIsOutOnlyFlow(StatisticDataCollectionHelper.isOutOnlyFlow(oldMessageContext));
    CallbackReceivedEvent callbackReceivedEvent = new CallbackReceivedEvent(dataUnit);
    addEvent(oldMessageContext, callbackReceivedEvent);
  }
}

代码示例来源:origin: wso2/wso2-synapse

/**
 * Enqueue CallbackCompletionEvent event to the event queue. This event inform that callback handling finished or
 * callback is removed by the TimeoutHandler.
 *
 * @param oldMessageContext Current MessageContext of the flow.
 * @param callbackId        Callback Id.
 */
public static void callbackCompletionEvent(MessageContext oldMessageContext, String callbackId) {
  if (shouldReportStatistic(oldMessageContext)) {
    CallbackDataUnit dataUnit = new CallbackDataUnit();
    dataUnit.setCallbackId(callbackId);
    dataUnit.setTime(System.currentTimeMillis());
    dataUnit.setSynapseEnvironment(oldMessageContext.getEnvironment());
    dataUnit.setStatisticId(StatisticDataCollectionHelper.getStatisticTraceId(oldMessageContext));
    dataUnit.setCurrentIndex(StatisticDataCollectionHelper.getParentFlowPosition(oldMessageContext, null));
    dataUnit.setIsOutOnlyFlow(StatisticDataCollectionHelper.isOutOnlyFlow(oldMessageContext));
    CallbackCompletionEvent callbackCompletionEvent = new CallbackCompletionEvent(dataUnit);
    addEventAndDecrementCallbackCount(oldMessageContext, callbackCompletionEvent);
  }
}

代码示例来源:origin: org.apache.synapse/synapse-core

public boolean mediate(MessageContext synCtx) {
  SynapseLog synLog = getLog(synCtx);
  if (synLog.isTraceOrDebugEnabled()) {
    synLog.traceOrDebug("Start : Loopback Mediator");
    if (synLog.isTraceTraceEnabled()) {
      synLog.traceTrace("Message : " + synCtx.getEnvelope());
    }
  }
  if (!synCtx.isResponse()) {
    synCtx.setResponse(true);
    synCtx.setTo(null);
    synCtx.getEnvironment().injectMessage(synCtx);
  }
  if (synLog.isTraceOrDebugEnabled()) {
    synLog.traceOrDebug("End : Loopback Mediator");
  }
  return false;
}

代码示例来源:origin: wso2/wso2-synapse

protected void setUp() throws Exception {
  super.setUp();
  SynapseConfiguration synCfg = new SynapseConfiguration();
  AxisConfiguration config = new AxisConfiguration();
  testCtx = new Axis2MessageContext(new org.apache.axis2.context.MessageContext(),
    synCfg, new Axis2SynapseEnvironment(new ConfigurationContext(config), synCfg));
  ((Axis2MessageContext)testCtx).getAxis2MessageContext().setConfigurationContext(new ConfigurationContext(config));
  SOAPEnvelope envelope = OMAbstractFactory.getSOAP11Factory().getDefaultEnvelope();
  envelope.getBody().addChild(createOMElement("<original>test-split-context</original>"));
  testCtx.setEnvelope(envelope);
  testCtx.setSoapAction("urn:test");
  SequenceMediator seqMed = new SequenceMediator();
  helperMediator = new SplitTestHelperMediator();
  helperMediator.init(testCtx.getEnvironment());
  seqMed.addChild(helperMediator);
  testCtx.getConfiguration().addSequence("seqRef", seqMed);
  testCtx.getConfiguration().addSequence("main", new SequenceMediator());
  testCtx.getConfiguration().addSequence("fault", new SequenceMediator());
}

相关文章

微信公众号

最新文章

更多