5
5
using System . Security . Cryptography . X509Certificates ;
6
6
using System . Threading . Tasks ;
7
7
using Amazon . DynamoDBv2 ;
8
+ using Amazon . S3 ;
8
9
using Microsoft . AspNetCore . Identity . UI . Pages . Account . Internal ;
9
10
using Microsoft . AspNetCore . Mvc ;
10
11
using WebApplicationBeanstalk . Models ;
@@ -16,9 +17,12 @@ public class HomeController : Controller
16
17
{
17
18
private IAmazonDynamoDB dynamoDBClient ;
18
19
19
- public HomeController ( IAmazonDynamoDB dynamoDBClient )
20
+ private IAmazonS3 s3Client ;
21
+
22
+ public HomeController ( IAmazonDynamoDB dynamoDBClient , IAmazonS3 s3Client )
20
23
{
21
24
this . dynamoDBClient = dynamoDBClient ;
25
+ this . s3Client = s3Client ;
22
26
}
23
27
24
28
public IActionResult Index ( )
@@ -34,7 +38,7 @@ public IActionResult RegistrationForm()
34
38
[ HttpPost ]
35
39
public IActionResult LogIn ( string email , string password )
36
40
{
37
- AWSServices services = new AWSServices ( dynamoDBClient ) ;
41
+ AWSServices services = new AWSServices ( dynamoDBClient , s3Client ) ;
38
42
User user = services . LogIn ( email , password ) . Result ;
39
43
40
44
if ( user == null )
@@ -48,7 +52,7 @@ public IActionResult LogIn (string email, string password)
48
52
[ HttpGet ]
49
53
public IActionResult Movies ( string email )
50
54
{
51
- AWSServices services = new AWSServices ( dynamoDBClient ) ;
55
+ AWSServices services = new AWSServices ( dynamoDBClient , s3Client ) ;
52
56
return View ( "Movies" , new UserXMovies ( )
53
57
{
54
58
User = services . GetUser ( email ) . Result ,
@@ -60,7 +64,7 @@ public IActionResult Movies(string email)
60
64
[ HttpGet ]
61
65
public IActionResult MoviesDetails ( string email , string movieId )
62
66
{
63
- AWSServices services = new AWSServices ( dynamoDBClient ) ;
67
+ AWSServices services = new AWSServices ( dynamoDBClient , s3Client ) ;
64
68
return View ( "MoviesDetails" , new UserXMovie ( )
65
69
{
66
70
User = services . GetUser ( email ) . Result ,
@@ -71,7 +75,7 @@ public IActionResult MoviesDetails(string email, string movieId)
71
75
[ HttpGet ]
72
76
public ActionResult DownloadMovie ( string Id )
73
77
{
74
- AWSServices services = new AWSServices ( dynamoDBClient ) ;
78
+ AWSServices services = new AWSServices ( dynamoDBClient , s3Client ) ;
75
79
string Tmp = AppDomain . CurrentDomain . BaseDirectory ;
76
80
Movie movie = services . GetMovie ( Id , true ) . Result ;
77
81
return PhysicalFile ( Tmp + movie . Id + movie . Video . GetType ( ) , "video/avi" , movie . Title ) ;
@@ -80,7 +84,7 @@ public ActionResult DownloadMovie(string Id)
80
84
[ HttpPost ]
81
85
public IActionResult AddComment ( string email , string movieId , string comment , int rate )
82
86
{
83
- AWSServices services = new AWSServices ( dynamoDBClient ) ;
87
+ AWSServices services = new AWSServices ( dynamoDBClient , s3Client ) ;
84
88
services . AddComment ( email , movieId , comment , rate ) ;
85
89
return MoviesDetails ( email , movieId ) ;
86
90
}
@@ -89,7 +93,7 @@ public IActionResult AddComment(string email, string movieId, string comment,int
89
93
[ HttpPost ]
90
94
public IActionResult AddUser ( User user )
91
95
{
92
- AWSServices services = new AWSServices ( dynamoDBClient ) ;
96
+ AWSServices services = new AWSServices ( dynamoDBClient , s3Client ) ;
93
97
if ( ModelState . IsValid )
94
98
{
95
99
User newUser = services . Register ( user ) . Result ;
0 commit comments