// Path: research-graphql-user-service/src/main/java/me/roybailey/springboot/domain/User.java
// @Data
// @Builder
// @NoArgsConstructor
// @AllArgsConstructor
// public class User {
// 
//     String id;
//     String title;
//     String firstname;
//     String lastname;
//     String email;
//     LocalDate dob;
// 
// }


import com.google.common.collect.ImmutableList;
import me.roybailey.springboot.domain.User;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicLong;
package me.roybailey.springboot.repository;




public class UserRepository {

    private AtomicLong sequence = new AtomicLong();

    private String getIdentifier() {
        return String.format("U%02d", sequence.addAndGet(1));
    }

    private ConcurrentHashMap<String, User> mapUsers = new ConcurrentHashMap<>();

    public UserRepository() {
        ImmutableList.of(
                User.builder()
                        .title("Mr")
                        .firstname("Anna")
                        .lastname("Armpit")
                        .email("anna@acme.com")
                        .dob(LocalDate.of(1970, 1, 23))
                        .build(),
                User.builder()
                        .title("Ms")
                        .firstname("Burt")
                        .lastname("Burntleg")
                        .email("burt@bioware.com")
                        .dob(LocalDate.of(1975, 11, 17))
                        .build(),
                User.builder()
                        .title("Dr")
                        .firstname("Carl")
                        .lastname("Coldheart")
// Path: research-graphql-user-service/src/main/java/me/roybailey/springboot/domain/User.java
// @Data
// @Builder
// @NoArgsConstructor
// @AllArgsConstructor
// public class User {
// 
//     String id;
//     String title;
//     String firstname;
//     String lastname;
//     String email;
//     LocalDate dob;
// 
// }


// Path: research-graphql-user-service/src/main/java/me/roybailey/springboot/repository/UserRepository.java
import com.google.common.collect.ImmutableList;
import me.roybailey.springboot.domain.User;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicLong;

package me.roybailey.springboot.repository;




public class UserRepository {

    private AtomicLong sequence = new AtomicLong();

    private String getIdentifier() {
        return String.format("U%02d", sequence.addAndGet(1));
    }

    private ConcurrentHashMap<String, User> mapUsers = new ConcurrentHashMap<>();

    public UserRepository() {
        ImmutableList.of(
                User.builder()
                        .title("Mr")
                        .firstname("Anna")
                        .lastname("Armpit")
                        .email("anna@acme.com")
                        .dob(LocalDate.of(1970, 1, 23))
                        .build(),
                User.builder()
                        .title("Ms")
                        .firstname("Burt")
                        .lastname("Burntleg")
                        .email("burt@bioware.com")
                        .dob(LocalDate.of(1975, 11, 17))
                        .build(),
                User.builder()
                        .title("Dr")
                        .firstname("Carl")
                        .lastname("Coldheart")
                        .email("carl@calmsprings.com")