class InstanceZTSProvider implements InstanceProvider {

    @Override
    public void initialize(String provider, String providerEndpoint, SSLContext sslContext,
            KeyStore keyStore) {

        // obtain list of valid principals for this principal if
        // one is configured

        final String principalList = System.getProperty(ZTS_PRINCIPAL_LIST);
        if (principalList != null && !principalList.isEmpty()) {
            principals = new HashSet<>(Arrays.asList(principalList.split(",")));
        }

        // determine the dns suffix. if this is not specified we'll be
        // rejecting all entries
        
        dnsSuffix = System.getProperty(ZTS_PROVIDER_DNS_SUFFIX, "zts.athenz.cloud");
        if (dnsSuffix.isEmpty()) {
            dnsSuffix = "zts.athenz.cloud";
        }
        this.keyStore = keyStore;
    }

}