/**
   * Delete the MessageProcessor instance with given name in the synapse configuration
   *
   * @param name of the MessageProcessor to be deleted
   * @throws AxisFault if Message processor does not exist
   */
  public void deleteMessageProcessor(String name) throws AxisFault {
    SynapseConfiguration configuration = getSynapseConfiguration();

    assert configuration != null;
    if (configuration.getMessageProcessors().containsKey(name)) {
      MessageProcessor processor = configuration.removeMessageProcessor(name);
      String fileName = processor.getFileName();
      if (processor != null) {
        processor.destroy();
      }

      MediationPersistenceManager pm = getMediationPersistenceManager();
      pm.deleteItem(processor.getName(), fileName, ServiceBusConstants.ITEM_TYPE_MESSAGE_PROCESSOR);

    } else {
      handleException(log, "Message Store " + name + " does not exist", null);
    }
  }