public GrpcServiceBuilder addService(String path, BindableService bindableService) {
        return addService(path, bindableService, ImmutableList.of());
    }
Adds a gRPC {@link BindableService} to this {@link GrpcServiceBuilder}. Most gRPC service
implementations are {@link BindableService}s.

<p>Note that the specified {@code path} replaces the normal gRPC service path.
Let's say you have the following gRPC service definition.
<pre>{@code
package example.grpc.hello;

service HelloService {
  rpc Hello (HelloRequest) returns (HelloReply) {}
}}</pre>
The normal gRPC service path for the {@code Hello} method is
{@code "/example.grpc.hello.HelloService/Hello"}.
However, if you set {@code "/foo"} to {@code path}, the {@code Hello} method will be served at
{@code "/foo/Hello"}. This is useful for supporting unframed gRPC with HTTP idiomatic path.
grpc/src/main/java/com/linecorp/armeria/server/grpc/GrpcServiceBuilder.java