public EurekaEndpointGroupBuilder appName(String appName) {
        requireNonNull(appName, "appName");
        checkArgument(!appName.isEmpty(), "appName is empty.");
        checkState(vipAddress == null && secureVipAddress == null,
                   "cannot set appName with the %s.", vipAddress != null ? "vipAddress" : "secureVipAddress");
        this.appName = appName;
        return this;
    }
Sets the specified {@code appName}. {@link EurekaEndpointGroup} will retrieve the registry information
whose application name is the specified {@code appName}.

@throws IllegalStateException if {@link #vipAddress(String)} or {@link #secureVipAddress(String)} is
                              called already
eureka/src/main/java/com/linecorp/armeria/client/eureka/EurekaEndpointGroupBuilder.java