     %{conn | parser: parser}
   end
 
-  defp parse_data(%Conn{jid: jid, owner: owner, parser: parser} = conn, data) do
+  defp parse_data(%Conn{jid: jid, owner: owner, parser: parser} = conn, data, send_to_owner \\ false) do
     {conn, stanzas} =
       cond do
         is_binary(data) ->


  defp handle_data(data, %{socket: socket} = conn) do
    :ok = activate(socket)
    {:ok, _conn, _stanza} = parse_data(conn, data)
  end

  defp activate({:gen_tcp, socket}) do


    for stanza <- stanzas do
      Logger.debug fn -> "[#{jid}][INCOMING] #{inspect Romeo.XML.encode!(stanza)}" end
      if send_to_owner do
        Kernel.send(owner, {:stanza, stanza})
      end
    end

    {:ok, conn, stanzas}
