package org.openbakery.racecontrol.plugin.profile; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import org.openbakery.jinsim.response.InSimResponse; import org.openbakery.racecontrol.persistence.PersistenceException; import org.openbakery.racecontrol.persistence.ProfileHelper; import org.openbakery.racecontrol.persistence.bean.Profile; import org.openbakery.racecontrol.plugin.Plugin; import org.openbakery.racecontrol.plugin.profile.data.DriverProfile; import org.openbakery.racecontrol.plugin.profile.service.DriverProfileService; import org.openbakery.racecontrol.plugin.profile.web.DriverProfileOverviewPage; import org.openbakery.racecontrol.plugin.profile.web.TeamProfileOverviewPage; import org.openbakery.racecontrol.web.bean.MenuItem; import org.openbakery.racecontrol.web.bean.Visibility; import org.springframework.beans.factory.annotation.Autowired; public class DriverProfilePlugin implements Plugin, ProfileHelper { @Autowired private DriverProfileService driverProfileService; public String getHelp() { return "Plugin to manage driver profiles"; } public List<MenuItem> getMenuItems() { return Arrays.asList( new MenuItem("Driver", DriverProfileOverviewPage.class, Visibility.AUTHENTICATED, 0) // new MenuItem("Team", TeamProfileOverviewPage.class, Visibility.AUTHENTICATED, 1) ); } public String getName() { return "DriverProfile"; } public void packetReceived(InSimResponse response) { } public List<Profile> getSignedUpDrivers() throws PersistenceException { List<DriverProfile> driverProfileList = driverProfileService.getAllProfiles(); List<Profile> profileList = new ArrayList<Profile>(driverProfileList.size()); for (DriverProfile driverProfile : driverProfileList) { profileList.add(driverProfile.getProfile()); } return profileList; } }