public PidServerImpl(PidServerConfig psc) throws NoSuchAlgorithmException {
        if (psc.epicServerUrl == null)
            throw new IllegalArgumentException("configuration parameter `epicServerUrl` is null");
        if (psc.localPrefix == null)
            throw new IllegalArgumentException("configuration parameter `localPrefix` is null");
        if (psc.username == null)
            throw new IllegalArgumentException("configuration parameter `username` is null");
        if (psc.password == null)
            throw new IllegalArgumentException("configuration parameter `password` is null");
        
        epicServer = psc.epicServerUrl;
        localPrefix = psc.localPrefix;

        ClientConfig config = new DefaultClientConfig();
//		SSLContext ctx = SSLContext.getInstance("SSL");
//		ctx.init(null, myTrustManager, null);
//		config.getProperties().put(HTTPSProperties.PROPERTY_HTTPS_PROPERTIES, new HTTPSProperties(hostnameVerifier, ctx));
        if (!epicServer.endsWith("/")) {
            epicServer += "/";
        }
        if (!localPrefix.endsWith("/")) {
            localPrefix += "/";
        }
        client = Client.create(config);
        client.addFilter(new HTTPBasicAuthFilter(psc.username, psc.password));
        wr = client.resource(epicServer);
    }