// Path: code/exercise_3/exercise/src/main/java/com/frankmoley/talks/spring/intro/data/repository/ItemRepository.java
// @Repository
// public class ItemRepository {
//     //TODO later
// }
// 
// Path: code/exercise_2/solution/src/main/java/com/frankmoley/talks/spring/intro/data/repository/PersonRepository.java
// public class PersonRepository {
//     //TODO Later
// }
// 
// Path: code/exercise_4/solution/src/main/java/com/frankmoley/talks/spring/intro/service/InventoryService.java
// @Service
// public class InventoryService {
// 
//     private final ItemRepository itemRepository;
//     private final PersonRepository personRepository;
// 
//     @Autowired
//     public InventoryService(ItemRepository itemRepository, PersonRepository personRepository){
//         super();
//         this.itemRepository = itemRepository;
//         this.personRepository = personRepository;
//     }
// 
//     public Inventory getInventory(long personId){
//         return new Inventory();
//     }
// 
//     public Inventory updateInventory(Inventory inventory){
//         return inventory;
//     }
// 
//     public DetailedInventoryItem getDetailedInventoryItem(long personId, long itemId){
//         return new DetailedInventoryItem();
//     }
// 
// }


import com.frankmoley.talks.spring.intro.data.repository.ItemRepository;
import com.frankmoley.talks.spring.intro.data.repository.PersonRepository;
import com.frankmoley.talks.spring.intro.service.InventoryService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
package com.frankmoley.talks.spring.intro.config;


@Configuration
@PropertySource("classpath:application.properties")
public class ApplicationConfig {

    @Bean
    public PersonRepository personRepository(){
// Path: code/exercise_3/exercise/src/main/java/com/frankmoley/talks/spring/intro/data/repository/ItemRepository.java
// @Repository
// public class ItemRepository {
//     //TODO later
// }
// 
// Path: code/exercise_2/solution/src/main/java/com/frankmoley/talks/spring/intro/data/repository/PersonRepository.java
// public class PersonRepository {
//     //TODO Later
// }
// 
// Path: code/exercise_4/solution/src/main/java/com/frankmoley/talks/spring/intro/service/InventoryService.java
// @Service
// public class InventoryService {
// 
//     private final ItemRepository itemRepository;
//     private final PersonRepository personRepository;
// 
//     @Autowired
//     public InventoryService(ItemRepository itemRepository, PersonRepository personRepository){
//         super();
//         this.itemRepository = itemRepository;
//         this.personRepository = personRepository;
//     }
// 
//     public Inventory getInventory(long personId){
//         return new Inventory();
//     }
// 
//     public Inventory updateInventory(Inventory inventory){
//         return inventory;
//     }
// 
//     public DetailedInventoryItem getDetailedInventoryItem(long personId, long itemId){
//         return new DetailedInventoryItem();
//     }
// 
// }


// Path: code/exercise_2/exercise/src/main/java/com/frankmoley/talks/spring/intro/config/ApplicationConfig.java
import com.frankmoley.talks.spring.intro.data.repository.ItemRepository;
import com.frankmoley.talks.spring.intro.data.repository.PersonRepository;
import com.frankmoley.talks.spring.intro.service.InventoryService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;

package com.frankmoley.talks.spring.intro.config;


@Configuration
@PropertySource("classpath:application.properties")
public class ApplicationConfig {

    @Bean
    public PersonRepository personRepository(){
        return new PersonRepository();