/** * Removes activation config properties which aren't recognized by the resource adapter <code>activation</code>, from the * passed <code>activationConfigProps</code> and returns only those Properties which are valid. * * @param resourceAdapterName The resource adapter name * @param activation {@link Activation} * @param activationConfigProps Activation config properties which will be checked for validity * @return */ private Properties filterUnknownActivationConfigProperties(final String resourceAdapterName, final Activation activation, final Properties activationConfigProps) { if (activationConfigProps == null) { return null; } final Map<String, Class<?>> raActivationConfigProps = activation.getConfigProperties(); final Set<String> raRequiredConfigProps = activation.getRequiredConfigProperties(); final Enumeration<?> propNames = activationConfigProps.propertyNames(); final Properties validActivationConfigProps = new Properties(); // initialize to all the activation config properties that have been set on the MDB validActivationConfigProps.putAll(activationConfigProps); while (propNames.hasMoreElements()) { final Object propName = propNames.nextElement(); if (raActivationConfigProps.containsKey(propName) == false && raRequiredConfigProps.contains(propName) == false) { // not a valid activation config property, so log a WARN and filter it out from the valid activation config properties validActivationConfigProps.remove(propName); EjbLogger.ROOT_LOGGER.activationConfigPropertyIgnored(propName, resourceAdapterName); } } return validActivationConfigProps; }
/** * Removes activation config properties which aren't recognized by the resource adapter <code>activation</code>, from the * passed <code>activationConfigProps</code> and returns only those Properties which are valid. * * @param resourceAdapterName The resource adapter name * @param activation {@link Activation} * @param activationConfigProps Activation config properties which will be checked for validity * @return */ private Properties filterUnknownActivationConfigProperties(final String resourceAdapterName, final Activation activation, final Properties activationConfigProps) { if (activationConfigProps == null) { return null; } final Map<String, Class<?>> raActivationConfigProps = activation.getConfigProperties(); final Set<String> raRequiredConfigProps = activation.getRequiredConfigProperties(); final Enumeration<?> propNames = activationConfigProps.propertyNames(); final Properties validActivationConfigProps = new Properties(); // initialize to all the activation config properties that have been set on the MDB validActivationConfigProps.putAll(activationConfigProps); while (propNames.hasMoreElements()) { final Object propName = propNames.nextElement(); if (raActivationConfigProps.containsKey(propName) == false && raRequiredConfigProps.contains(propName) == false) { // not a valid activation config property, so log a WARN and filter it out from the valid activation config properties validActivationConfigProps.remove(propName); EJB3_LOGGER.activationConfigPropertyIgnored(propName, resourceAdapterName); } } return validActivationConfigProps; } }