class ZMSFileChangeLogStore implements ChangeLogStore {

    public ZMSClient getZMSClient() {

        PrincipalToken token = new PrincipalToken.Builder("S1", ATHENZ_SYS_DOMAIN, ZTS_SERVICE)
                .expirationWindow(24 * 60 * 60L).keyId(privateKeyId).build();
        token.sign(privateKey);

        Principal principal = SimplePrincipal.create(ATHENZ_SYS_DOMAIN,
                ZTS_SERVICE, token.getSignedToken(), authority);

        ZMSClient zmsClient = new ZMSClient(zmsUrl);
        zmsClient.addCredentials(principal);
        return zmsClient;
    }

    public  ZMSFileChangeLogStore(String rootDirectory, PrivateKey privateKey, String privateKeyId);

}