Skip to content

Commit e1dac66

Browse files
Add Identifier annotation to DefaultActiveRolesProvider (apache#1111) (apache#24)
* add identifier * add producer * add to config Co-authored-by: Eric Maynard <[email protected]>
1 parent 15f4186 commit e1dac66

File tree

3 files changed

+13
-0
lines changed

3 files changed

+13
-0
lines changed

quarkus/defaults/src/main/resources/application.properties

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,8 @@ polaris.rate-limiter.token-bucket.type=default
111111
polaris.rate-limiter.token-bucket.requests-per-second=9999
112112
polaris.rate-limiter.token-bucket.window=PT10S
113113

114+
polaris.active-roles-provider.type=default
115+
114116
polaris.authentication.authenticator.type=default
115117
polaris.authentication.token-service.type=default
116118
polaris.authentication.token-broker.type=rsa-key-pair

quarkus/service/src/main/java/org/apache/polaris/service/quarkus/config/QuarkusProducers.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@
4747
import org.apache.polaris.core.persistence.PolarisMetaStoreSession;
4848
import org.apache.polaris.core.persistence.cache.EntityCache;
4949
import org.apache.polaris.core.storage.cache.StorageCredentialCache;
50+
import org.apache.polaris.service.auth.ActiveRolesProvider;
5051
import org.apache.polaris.service.auth.Authenticator;
5152
import org.apache.polaris.service.auth.TokenBrokerFactory;
5253
import org.apache.polaris.service.catalog.api.IcebergRestOAuth2ApiService;
@@ -64,6 +65,7 @@
6465
import org.apache.polaris.service.ratelimiter.RateLimiter;
6566
import org.apache.polaris.service.ratelimiter.TokenBucketFactory;
6667
import org.apache.polaris.service.task.TaskHandlerConfiguration;
68+
import org.eclipse.microprofile.config.inject.ConfigProperty;
6769
import org.eclipse.microprofile.context.ManagedExecutor;
6870
import org.eclipse.microprofile.context.ThreadContext;
6971

@@ -239,6 +241,13 @@ public PolarisEntityManager polarisEntityManager(
239241
return new PolarisEntityManager(polarisMetaStoreManager, credentialCache, entityCache);
240242
}
241243

244+
@Produces
245+
public ActiveRolesProvider activeRolesProvider(
246+
@ConfigProperty(name = "polaris.active-roles-provider.type") String persistenceType,
247+
@Any Instance<ActiveRolesProvider> activeRolesProviders) {
248+
return activeRolesProviders.select(Identifier.Literal.of(persistenceType)).get();
249+
}
250+
242251
public void closeTaskExecutor(@Disposes @Identifier("task-executor") ManagedExecutor executor) {
243252
executor.close();
244253
}

service/common/src/main/java/org/apache/polaris/service/auth/DefaultActiveRolesProvider.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
*/
1919
package org.apache.polaris.service.auth;
2020

21+
import io.smallrye.common.annotation.Identifier;
2122
import jakarta.enterprise.context.RequestScoped;
2223
import jakarta.inject.Inject;
2324
import java.util.List;
@@ -44,6 +45,7 @@
4445
* available roles are active for this request.
4546
*/
4647
@RequestScoped
48+
@Identifier("default")
4749
public class DefaultActiveRolesProvider implements ActiveRolesProvider {
4850
private static final Logger LOGGER = LoggerFactory.getLogger(DefaultActiveRolesProvider.class);
4951

0 commit comments

Comments
 (0)