3
3
import com .balinski .api_project .database .dao .DaoManager ;
4
4
import com .balinski .api_project .database .dao .DaoException ;
5
5
import com .balinski .api_project .database .model .Actor ;
6
+ import com .balinski .api_project .database .model .User ;
6
7
import com .balinski .api_project .servlet .util .JsonResponseBuilder ;
8
+ import com .balinski .api_project .servlet .util .UserAuthenticator ;
7
9
8
10
import javax .servlet .http .HttpServlet ;
9
11
import javax .servlet .http .HttpServletRequest ;
@@ -22,17 +24,20 @@ public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOExc
22
24
23
25
var enumeration = req .getParameterNames ();
24
26
25
- var supportedParameters = Set .of ("id" , "page" , "perPage" , "firstName" , "lastName" , "order" );
27
+ var supportedParameters = Set .of ("id" , "page" , "perPage" , "firstName" , "lastName" , "order" , "user" , "token" );
26
28
var param = Collections .list (enumeration )
27
29
.stream ()
28
30
.distinct ()
29
31
.filter (supportedParameters ::contains )
30
32
.collect (Collectors .toMap (x -> x , req ::getParameter ));
31
33
32
- List <Actor > actors ;
33
- var dao = DaoManager .getActorDao ();
34
-
35
34
try {
35
+ User user = UserAuthenticator .authenticateAndGet (param .get ("user" ), param .get ("token" ));
36
+ UserAuthenticator .incrementUses (user );
37
+
38
+ List <Actor > actors ;
39
+ var dao = DaoManager .getActorDao ();
40
+
36
41
if (param .get ("id" ) != null )
37
42
actors = dao .getById (Integer .parseInt (param .get ("id" )));
38
43
else if (param .get ("firstName" ) != null )
@@ -57,9 +62,7 @@ else if(param.get("perPage") != null && param.get("page") != null) {
57
62
String response = JsonResponseBuilder .mergeFromList (actors );
58
63
writer .print (response );
59
64
} catch (DaoException e ) {
60
- System .err .println ("An error occurred in ActorServlet: " + e .getMessage ());
61
65
writer .print (JsonResponseBuilder .getErrorJson (e ));
62
- e .printStackTrace ();
63
66
}
64
67
}
65
68
}
0 commit comments