检测 Restlet 中的关闭连接

Detecting a closed connection in Restlet

我有一个 Restlet 服务器应用程序,它需要在响应表示未完全交付时(由于用户按下停止按钮等)进行一些清理。到目前为止,我发现了两个在表示已发送后调用的回调:

  1. 在我的自定义表示中覆盖 OutputRepresentation.release()
  2. Uniform 实例传递给 Resource.setOnSent(Uniform)

无论响应表示是否已完全交付,这两个都会被调用。如何查看表示是否已完全交付?

我解决这个问题的方法是发现当连接断开时 Restlet 会抛出一个 IOException。我可以在 catch 块中进行清理。