class ServiceHost implements ServiceRequestSender {

    public URI getUri() {
        if (this.cachedUri == null) {
            boolean isSecureConnectionOnly = getCurrentHttpScheme() == HttpScheme.HTTPS_ONLY;
            String scheme = isSecureConnectionOnly ? UriUtils.HTTPS_SCHEME : UriUtils.HTTP_SCHEME;
            int port = isSecureConnectionOnly ? getSecurePort() : getPort();
            this.cachedUri = UriUtils.buildUri(scheme, getPreferredAddress(), port, "", null);
        }
        return this.cachedUri;
    }

    protected  ServiceHost();

}