private void unregisterOutputListener(Set<ProvidedPropertyDescriptor> outputRowCollectorProperties) { if(outputRowCollectorProperties != null && !outputRowCollectorProperties.isEmpty()) { for (ProvidedPropertyDescriptor descriptor : outputRowCollectorProperties) { OutputRowCollector outputRowCollector = (OutputRowCollector) descriptor.getValue(component); if (outputRowCollector instanceof ThreadLocalOutputRowCollector) { ((ThreadLocalOutputRowCollector) outputRowCollector).removeListener(); } } } }
private void registerOutputListener(Set<ProvidedPropertyDescriptor> outputRowCollectorProperties, ThreadLocalOutputListener outputListener) { if (outputRowCollectorProperties != null && !outputRowCollectorProperties.isEmpty()) { for (ProvidedPropertyDescriptor descriptor : outputRowCollectorProperties) { OutputRowCollector outputRowCollector = (OutputRowCollector) descriptor.getValue(component); if (outputRowCollector instanceof ThreadLocalOutputRowCollector) { ((ThreadLocalOutputRowCollector) outputRowCollector).setListener(outputListener); } else { throw new UnsupportedOperationException("Unsupported output row collector type: " + outputRowCollector); } } } }
@SuppressWarnings("unchecked") public <E> E getInstance(InjectionPoint<E> injectionPoint) { E obj; final Class<E> baseType = injectionPoint.getBaseType(); if (baseType == OutputRowCollector.class) { obj = (E) new ThreadLocalOutputRowCollector(); } else if(baseType == ComponentContext.class) { obj = (E) componentContext; } else { obj = delegate.getInstance(injectionPoint); } return obj; } }
return getConfiguration().getReferenceDataCatalog(); } else if (baseType == OutputRowCollector.class) { return new ThreadLocalOutputRowCollector(); } else if (baseType == DatastoreCatalog.class) { return getConfiguration().getDatastoreCatalog();
final OutputRowCollector outputRowCollector = (OutputRowCollector) descriptor.getValue(transformer); if (outputRowCollector instanceof ThreadLocalOutputRowCollector) { ((ThreadLocalOutputRowCollector) outputRowCollector).setListener(listener); } else { throw new UnsupportedOperationException("Unsupported output row collector type: " + outputRowCollector);
private void unregisterListener(final Transformer transformer) { for (final ProvidedPropertyDescriptor descriptor : _outputRowCollectorProperties) { final OutputRowCollector outputRowCollector = (OutputRowCollector) descriptor.getValue(transformer); if (outputRowCollector instanceof ThreadLocalOutputRowCollector) { ((ThreadLocalOutputRowCollector) outputRowCollector).removeListener(); } } }