public void deactivate(String processorName) throws AxisFault {
    SynapseConfiguration configuration = getSynapseConfiguration();

    try {

      assert configuration != null;
      if (configuration.getMessageProcessors().containsKey(processorName)) {
        MessageProcessor processor = configuration.getMessageProcessors().get(processorName);

        if (processor instanceof ScheduledMessageForwardingProcessor) {
          MessageForwardingProcessorView view =
              ((ScheduledMessageForwardingProcessor) processor).getView();
          if (view.isActive()) {
            view.deactivate();
            getMediationPersistenceManager()
                .saveItem(processor.getName(), ServiceBusConstants.ITEM_TYPE_MESSAGE_PROCESSOR);
          } else {
            log.warn("Scheduled Message Forwarding Processor - already deActive");
          }
        } else if (processor instanceof SamplingProcessor) {
          SamplingProcessorView view = ((SamplingProcessor) processor).getView();
          if (view.isActive()) {
            view.deactivate();
            getMediationPersistenceManager()
                .saveItem(processor.getName(), ServiceBusConstants.ITEM_TYPE_MESSAGE_PROCESSOR);
          } else {
            log.warn("Sampling Message Processor - already in the deactivated state");
          }
        }
      }
    } catch (Exception e) {
      log.error("Error While accessing MessageProcessor view ");
      throw new AxisFault(e.getMessage());
    }
  }
  /**
   * Get the Active Status of the message processor
   *
   * @param processorName
   * @return
   */
  public boolean isActive(String processorName) throws AxisFault {
    SynapseConfiguration configuration = getSynapseConfiguration();
    boolean active = false;
    try {
      assert configuration != null;
      if (configuration.getMessageProcessors().containsKey(processorName)) {
        MessageProcessor processor = configuration.getMessageProcessors().get(processorName);

        if (processor instanceof ScheduledMessageForwardingProcessor) {
          MessageForwardingProcessorView view =
              ((ScheduledMessageForwardingProcessor) processor).getView();
          if (view != null) {
            active = view.isActive();
          }
        } else if (processor instanceof SamplingProcessor) {
          SamplingProcessorView view = ((SamplingProcessor) processor).getView();
          if (view != null) {
            active = view.isActive();
          }
        }
      }
    } catch (Exception e) {
      log.error("Error While accessing MessageProcessor view ");
      throw new AxisFault(e.getMessage());
    }

    return active;
  }