public IHttpActionResult GetTopGamesAsync() { var repo = new SteamRepository(); string sTopGames = repo.GetTopGames(); return(Ok(sTopGames)); }
public IHttpActionResult GetGamesInCommon([FromBody] List <Player> data) { var repo = new SteamRepository(); var result = repo.GetGamesInCommon(data); return(Ok(result)); }
public IHttpActionResult GetFriends(string steamId) { var repo = new SteamRepository(); var friends = repo.GetFriends(steamId); return(Ok(friends)); }
public IHttpActionResult GetUser(string steamId) { var ip = HttpContext.Current.Request.UserHostAddress; Player player = new SteamRepository().GetUser(steamId, ip); return(Ok(player)); }
public IHttpActionResult GetOwnedGames(string steamId) { // var req = SteamWebAPI.CustomRequest("IPlayerService", "GetOwnedGames", "v0001", new { steamid = steamId, include_appinfo = 1, include_played_free_games = 1 }); // var responseString = req.GetResponseString(RequestFormat.JSON); var repo = new SteamRepository(); var result = repo.GetOwnedGames(steamId); return(Ok(result)); }
/// <summary> /// The main entry point for the application. /// </summary> //static void Main() //{ // ServiceBase[] ServicesToRun; // ServicesToRun = new ServiceBase[] // { // new MatchParserService() // }; // ServiceBase.Run(ServicesToRun); //} static void Main(string[] args) { Dota2DbContext dbContext = new Dota2DbContext(); IUnitOfWork unitOfWork = new UnitOfWork(dbContext); ITaskParserRepository taskRepository = new TaskParserRepository(dbContext); ISteamRepository onlineMatchRepository = new SteamRepository(); IMatchRepository matchRepository = new MatchRepository(dbContext); ITasksParser taskParser = new TasksParser(taskRepository, onlineMatchRepository, matchRepository, unitOfWork); #if DEBUG var service = new MatchParserService(taskParser); service.OnDebug(); Thread.Sleep(Timeout.Infinite); #else ServiceBase[] ServicesToRun; ServicesToRun = new ServiceBase[] { new MatchParserService(taskParser), }; ServiceBase.Run(ServicesToRun); #endif }
public void ApiNameMigration() { UserAchievement[] communityAchievements; Data.Achievement[] dataAchievements; using (SteamRepository repository = new SteamRepository()) { Dictionary <string, ICollection <UserAchievement> > userCommunityAchievements; using ( SteamCommunityManager communityManager = new SteamCommunityManager(new WebClientWrapper(), new SteamProfileXmlParser(), new GameXmlParser(), new AchievementXmlParser())) { string[] invalidUserProfiles = new[] { "0", "/zero_x9", "-vaka-", "inv4d3r", "barakitten", "76561198032315004", "120gb" }; var gameUsersQuery = from userAchievement in repository.UserAchievements where userAchievement.Achievement.ApiName.Length == 0 && !invalidUserProfiles.Contains(userAchievement.User.SteamUserId) group userAchievement by userAchievement.Achievement.GameId into g select new { GameId = g.Key, SteamUserId = g.Min(ua => ua.User.SteamUserId) }; Dictionary <int, string> gameUsers = gameUsersQuery.OrderBy(s => s.GameId) .ToDictionary(s => s.GameId, s => s.SteamUserId); Debug.WriteLine(String.Join(", ", gameUsers.Keys)); userCommunityAchievements = new Dictionary <string, ICollection <UserAchievement> >(); foreach (string user in gameUsers.Values.Distinct().OrderBy(v => v)) { try { ICollection <UserAchievement> userAchievements = communityManager.GetAchievements(user); userCommunityAchievements.Add(user, userAchievements); } catch (Exception ex) { Debug.WriteLine("GetAchievements failed for user " + user + "."); Debug.WriteLine(ex); if (ex.InnerException != null) { Debug.WriteLine(ex.InnerException); } } } } communityAchievements = userCommunityAchievements.Values.SelectMany(v => v.Select(ua => ua)).OrderBy(ua => ua.Game.Id) .OrderBy(ua => ua.AchievementApiName).Distinct().ToArray(); Serialize("CommunityAchievements.xml", communityAchievements); dataAchievements = repository.Achievements.ToArray(); foreach (Data.Achievement dataAchievement in dataAchievements) { UserAchievement achievement = communityAchievements .Where(a => a.Game.Id == dataAchievement.GameId && a.Name.ToUpper() == dataAchievement.Name.ToUpper() && a.Description.ToUpper() == dataAchievement.Description.ToUpper()) .FirstOrDefault(); if (achievement != null) { dataAchievement.ApiName = achievement.AchievementApiName; //Debug.WriteLine("Id: {0}, GameId: {1}, Name: {2}, ApiName: {3}", // dataAchievement.Id, dataAchievement.GameId, // dataAchievement.Name, dataAchievement.ApiName); } } Serialize("UpdatedApiNameAchievements.xml", dataAchievements.ToArray()); ChangeSet changeSet = repository.Context.GetChangeSet(); Debug.WriteLine(changeSet); repository.SubmitChanges(); } //Assert.That(changeSet.Updates, Is.Not.Empty); Debug.WriteLine("Total Data Achievements: " + dataAchievements.Length); Debug.WriteLine("Total Community Achievements: " + communityAchievements.Length); }