我有一个巨大的@OpenApi批注(基本上是Javalin/Kotlin端点的文档),它占用很多行:

@OpenApi(
   summary = "",
   description = "Lists all customers",
   path = "customers",
   queryParams =
   // ...........
   // ...........
   // etc
)
override fun handle(context: Context) {
   // body of the REST handler
}

我必须滚动很多才能看到实际的处理程序。
因此,我想以某种方式隔离它:
@GetCustomersDoc
override fun handle(context: Context) {
   // body of the REST handler
}

我同意将文档移到其他地方的其他解决方案。

这样可以使代码更整洁,并且文档分开。

最佳答案

好的,所以您想要的是@OpenApi文档与REST处理程序代码分开。您可以通过取消实现而不是取消注释来实现。

因此,在当前文件中,将所有@OpenApi批注与REST处理程序代码混合在一起,您可以调用帮助程序函数,如下所示:

@OpenApi(
   summary = "",
   description = "Lists all customers",
   path = "customers",
   queryParams =
   // ...........
   // ...........
   // etc
)
override fun handle(context: Context) {
   handleGetCustomers(context)
}

然后,您将所有REST处理程序(放置在该文件的顶部或另一个文件中,以进一步隔离),使您可以在所有REST处理程序之间滚动,而不会产生@OpenApi批注:
// Collected at the top of the file, or in a separate file
fun handleGetCustomers(context: Context) {
    // body of the REST handler
}

然后,您可以轻松地在REST处理程序代码中滚动,而不会被@OpenApi噪声打扰。

请注意,您应该使用Android Studio的“转到->定义”功能来避免滚动到handleGetCustomers()

10-05 23:09