MisdirectedNotifier.java 1000B

1234567891011121314151617181920212223242526272829303132333435363738
  1. /**
  2. * Purpose
  3. * @author peter
  4. * @created 2009-aug-03
  5. * $Id$
  6. */
  7. package se.citerus.dddsample.application;
  8. import org.apache.commons.logging.Log;
  9. import org.apache.commons.logging.LogFactory;
  10. import org.springframework.transaction.annotation.Transactional;
  11. import se.citerus.dddsample.domain.model.cargo.Cargo;
  12. import se.citerus.dddsample.domain.model.cargo.CargoRepository;
  13. import se.citerus.dddsample.domain.model.cargo.TrackingId;
  14. public class MisdirectedNotifier {
  15. private CargoRepository cargoRepository;
  16. private static final Log LOG = LogFactory.getLog(MisdirectedNotifier.class);
  17. public MisdirectedNotifier(final CargoRepository cargoRepository) {
  18. this.cargoRepository = cargoRepository;
  19. }
  20. @Transactional
  21. public void alertIfMisdirected(final TrackingId trackingId) {
  22. final Cargo cargo = cargoRepository.find(trackingId);
  23. if (cargo.delivery().isMisdirected()) {
  24. LOG.info("Cargo " + cargo + " is misdirected!");
  25. }
  26. }
  27. MisdirectedNotifier() {
  28. }
  29. }