final boolean persistent = config.clustering().cacheMode().isClustered() || (evictionAllowed && !passivationEnabled);
BeanFactory<G, I, T> beanFactory = new InfinispanBeanFactory<>(beanName, groupFactory, beanCache, this.context.getTimeout(), persistent ? passivationListener : null);
Configuration<I, BeanKey<I>, BeanEntry<G>, BeanFactory<G, I, T>> beanConfiguration = new SimpleConfiguration<>(beanCache, beanFactory, beanIdentifierFactory);
final NodeFactory<Address> nodeFactory = this.nodeFactory.getValue();
final Registry<String, ?> registry = this.registry.getValue();
final KeyAffinityServiceFactory affinityFactory = this.affinityFactory.getValue();
final CommandDispatcherFactory dispatcherFactory = this.dispatcherFactory.getValue();
final Time timeout = this.context.getTimeout();
final ScheduledExecutorService scheduler = this.scheduler.getValue();
final ExpirationConfiguration<T> expiration = new ExpirationConfiguration<T>() {
@Override