package rocks.inspectit.server.processor.impl; import javax.persistence.EntityManager; import org.springframework.beans.factory.annotation.Autowired; import rocks.inspectit.server.processor.AbstractCmrDataProcessor; import rocks.inspectit.server.util.CacheIdGenerator; import rocks.inspectit.shared.all.communication.DefaultData; /** * Simple {@link AbstractCmrDataProcessor} that can assign the ID for the {@link DefaultData} using * {@link CacheIdGenerator}. * * @author Ivan Senic * */ public class CacheIdGeneratorCmrProcessor extends AbstractCmrDataProcessor { /** * {@link CacheIdGenerator}. */ @Autowired CacheIdGenerator cacheIdGenerator; /** * {@inheritDoc} */ @Override protected void processData(DefaultData defaultData, EntityManager entityManager) { cacheIdGenerator.assignObjectAnId(defaultData); } /** * {@inheritDoc} */ @Override public boolean canBeProcessed(DefaultData defaultData) { return null != defaultData; } /** * Sets {@link #cacheIdGenerator}. * * @param cacheIdGenerator * New value for {@link #cacheIdGenerator} */ public void setCacheIdGenerator(CacheIdGenerator cacheIdGenerator) { this.cacheIdGenerator = cacheIdGenerator; } }