Skip to content

Commit db463d6

Browse files
NataMatasntntn
authored andcommitted
Added Doxygen comments.
1 parent f21d931 commit db463d6

2 files changed

Lines changed: 90 additions & 3 deletions

File tree

Fitness/Backend/Services/videoTrainingService/videoTrainingService.API/Controllers/TrainingController.cs

Lines changed: 76 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,11 @@ public TrainingController(ITrainingRepository repository)
1717
{
1818
_repository = repository ?? throw new ArgumentNullException(nameof(repository));
1919
}
20-
20+
21+
/// <summary>
22+
/// API for retrieval of added exercises from specific trainer.
23+
/// </summary>
24+
/// <param name="trainerId">Unique identifier of the desired trainer.</param>
2125
[Authorize(Roles = "Admin, Trainer, Client")]
2226
[HttpGet("exercises/{trainerId}")]
2327
[ProducesResponseType(typeof(IEnumerable<Exercise>), StatusCodes.Status200OK)]
@@ -27,6 +31,10 @@ public async Task<ActionResult<IEnumerable<Exercise>>> GetExercises(string train
2731
return Ok(exercises);
2832
}
2933

34+
/// <summary>
35+
/// API for retrieval of one specific exercise.
36+
/// </summary>
37+
/// <param name="id">Unique identifier of the desired exercise.</param>
3038
[Authorize(Roles = "Admin, Trainer, Client")]
3139
[HttpGet("exercise/{id}", Name = "GetExercise")]
3240
[ProducesResponseType(typeof(Exercise), StatusCodes.Status200OK)]
@@ -40,7 +48,11 @@ public async Task<ActionResult<Exercise>> GetExercise(string id)
4048
}
4149
return Ok(exercise);
4250
}
43-
51+
52+
/// <summary>
53+
/// API for addition of new exercises by trainer.
54+
/// </summary>
55+
/// <param name="exercise">Object that represents exercise and contains values for exercise name and video path.</param>
4456
[Authorize(Roles = "Admin, Trainer")]
4557
[HttpPost("exercise")]
4658
[ProducesResponseType(typeof(Exercise), StatusCodes.Status201Created)]
@@ -50,6 +62,10 @@ public async Task<ActionResult> CreateExercise([FromBody] Exercise exercise)
5062
return CreatedAtRoute("GetExercise", new { id = exercise.Id} , exercise);
5163
}
5264

65+
/// <summary>
66+
/// API for exercise update.
67+
/// </summary>
68+
/// <param name="exercise">Object that represents exercise with updated values.</param>
5369
[Authorize(Roles = "Admin, Trainer")]
5470
[HttpPut("exercise")]
5571
[ProducesResponseType(typeof(Exercise), StatusCodes.Status200OK)]
@@ -59,6 +75,10 @@ public async Task<IActionResult> UpdateExercise([FromBody] Exercise exercise)
5975
return Ok(result);
6076
}
6177

78+
/// <summary>
79+
/// API for exercise removal.
80+
/// </summary>
81+
/// <param name="id">Unique identifier of the desired exercise.</param>
6282
[Authorize(Roles = "Admin, Trainer")]
6383
[HttpDelete("exercise/{id}")]
6484
[ProducesResponseType(typeof(Exercise), StatusCodes.Status200OK)]
@@ -68,6 +88,9 @@ public async Task<IActionResult> DeleteExercise(string id)
6888
return Ok(result);
6989
}
7090

91+
/// <summary>
92+
/// API for retrieval of trainings for clients. Retrives all trainings in database.
93+
/// </summary>
7194
[Authorize(Roles = "Admin, Trainer, Client")]
7295
[HttpGet("training/trainingClient", Name = "GetTrainingsForClient")]
7396
[ProducesResponseType(typeof(IEnumerable<Training>), StatusCodes.Status200OK)]
@@ -77,6 +100,10 @@ public async Task<ActionResult<IEnumerable<Training>>> GetTrainingsForClient()
77100
return Ok(trainings);
78101
}
79102

103+
/// <summary>
104+
/// API for retrieval of trainings for trainer.
105+
/// </summary>
106+
/// <param name="trainerId">Unique identifier of the desired trainer.</param>
80107
[Authorize(Roles = "Admin, Trainer, Client")]
81108
[HttpGet("training/trainingTrainer/{trainerId}", Name = "GetTrainingsForTrainer")]
82109
[ProducesResponseType(typeof(IEnumerable<Training>), StatusCodes.Status200OK)]
@@ -86,6 +113,10 @@ public async Task<ActionResult<IEnumerable<Training>>> GetTrainingsForTrainer(st
86113
return Ok(trainings);
87114
}
88115

116+
/// <summary>
117+
/// API for retrieval of specific training.
118+
/// </summary>
119+
/// <param name="id">Unique identifier of the desired training.</param>
89120
[Authorize(Roles = "Admin, Trainer, Client")]
90121
[HttpGet("training/{id}", Name = "GetTraining")]
91122
[ProducesResponseType(typeof(Training), StatusCodes.Status200OK)]
@@ -100,6 +131,11 @@ public async Task<ActionResult<Training>> GetTraining(string id)
100131
return Ok(training);
101132
}
102133

134+
/// <summary>
135+
/// API for addition of new training made by trainer.
136+
/// </summary>
137+
/// <param name="training">Object that represents training with values for trainer id,
138+
/// training type and description.</param>
103139
[Authorize(Roles = "Admin, Trainer")]
104140
[HttpPost("training")]
105141
[ProducesResponseType(typeof(Training), StatusCodes.Status201Created)]
@@ -109,6 +145,10 @@ public async Task<ActionResult> CreateTraining([FromBody] Training training)
109145
return CreatedAtRoute("GetTraining", new { id = training.TrainingId} , training);
110146
}
111147

148+
/// <summary>
149+
/// API for training update.
150+
/// </summary>
151+
/// <param name="training">Object with updated values.</param>
112152
[Authorize(Roles = "Admin, Trainer")]
113153
[HttpPut("training")]
114154
[ProducesResponseType(typeof(Training), StatusCodes.Status200OK)]
@@ -118,6 +158,10 @@ public async Task<IActionResult> UpdateTraining([FromBody] Training training)
118158
return Ok(result);
119159
}
120160

161+
/// <summary>
162+
/// API for training removal.
163+
/// </summary>
164+
/// <param name="id">Unique identifier of the desired training.</param>
121165
[Authorize(Roles = "Admin, Trainer")]
122166
[HttpDelete("training/{id}")]
123167
[ProducesResponseType(typeof(Training), StatusCodes.Status200OK)]
@@ -127,6 +171,10 @@ public async Task<IActionResult> DeleteTraining(string id)
127171
return Ok(result);
128172
}
129173

174+
/// <summary>
175+
/// API for retrieval of all exercises from specific training.
176+
/// </summary>
177+
/// <param name="trainingId">Unique identifier of the desired training.</param>
130178
[Authorize(Roles = "Admin, Trainer, Client")]
131179
[HttpGet("trainingExercises/{trainingId}", Name = "GetTrainingExercises")]
132180
[ProducesResponseType(typeof(IEnumerable<TrainingExercise>), StatusCodes.Status200OK)]
@@ -136,6 +184,10 @@ public async Task<ActionResult<IEnumerable<TrainingExercise>>> GetTrainingExerci
136184
return Ok(trainingExercises);
137185
}
138186

187+
/// <summary>
188+
/// API for retrieval of one exercise from specific training.
189+
/// </summary>
190+
/// <param name="id">Unique identifier of the desired exercise.</param>
139191
[Authorize(Roles = "Admin, Trainer, Client")]
140192
[HttpGet("trainingExercise/{id}", Name = "GetTrainingExercise")]
141193
[ProducesResponseType(typeof(TrainingExercise), StatusCodes.Status200OK)]
@@ -150,6 +202,11 @@ public async Task<ActionResult<TrainingExercise>> GetTrainingExercise(string id)
150202
return Ok(trainingExercise);
151203
}
152204

205+
/// <summary>
206+
/// API for addition of new exercise in specific training.
207+
/// </summary>
208+
/// <param name="trainingExercises">Object that represents exercise and contains values for training and existing exercise id and sets and reps
209+
/// number of repetitions.</param>
153210
[Authorize(Roles = "Admin, Trainer")]
154211
[HttpPost("trainingExercise")]
155212
[ProducesResponseType(typeof(TrainingExercise), StatusCodes.Status201Created)]
@@ -159,6 +216,10 @@ public async Task<ActionResult> CreateTrainingExercise([FromBody] TrainingExerci
159216
return CreatedAtRoute("GetTrainingExercise", new { id = trainingExercise.Id} , trainingExercise);
160217
}
161218

219+
/// <summary>
220+
/// API for training update.
221+
/// </summary>
222+
/// <param name="trainingExercises">Object that represents exercise with updated values.</param>
162223
[Authorize(Roles = "Admin, Trainer")]
163224
[HttpPut("trainingExercise")]
164225
[ProducesResponseType(typeof(TrainingExercise), StatusCodes.Status200OK)]
@@ -168,6 +229,10 @@ public async Task<IActionResult> UpdateTrainingExercise([FromBody] TrainingExerc
168229
return Ok(result);
169230
}
170231

232+
/// <summary>
233+
/// API for removal of exercises from training. Removes all exercises for desired training.
234+
/// </summary>
235+
/// <param name="trainingId">Unique identifier of the desired training.</param>
171236
[Authorize(Roles = "Admin, Trainer")]
172237
[HttpDelete("trainingExercise/{trainingId}")]
173238
[ProducesResponseType(typeof(TrainingExercise), StatusCodes.Status200OK)]
@@ -177,6 +242,11 @@ public async Task<IActionResult> DeleteTrainingExercises(string trainingId)
177242
return Ok(result);
178243
}
179244

245+
/// <summary>
246+
/// API for training's queue update. Adds client's unique identifier in queue of clients who purchased this training.
247+
/// </summary>
248+
/// <param name="clientId">Unique identifier of client who purchased training.</param>
249+
/// <param name="trainingId">Unique identifier of purchased training.</param>
180250
[Authorize(Roles = "Client")]
181251
[HttpPost("training/{trainingId}/addClient/{clientId}")]
182252
public async Task<IActionResult> AddClientToTraining(string trainingId, string clientId)
@@ -189,6 +259,10 @@ public async Task<IActionResult> AddClientToTraining(string trainingId, string c
189259
return Ok($"Client {clientId} added to training {trainingId}.");
190260
}
191261

262+
/// <summary>
263+
/// API for retrieval of purchased trainings for client.
264+
/// </summary>
265+
/// <param name="clientId">Unique identifier of desired client.</param>
192266
[Authorize(Roles = "Admin, Trainer, Client")]
193267
[HttpGet("training/byClient/{clientId}")]
194268
public async Task<ActionResult<List<string>>> GetTrainingsByClient(string clientId)

Fitness/Backend/Services/videoTrainingService/videoTrainingService.API/Controllers/UploadController.cs

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,13 @@ public UploadController(IWebHostEnvironment env)
2525
}
2626
}
2727

28+
/// <summary>
29+
/// Uploads a video file to the server. The video file is stored inside the Docker container
30+
/// and mapped to a local directory on the host machine.
31+
/// </summary>
32+
/// <param name="file">
33+
/// The uploaded video file sent as a form-data parameter.
34+
/// Must not be null or empty; otherwise, the request is rejected.</param>
2835
[Authorize(Roles="Admin, Trainer")]
2936
[HttpPost("video")]
3037
[ApiExplorerSettings(IgnoreApi = true)]
@@ -42,7 +49,13 @@ public async Task<IActionResult> UploadVideo([FromForm] IFormFile file)
4249

4350
return Ok(new { FileName = file.FileName });
4451
}
45-
52+
53+
/// <summary>
54+
/// Deletes a previously uploaded video file from the server.
55+
/// </summary>
56+
/// <param name="fileName">
57+
/// The name of the video file to be deleted.
58+
/// Must match an existing file in the upload directory.</param>
4659
[Authorize(Roles="Admin, Trainer")]
4760
[HttpDelete("video/delete/{fileName}")]
4861
public IActionResult DeleteVideo(string fileName)

0 commit comments

Comments
 (0)