private static List<URI> findPreferredURIs(AbstractInvocationContext context, List<URI> uris) { Collection<URI> attachment = context.getAttachment(TransactionInterceptor.PREFERRED_DESTINATIONS); if (attachment == null) { return null; } HashSet<URI> preferred = new HashSet<>(attachment); List<URI> result = null; for (URI check : uris) { if (preferred.contains(check) && !isBlackListed(context, check)) { if (result == null) { result = new ArrayList<>(preferred.size()); } result.add(check); } } return result; }
static boolean setNamingDestination(final AbstractInvocationContext context, final NamingProvider namingProvider) { final ProviderEnvironment providerEnvironment = namingProvider.getProviderEnvironment(); final List<URI> providerUris = providerEnvironment.getProviderUris(); List<URI> uris = findPreferredURIs(context, providerUris); if (uris == null) { uris = new ArrayList<>(providerUris.size()); for (URI uri : providerUris) { if (!isBlackListed(context, uri)) { uris.add(uri); } } } final int size = uris.size(); if (size == 0) { // we can't discover the location; fail return false; } else if (size == 1) { context.setDestination(uris.get(0)); return true; } else { context.setDestination(uris.get(ThreadLocalRandom.current().nextInt(size))); } if (context instanceof EJBSessionCreationInvocationContext) { DiscoveryEJBClientInterceptor.setupSessionAffinities((EJBSessionCreationInvocationContext)context); } return true; }
if (! isBlackListed(context, affinity.getUri())) { if (! isBlackListed(context, weakAffinity.getUri())) { context.setDestination(weakAffinity.getUri()); context.setTargetAffinity(weakAffinity);
private static List<URI> findPreferredURIs(AbstractInvocationContext context, List<URI> uris) { Collection<URI> attachment = context.getAttachment(TransactionInterceptor.PREFERRED_DESTINATIONS); if (attachment == null) { return null; } HashSet<URI> preferred = new HashSet<>(attachment); List<URI> result = null; for (URI check : uris) { if (preferred.contains(check) && !isBlackListed(context, check)) { if (result == null) { result = new ArrayList<>(preferred.size()); } result.add(check); } } return result; }
private static List<URI> findPreferredURIs(AbstractInvocationContext context, List<URI> uris) { Collection<URI> attachment = context.getAttachment(TransactionInterceptor.PREFERRED_DESTINATIONS); if (attachment == null) { return null; } HashSet<URI> preferred = new HashSet<>(attachment); List<URI> result = null; for (URI check : uris) { if (preferred.contains(check) && !isBlackListed(context, check)) { if (result == null) { result = new ArrayList<>(preferred.size()); } result.add(check); } } return result; }
static boolean setNamingDestination(final AbstractInvocationContext context, final NamingProvider namingProvider) { final ProviderEnvironment providerEnvironment = namingProvider.getProviderEnvironment(); final List<URI> providerUris = providerEnvironment.getProviderUris(); List<URI> uris = findPreferredURIs(context, providerUris); if (uris == null) { uris = new ArrayList<>(providerUris.size()); for (URI uri : providerUris) { if (!isBlackListed(context, uri)) { uris.add(uri); } } } final int size = uris.size(); if (size == 0) { // we can't discover the location; fail return false; } else if (size == 1) { context.setDestination(uris.get(0)); return true; } else { context.setDestination(uris.get(ThreadLocalRandom.current().nextInt(size))); } if (context instanceof EJBSessionCreationInvocationContext) { DiscoveryEJBClientInterceptor.setupSessionAffinities((EJBSessionCreationInvocationContext)context); } return true; }
static boolean setNamingDestination(final AbstractInvocationContext context, final NamingProvider namingProvider) { final ProviderEnvironment providerEnvironment = namingProvider.getProviderEnvironment(); final List<URI> providerUris = providerEnvironment.getProviderUris(); List<URI> uris = findPreferredURIs(context, providerUris); if (uris == null) { uris = new ArrayList<>(providerUris.size()); for (URI uri : providerUris) { if (!isBlackListed(context, uri)) { uris.add(uri); } } } final int size = uris.size(); if (size == 0) { // we can't discover the location; fail return false; } else if (size == 1) { context.setDestination(uris.get(0)); return true; } else { context.setDestination(uris.get(ThreadLocalRandom.current().nextInt(size))); } if (context instanceof EJBSessionCreationInvocationContext) { DiscoveryEJBClientInterceptor.setupSessionAffinities((EJBSessionCreationInvocationContext)context); } return true; }
if (! isBlackListed(context, affinity.getUri())) { if (! isBlackListed(context, weakAffinity.getUri())) { context.setDestination(weakAffinity.getUri()); context.setTargetAffinity(weakAffinity);
if (! isBlackListed(context, affinity.getUri())) { if (! isBlackListed(context, weakAffinity.getUri())) { context.setDestination(weakAffinity.getUri()); context.setTargetAffinity(weakAffinity);