class GetIdentity implements Handler {

  @OpenApi(
      path = ROUTE,
      method = HttpMethod.GET,
      summary = "Get node identity",
      description = "Retrieves data about the node's network presence.",
      tags = {TAG_V1_NODE},
      responses = {
        @OpenApiResponse(
            status = RES_OK,
            content = @OpenApiContent(from = IdentityResponse.class),
            description = "The identifying information of the node."),
        @OpenApiResponse(status = RES_INTERNAL_ERROR)
      })
  @Override
  public void handle(@NotNull final Context ctx) throws Exception {
    ctx.header(Header.CACHE_CONTROL, CACHE_NONE);
    final Identity networkIdentity =
        new Identity(
            network.getNodeIdAsBase58(),
            network.getEnr().orElse(""),
            network.getListeningAddresses(),
            network.getDiscoveryAddresses(),
            network.getMetadata());
    ctx.result(jsonProvider.objectToJSON(new IdentityResponse(networkIdentity)));
  }

  public  GetIdentity(final DataProvider provider, final JsonProvider jsonProvider);
    GetIdentity(final NetworkDataProvider provider, final JsonProvider jsonProvider);

}