public final int hashCode() { int hashCode = this.hashCode; if (hashCode == 0) { hashCode = calculateHashCode(); if (hashCode == 0) hashCode = 1; return this.hashCode = hashCode; } return hashCode; }
public SaslClient createSaslClient(final String[] mechanisms, final String authorizationId, final String protocol, final String serverName, final Map<String, ?> props, final CallbackHandler cbh) throws SaslException { return super.createSaslClient(mechanisms, authorizationId, protocol, this.serverName, props, cbh); }
@SuppressWarnings("checkstyle:equalshashcode") public boolean equals(final AuthenticationCompleteCallbackSaslClientFactory other) { return super.equals(other); }
/** * Determine whether this chain of delegating factories delegates through an instance of the given class. * * @param factoryClass the SASL client factory class * @return {@code true} if this chain delegates through the factory class, {@code false} otherwise */ public final boolean delegatesThrough(Class<? extends SaslClientFactory> factoryClass) { return factoryClass != null && delegatesThroughNN(factoryClass); }
@Override public String[] getMechanismNames(Map<String, ?> props) { String[] mechanismNames = super.getMechanismNames(props); if (mechanismNameComparator != null) { Arrays.sort(mechanismNames, mechanismNameComparator); } else if (saslMechanismSelector != null) { List<String> mechanismNamesList = new ArrayList<>(Arrays.asList(mechanismNames)); mechanismNamesList = saslMechanismSelector.apply(mechanismNamesList, null); mechanismNames = mechanismNamesList.toArray(new String[mechanismNamesList.size()]); } return mechanismNames; }
boolean delegatesThroughNN(Class<? extends SaslClientFactory> factoryClass) { return factoryClass.isInstance(this) || delegate instanceof AbstractDelegatingSaslClientFactory && ((AbstractDelegatingSaslClientFactory) delegate).delegatesThroughNN(factoryClass); }
public String[] getMechanismNames(final Map<String, ?> props) { BiPredicate<String, Provider> existing = SaslFactories.getProviderFilterPredicate(props); final HashMap<String, Object> newProps = new HashMap<String, Object>(props); if (existing != null) { newProps.put(SaslFactories.PROVIDER_FILTER_KEY, predicate.and(existing)); } else { newProps.put(SaslFactories.PROVIDER_FILTER_KEY, predicate); } return super.getMechanismNames(newProps); }
protected int calculateHashCode() { return HashMath.multiHashOrdered(super.calculateHashCode(), getClass().hashCode()); } }
public SaslClient createSaslClient(final String[] mechanisms, final String authorizationId, final String protocol, final String serverName, final Map<String, ?> props, final CallbackHandler cbh) throws SaslException { return super.createSaslClient(mechanisms, authorizationId, this.protocol, serverName, props, cbh); }
@SuppressWarnings("checkstyle:equalshashcode") public boolean equals(final DisposedCallbackSaslClientFactory other) { return super.equals(other); }
/** * Determine whether this chain of delegating factories delegates through an instance of the given class. * * @param factoryClass the SASL client factory class * @return {@code true} if this chain delegates through the factory class, {@code false} otherwise */ public final boolean delegatesThrough(Class<? extends SaslClientFactory> factoryClass) { return factoryClass != null && delegatesThroughNN(factoryClass); }
@Override public String[] getMechanismNames(Map<String, ?> props) { String[] mechanismNames = super.getMechanismNames(props); if (mechanismNameComparator != null) { Arrays.sort(mechanismNames, mechanismNameComparator); } else if (saslMechanismSelector != null) { List<String> mechanismNamesList = new ArrayList<>(Arrays.asList(mechanismNames)); mechanismNamesList = saslMechanismSelector.apply(mechanismNamesList, null); mechanismNames = mechanismNamesList.toArray(new String[mechanismNamesList.size()]); } return mechanismNames; }
protected int calculateHashCode() { return HashMath.multiHashOrdered(super.calculateHashCode(), getClass().hashCode()); } }
public SaslClient createSaslClient(final String[] mechanisms, final String authorizationId, final String protocol, final String serverName, final Map<String, ?> props, final CallbackHandler cbh) throws SaslException { return super.createSaslClient(mechanisms, authorizationId, protocol, serverName, props, new CallbackHandler() { private X509Certificate[] peerCerts; public void handle(final Callback[] callbacks) throws IOException, UnsupportedCallbackException { ArrayList<Callback> list = new ArrayList<>(Arrays.asList(callbacks)); final Iterator<Callback> iterator = list.iterator(); while (iterator.hasNext()) { Callback callback = iterator.next(); if (callback instanceof SSLCallback) { final SSLCallback sslCallback = (SSLCallback) callback; peerCerts = X500.asX509CertificateArray(sslCallback.getSslSession().getPeerCertificates()); } else if (callback instanceof ChannelBindingCallback) { TLSServerEndPointChannelBinding.handleChannelBindingCallback((ChannelBindingCallback) callback, peerCerts); iterator.remove(); } } if (!list.isEmpty()) { cbh.handle(list.toArray(new Callback[list.size()])); } } }); }
@SuppressWarnings("checkstyle:equalshashcode") public boolean equals(final TLSServerEndPointChannelBindingSaslClientFactory other) { return super.equals(other); }
/** * Determine whether this chain of delegating factories delegates through an instance of the given class. * * @param factoryClass the SASL client factory class * @return {@code true} if this chain delegates through the factory class, {@code false} otherwise */ public final boolean delegatesThrough(Class<? extends SaslClientFactory> factoryClass) { return factoryClass != null && delegatesThroughNN(factoryClass); }
@Override public String[] getMechanismNames(Map<String, ?> props) { String[] mechanismNames = super.getMechanismNames(props); if (mechanismNameComparator != null) { Arrays.sort(mechanismNames, mechanismNameComparator); } else if (saslMechanismSelector != null) { List<String> mechanismNamesList = new ArrayList<>(Arrays.asList(mechanismNames)); mechanismNamesList = saslMechanismSelector.apply(mechanismNamesList, null); mechanismNames = mechanismNamesList.toArray(new String[mechanismNamesList.size()]); } return mechanismNames; }
protected int calculateHashCode() { return HashMath.multiHashOrdered(super.calculateHashCode(), getClass().hashCode()); } }
@Override public SaslClient createSaslClient(String[] mechanisms, String authorizationId, String protocol, String serverName, Map<String, ?> props, CallbackHandler cbh) throws SaslException { String[] sortedMechanisms = mechanisms.clone(); Arrays.sort(sortedMechanisms, mechanismNameComparator); return super.createSaslClient(sortedMechanisms, authorizationId, protocol, serverName, props, cbh); }
public boolean equals(final Object other) { return other instanceof AbstractDelegatingSaslClientFactory && equals((AbstractDelegatingSaslClientFactory) other); }