public void destroyConversation(@Observes(precedence = 1) After event, WeldManager manager) {
    if (!enableConversationScope) {
      return;
    }

    BoundConversationContext conversationContext =
        manager.instance().select(BoundConversationContext.class).get();
    if (!conversationContext.getCurrentConversation().isTransient()) {
      conversationId.set(
          new CDIConversationID(conversationContext.getCurrentConversation().getId()));
    } else {
      conversationId.set(new CDIConversationID(null));
    }

    BoundRequest request = boundRequest.get();

    try {
      conversationContext.invalidate();
      conversationContext.deactivate();
    } finally {
      conversationContext.dissociate(request);
    }
  }