Skip to content

Commit

Permalink
Infinispan Extension adds SASL to service providers
Browse files Browse the repository at this point in the history
  • Loading branch information
karesti committed Jul 4, 2024
1 parent e9d6790 commit a919c4d
Showing 1 changed file with 26 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,14 @@
import org.jboss.jandex.DotName;
import org.jboss.jandex.IndexView;
import org.jboss.jandex.Type;
import org.wildfly.security.WildFlyElytronBaseProvider;
import org.wildfly.security.sasl.digest.WildFlyElytronSaslDigestProvider;
import org.wildfly.security.sasl.external.WildFlyElytronSaslExternalProvider;
import org.wildfly.security.sasl.gs2.WildFlyElytronSaslGs2Provider;
import org.wildfly.security.sasl.gssapi.WildFlyElytronSaslGssapiProvider;
import org.wildfly.security.sasl.oauth2.WildFlyElytronSaslOAuth2Provider;
import org.wildfly.security.sasl.plain.WildFlyElytronSaslPlainProvider;
import org.wildfly.security.sasl.scram.WildFlyElytronSaslScramProvider;

import io.quarkus.arc.deployment.AdditionalBeanBuildItem;
import io.quarkus.arc.deployment.BeanContainerBuildItem;
Expand Down Expand Up @@ -303,6 +311,11 @@ InfinispanPropertiesBuildItem setup(ApplicationArchivesBuildItem applicationArch
"org.infinispan.client.hotrod.impl.consistenthash.SegmentConsistentHash")
.build());

reflectiveClass.produce(
ReflectiveClassBuildItem.builder(
"org.infinispan.client.hotrod.impl.consistenthash.SegmentConsistentHash")
.build());

return new InfinispanPropertiesBuildItem(propertiesMap);
}

Expand Down Expand Up @@ -465,6 +478,19 @@ void registerServiceBinding(Capabilities capabilities, BuildProducer<ServiceProv
new ServiceProviderBuildItem(SERVICE_BINDING_INTERFACE_NAME,
InfinispanServiceBindingConverter.class.getName()));
}

List<Class<? extends WildFlyElytronBaseProvider>> saslClasses = List.of(
WildFlyElytronSaslPlainProvider.class,
WildFlyElytronSaslDigestProvider.class,
WildFlyElytronSaslExternalProvider.class,
WildFlyElytronSaslOAuth2Provider.class,
WildFlyElytronSaslScramProvider.class,
WildFlyElytronSaslGssapiProvider.class,
WildFlyElytronSaslGs2Provider.class);

saslClasses.forEach(clazz -> buildProducer.produce(new ServiceProviderBuildItem(clazz.getName(),
clazz.getName())));

}

class RemoteCacheBean {
Expand Down

0 comments on commit a919c4d

Please sign in to comment.