summaryrefslogtreecommitdiff
path: root/src/main/java/design/controller/userinput/menus/SelectUser.java
blob: 2f1a867bfca3f3e6d08ac22b24a6a5d02ff95cd2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package design.controller.userinput.menus;

import design.controller.userinput.Menu;
import design.controller.userinput.MenuOption;
import design.runtime.Session;
import design.persistence.PersonalDatabase;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class SelectUser extends Menu {
    PersonalDatabase personalDB = PersonalDatabase.INSTANCE;

    @Override
    public String getTitle() {
        return "select user";
    }

    @Override
    public List<MenuOption> getMenuOptions() {
        var l = new ArrayList<MenuOption>();
        // Sets user in Session too
        l.addAll(Arrays.stream(personalDB.getGolfers()).map(i -> new MenuOption(i.getUsername(), (a) -> {
            Session.setCurrentGolfer(i);
            System.out.printf("Loaded user: %s%n", i.getUsername());
            new UserSettings().present();
        })).toList());
        l.add(new MenuOption("<create>", (a) -> {
        }));
        return l;
    }
}