Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.Collections.Generic;
- using System.Web.Http;
- using QuadMasterClassLib;
- using WebSite.Managers;
- namespace WebSite.Controllers
- {
- public class GameController : ApiController
- {
- private GameManager gameManager;
- private LoginManager loginManager;
- public GameController()
- {
- gameManager = new GameManager();
- loginManager = new LoginManager();
- }
- //Get all games
- // GET /api/game/
- public List<QMGameResponse> Get()
- {
- var list = new List<QMGameResponse>();
- if(ControllerContext.Request.Headers.Authorization == null)
- {
- //No auth
- list.Add(new QMGameResponse{Error = 2});
- return list;
- }
- if (!loginManager.VerifyLogin(ControllerContext.Request.Headers.Authorization.Parameter))
- {
- //Failed login
- list.Add(new QMGameResponse{Error = 1});
- return list;
- }
- string username;
- string password;
- LoginManager.DecodeBase64(ControllerContext.Request.Headers.Authorization.Parameter, out username, out password);
- return gameManager.GetActiveGames(username);
- }
- //Get game
- // GET /api/game/gameId
- public QMGameResponse Get(int gameId)
- {
- string username;
- string password;
- LoginManager.DecodeBase64(ControllerContext.Request.Headers.Authorization.Parameter, out username, out password);
- if (!loginManager.VerifyLogin(ControllerContext.Request.Headers.Authorization.Parameter))
- {
- //return new List<QMGameResponse>();
- }
- return gameManager.GetGame(gameId, username);
- }
- //Join random game
- // Post /api/game/playerId
- public void Post(int id)
- {
- if (ControllerContext.Request.Headers.Authorization == null)
- {
- //No auth
- }
- if (!loginManager.VerifyLogin(ControllerContext.Request.Headers.Authorization.Parameter))
- {
- //Failed login
- }
- string username;
- string password;
- LoginManager.DecodeBase64(ControllerContext.Request.Headers.Authorization.Parameter, out username, out password);
- gameManager.JoinRandomGame(username);
- }
- //Make Move
- // POST /api/game
- public void Post(QMGameResponse value)
- {
- gameManager.MakeMove(value);
- }
- //Drop table
- // DELETE /api/game/
- public void Delete(string playerId)
- {
- gameManager.CreateTables();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement