SimpleOwnerService.java 1.68 KB
Newer Older
1 2 3 4 5
package at.ac.tuwien.sepm.assignment.individual.service.impl;

import at.ac.tuwien.sepm.assignment.individual.entity.Owner;
import at.ac.tuwien.sepm.assignment.individual.persistence.OwnerDao;
import at.ac.tuwien.sepm.assignment.individual.service.OwnerService;
6
import at.ac.tuwien.sepm.assignment.individual.util.ValidationException;
7 8 9 10 11
import at.ac.tuwien.sepm.assignment.individual.util.Validator;
import java.lang.invoke.MethodHandles;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
12
import org.springframework.dao.DataAccessException;
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
import org.springframework.stereotype.Service;

@Service
public class SimpleOwnerService implements OwnerService {

    private static final Logger LOGGER = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
    private final OwnerDao ownerDao;
    private final Validator validator;

    @Autowired
    public SimpleOwnerService(OwnerDao ownerDao, Validator validator) {
        this.ownerDao = ownerDao;
        this.validator = validator;
    }

    @Override
    public Owner findOneById(Long id) {
        LOGGER.trace("findOneById({})", id);
        return ownerDao.findOneById(id);
    }

34 35 36 37 38 39
    @Override
    public Owner addOwner(Owner owner) throws ValidationException, DataAccessException {
        LOGGER.trace("addOwner({})", owner);
        this.validator.validateNewOwner(owner);
        return ownerDao.addOwner(owner);
    }
40 41 42 43 44 45 46

    @Override
    public Owner updateOwner(Owner owner) throws ValidationException, DataAccessException {
        LOGGER.trace("updateOwner({})", owner);
        this.validator.validateUpdateOwner(owner);
        return ownerDao.updateOwner(owner);
    }
47
}