diff options
author | Bjørn Christian Seime <bjorncs@oath.com> | 2018-08-14 17:45:05 +0200 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@oath.com> | 2018-08-14 17:45:05 +0200 |
commit | 90cdc3376e9a899674264d9ffa2edf3286b248a7 (patch) | |
tree | 0e9bfd53dfffb7e18c23ded68ea82e00421a370b /vespa-athenz/src | |
parent | 13d7b9aed7b5141896c27e56653432ce67777e69 (diff) |
Remove listener interface from ServiceIdentityProvider
Diffstat (limited to 'vespa-athenz/src')
4 files changed, 0 insertions, 76 deletions
diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identity/ServiceIdentityProvider.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identity/ServiceIdentityProvider.java index f945783cf8a..6b318fb16be 100644 --- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identity/ServiceIdentityProvider.java +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identity/ServiceIdentityProvider.java @@ -15,10 +15,4 @@ import javax.net.ssl.SSLContext; public interface ServiceIdentityProvider { AthenzService identity(); SSLContext getIdentitySslContext(); - void addIdentityListener(Listener listener); - void removeIdentityListener(Listener listener); - - interface Listener { - void onCredentialsUpdate(SSLContext sslContext, AthenzService identity); - } } diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identity/ServiceIdentityProviderListenerHelper.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identity/ServiceIdentityProviderListenerHelper.java deleted file mode 100644 index bf50673fab8..00000000000 --- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identity/ServiceIdentityProviderListenerHelper.java +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2018 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.vespa.athenz.identity; - -import com.yahoo.vespa.athenz.api.AthenzService; - -import javax.net.ssl.SSLContext; -import java.util.Set; -import java.util.concurrent.CopyOnWriteArraySet; - -/** - * A helper class managing {@link ServiceIdentityProvider.Listener} instances for implementations of {@link ServiceIdentityProvider}. - * - * @author bjorncs - */ -public class ServiceIdentityProviderListenerHelper { - - private final Set<ServiceIdentityProvider.Listener> listeners = new CopyOnWriteArraySet<>(); - private final AthenzService identity; - - public ServiceIdentityProviderListenerHelper(AthenzService identity) { - this.identity = identity; - } - - public void addIdentityListener(ServiceIdentityProvider.Listener listener) { - listeners.add(listener); - } - - public void removeIdentityListener(ServiceIdentityProvider.Listener listener) { - listeners.remove(listener); - } - - public void onCredentialsUpdate(SSLContext sslContext) { - listeners.forEach(l -> l.onCredentialsUpdate(sslContext, identity)); - } - - public void clearListeners() { - listeners.clear(); - } - -} diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identity/SiaIdentityProvider.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identity/SiaIdentityProvider.java index ebff56a6f48..b06ae089b2a 100644 --- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identity/SiaIdentityProvider.java +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identity/SiaIdentityProvider.java @@ -7,7 +7,6 @@ import com.yahoo.log.LogLevel; import com.yahoo.vespa.athenz.api.AthenzService; import com.yahoo.vespa.athenz.tls.KeyStoreType; import com.yahoo.vespa.athenz.tls.SslContextBuilder; -import com.yahoo.vespa.athenz.utils.AthenzIdentities; import com.yahoo.vespa.athenz.utils.SiaUtils; import javax.net.ssl.SSLContext; @@ -39,7 +38,6 @@ public class SiaIdentityProvider extends AbstractComponent implements ServiceIde private final File certificateFile; private final File trustStoreFile; private final ScheduledExecutorService scheduler; - private final ServiceIdentityProviderListenerHelper listenerHelper; @Inject public SiaIdentityProvider(SiaProviderConfig config) { @@ -71,7 +69,6 @@ public class SiaIdentityProvider extends AbstractComponent implements ServiceIde this.trustStoreFile = trustStoreFile; this.scheduler = scheduler; this.sslContext.set(createIdentitySslContext()); - this.listenerHelper = new ServiceIdentityProviderListenerHelper(service); scheduler.scheduleAtFixedRate(this::reloadSslContext, REFRESH_INTERVAL.toMinutes(), REFRESH_INTERVAL.toMinutes(), TimeUnit.MINUTES); } @@ -93,16 +90,6 @@ public class SiaIdentityProvider extends AbstractComponent implements ServiceIde return sslContext.get(); } - @Override - public void addIdentityListener(Listener listener) { - listenerHelper.addIdentityListener(listener); - } - - @Override - public void removeIdentityListener(Listener listener) { - listenerHelper.removeIdentityListener(listener); - } - private SSLContext createIdentitySslContext() { return new SslContextBuilder() .withTrustStore(trustStoreFile, KeyStoreType.JKS) @@ -115,7 +102,6 @@ public class SiaIdentityProvider extends AbstractComponent implements ServiceIde try { SSLContext sslContext = createIdentitySslContext(); this.sslContext.set(sslContext); - listenerHelper.onCredentialsUpdate(sslContext); } catch (Exception e) { log.log(LogLevel.SEVERE, "Failed to update SSLContext: " + e.getMessage(), e); } @@ -127,7 +113,6 @@ public class SiaIdentityProvider extends AbstractComponent implements ServiceIde try { scheduler.shutdownNow(); scheduler.awaitTermination(90, TimeUnit.SECONDS); - listenerHelper.clearListeners(); } catch (InterruptedException e) { throw new RuntimeException(e); } diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identityprovider/client/AthenzIdentityProviderImpl.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identityprovider/client/AthenzIdentityProviderImpl.java index e40a0933002..266e2ebcefd 100644 --- a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identityprovider/client/AthenzIdentityProviderImpl.java +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/identityprovider/client/AthenzIdentityProviderImpl.java @@ -18,7 +18,6 @@ import com.yahoo.vespa.athenz.api.ZToken; import com.yahoo.vespa.athenz.client.zts.DefaultZtsClient; import com.yahoo.vespa.athenz.client.zts.ZtsClient; import com.yahoo.vespa.athenz.identity.ServiceIdentityProvider; -import com.yahoo.vespa.athenz.identity.ServiceIdentityProviderListenerHelper; import com.yahoo.vespa.athenz.identity.SiaIdentityProvider; import com.yahoo.vespa.athenz.tls.KeyStoreType; import com.yahoo.vespa.athenz.tls.SslContextBuilder; @@ -63,7 +62,6 @@ public final class AthenzIdentityProviderImpl extends AbstractComponent implemen private final ScheduledExecutorService scheduler; private final Clock clock; private final AthenzService identity; - private final ServiceIdentityProviderListenerHelper listenerHelper; private final String dnsSuffix; private final URI ztsEndpoint; @@ -96,7 +94,6 @@ public final class AthenzIdentityProviderImpl extends AbstractComponent implemen this.scheduler = scheduler; this.clock = clock; this.identity = new AthenzService(config.domain(), config.service()); - this.listenerHelper = new ServiceIdentityProviderListenerHelper(this.identity); this.dnsSuffix = config.athenzDnsSuffix(); this.ztsEndpoint = URI.create(config.ztsUrl()); roleSslContextCache = createCache(ROLE_SSL_CONTEXT_EXPIRY, this::createRoleSslContext); @@ -148,16 +145,6 @@ public final class AthenzIdentityProviderImpl extends AbstractComponent implemen } @Override - public void addIdentityListener(Listener listener) { - listenerHelper.addIdentityListener(listener); - } - - @Override - public void removeIdentityListener(Listener listener) { - listenerHelper.removeIdentityListener(listener); - } - - @Override public SSLContext getRoleSslContext(String domain, String role) { // This ssl context should ideally be cached as it is quite expensive to create. try { @@ -216,7 +203,6 @@ public final class AthenzIdentityProviderImpl extends AbstractComponent implemen try { scheduler.shutdownNow(); scheduler.awaitTermination(AWAIT_TERMINTATION_TIMEOUT.getSeconds(), TimeUnit.SECONDS); - listenerHelper.clearListeners(); } catch (InterruptedException e) { throw new RuntimeException(e); } @@ -244,7 +230,6 @@ public final class AthenzIdentityProviderImpl extends AbstractComponent implemen credentials = isExpired(credentials) ? athenzCredentialsService.registerInstance() : athenzCredentialsService.updateCredentials(credentials.getIdentityDocument(), credentials.getIdentitySslContext()); - listenerHelper.onCredentialsUpdate(credentials.getIdentitySslContext()); } catch (Throwable t) { log.log(LogLevel.WARNING, "Failed to update credentials: " + t.getMessage(), t); } |