using System;
using System.Collections.Generic;
using EstusShots.Shared.Dto;
using EstusShots.Shared.Interfaces;
namespace EstusShots.Shared.Models.Parameters
{
# region GetEnemies
///
/// Parameter class for the GetEnemies API controller.
///
public class GetEnemiesParameter : IApiParameter
{
///
/// (Optional) Load enemies for this season
///
public Guid SeasonId { get; set; }
public GetEnemiesParameter(Guid seasonId)
{
SeasonId = seasonId;
}
public GetEnemiesParameter()
{
SeasonId = Guid.Empty;
}
}
///
/// Parameter class returned from the GetEnemies API controller.
///
public class GetEnemiesResponse : IApiResponse
{
///
/// The loaded enemies
///
public List Enemies { get; set; }
public GetEnemiesResponse(List enemies)
{
Enemies = enemies;
}
public GetEnemiesResponse()
{
}
}
# endregion
# region GetEnemy
///
/// Parameter class for the GetEnemy API controller.
///
public class GetEnemyParameter : IApiParameter
{
///
/// ID of the enemy to load
///
public Guid EnemyId { get; set; }
public GetEnemyParameter(Guid enemyId)
{
EnemyId = enemyId;
}
public GetEnemyParameter()
{
}
}
///
/// Parameter class returned from the GetEnemy API controller.
///
public class GetEnemyResponse : IApiResponse
{
///
/// A detailed Enemy object
///
public Enemy Enemy { get; set; }
public GetEnemyResponse(Enemy enemy)
{
Enemy = enemy;
}
public GetEnemyResponse()
{
}
}
# endregion
# region SaveEnemy
///
/// Parameter class for the SaveEnemy API controller.
///
public class SaveEnemyParameter : IApiParameter
{
///
/// The enemy object to create or update
///
public Enemy Enemy { get; set; }
public SaveEnemyParameter(Enemy enemy)
{
Enemy = enemy;
}
public SaveEnemyParameter()
{
}
}
///
/// Parameter class returned from the SaveEnemy API controller.
///
public class SaveEnemyResponse : IApiResponse
{
///
/// ID of the created or updated enemy object
///
public Guid EnemyId { get; set; }
public SaveEnemyResponse(Guid enemyId)
{
EnemyId = enemyId;
}
public SaveEnemyResponse()
{
}
}
# endregion
# region DeleteEnemy
///
/// Parameter class for the DeleteEnemy API controller.
///
public class DeleteEnemyParameter : IApiParameter
{
///
/// ID of the enemy to delete
///
public Guid EnemyId { get; set; }
public DeleteEnemyParameter(Guid enemyId)
{
EnemyId = enemyId;
}
public DeleteEnemyParameter()
{
}
}
///
/// Parameter class returned from the DeleteEnemy API controller.
///
public class DeleteEnemyResponse : IApiResponse
{
public DeleteEnemyResponse()
{
}
}
# endregion
}