Class UserControllerRDBS

java.lang.Object
com.cyran.tp.server.users.UserControllerRDBS

@RestController
public class UserControllerRDBS
extends java.lang.Object
Managing user and storing information about him
Author:
Jakub Perdek, Peter Spusta
  • Constructor Summary

    Constructors 
    Constructor Description
    UserControllerRDBS()  
  • Method Summary

    Modifier and Type Method Description
    boolean changeEmail​(javax.servlet.http.HttpServletRequest request, java.lang.String body, javax.servlet.http.HttpServletResponse response)
    Changes email according old email
    boolean changeName​(javax.servlet.http.HttpServletRequest request, java.lang.String body, javax.servlet.http.HttpServletResponse response)
    Changes name of user in DB according old name
    boolean changePassword​(javax.servlet.http.HttpServletRequest request, java.lang.String body, javax.servlet.http.HttpServletResponse response)
    Changes password of user according email
    java.util.List<Users> getAll​(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
    Returns all users
    java.lang.String getRole​(javax.servlet.http.HttpServletRequest request, java.lang.String body, javax.servlet.http.HttpServletResponse response)
    Gets certain role according user name
    java.lang.String insertAdmin​(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
    Inserts admin to DB
    UsersDTO login​(javax.servlet.http.HttpServletRequest request, java.lang.String name, javax.servlet.http.HttpServletResponse response)
    Method for logging of user
    java.lang.String register​(javax.servlet.http.HttpServletRequest request, java.lang.String body, javax.servlet.http.HttpServletResponse response)
    Method for registering user
    UsersDTO[] searchForEmail​(javax.servlet.http.HttpServletRequest request, java.lang.String body, javax.servlet.http.HttpServletResponse response)
    Search for users according email (text is included in some email)
    UsersDTO[] searchForName​(javax.servlet.http.HttpServletRequest request, java.lang.String body, javax.servlet.http.HttpServletResponse response)
    Search for users according name (text is included in some name)
    java.lang.String setRole​(javax.servlet.http.HttpServletRequest request, java.lang.String body, javax.servlet.http.HttpServletResponse response)
    Sets role to user (role should be already inserted in DB)

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

  • Method Details

    • register

      @RequestMapping(path="/signup", method=POST, produces="application/json") @ResponseBody @CrossOrigin public java.lang.String register​(javax.servlet.http.HttpServletRequest request, @RequestBody java.lang.String body, javax.servlet.http.HttpServletResponse response) throws javassist.NotFoundException, java.lang.IllegalArgumentException, java.lang.IllegalAccessException, org.json.simple.parser.ParseException, org.hibernate.HibernateException
      Method for registering user
      Parameters:
      request - - request for registration
      body - - body of post request with email, name and hashed form of password
      response - - response which should be send back
      Returns:
      string that confirms of user registration, otherwise denial of it
      Throws:
      javassist.NotFoundException
      java.lang.IllegalArgumentException
      java.lang.IllegalAccessException
      org.json.simple.parser.ParseException
      org.hibernate.HibernateException
    • login

      @RequestMapping(path="/login", method=GET, produces="application/json") @ResponseBody @CrossOrigin public UsersDTO login​(javax.servlet.http.HttpServletRequest request, @RequestParam java.lang.String name, javax.servlet.http.HttpServletResponse response) throws javassist.NotFoundException, java.lang.IllegalArgumentException, java.lang.IllegalAccessException, org.json.simple.parser.ParseException, org.hibernate.HibernateException
      Method for logging of user
      Parameters:
      request - - request for login
      name - - name of user which should be obtained from DB
      response - - response for login
      Returns:
      information about user when he logs in
      Throws:
      javassist.NotFoundException
      java.lang.IllegalArgumentException
      java.lang.IllegalAccessException
      org.json.simple.parser.ParseException
      org.hibernate.HibernateException
    • setRole

      @RequestMapping(path="/setRole", method=POST, produces="application/json") @ResponseBody @CrossOrigin public java.lang.String setRole​(javax.servlet.http.HttpServletRequest request, @RequestBody java.lang.String body, javax.servlet.http.HttpServletResponse response) throws javassist.NotFoundException, java.lang.IllegalArgumentException, java.lang.IllegalAccessException, org.json.simple.parser.ParseException, org.hibernate.HibernateException
      Sets role to user (role should be already inserted in DB)
      Parameters:
      request - - request for setting role
      body - - body contains name of user, his new role + password
      response - - request for setting role
      Returns:
      Throws:
      javassist.NotFoundException
      java.lang.IllegalArgumentException
      java.lang.IllegalAccessException
      org.json.simple.parser.ParseException
      org.hibernate.HibernateException
    • getRole

      @RequestMapping(path="/getRole", method=POST, produces="application/json") @ResponseBody @CrossOrigin public java.lang.String getRole​(javax.servlet.http.HttpServletRequest request, @RequestBody java.lang.String body, javax.servlet.http.HttpServletResponse response) throws javassist.NotFoundException, java.lang.IllegalArgumentException, java.lang.IllegalAccessException, org.json.simple.parser.ParseException, org.hibernate.HibernateException
      Gets certain role according user name
      Parameters:
      request - - request for getting role
      body - - contains name of user for which should be role observed + password
      response - - response for getting role
      Returns:
      Throws:
      javassist.NotFoundException
      java.lang.IllegalArgumentException
      java.lang.IllegalAccessException
      org.json.simple.parser.ParseException
      org.hibernate.HibernateException
    • searchForName

      @RequestMapping(path="/name", method=POST, produces="application/json") @ResponseBody @CrossOrigin public UsersDTO[] searchForName​(javax.servlet.http.HttpServletRequest request, @RequestBody java.lang.String body, javax.servlet.http.HttpServletResponse response) throws javassist.NotFoundException, java.lang.IllegalArgumentException, java.lang.IllegalAccessException, org.json.simple.parser.ParseException, org.hibernate.HibernateException
      Search for users according name (text is included in some name)
      Parameters:
      request - - request for searching for user according name
      body - - contains name of user or part of it
      response - - response for searching for user according name
      Returns:
      array of users with part of given name
      Throws:
      javassist.NotFoundException
      java.lang.IllegalArgumentException
      java.lang.IllegalAccessException
      org.json.simple.parser.ParseException
      org.hibernate.HibernateException
    • searchForEmail

      @RequestMapping(path="/email", method=POST, produces="application/json") @ResponseBody @CrossOrigin public UsersDTO[] searchForEmail​(javax.servlet.http.HttpServletRequest request, @RequestBody java.lang.String body, javax.servlet.http.HttpServletResponse response) throws javassist.NotFoundException, java.lang.IllegalArgumentException, java.lang.IllegalAccessException, org.json.simple.parser.ParseException
      Search for users according email (text is included in some email)
      Parameters:
      request - - request for searching for user according email
      body - - contains email of user or part of it
      response - - response for searching for user according email
      Returns:
      array of users with part of given email
      Throws:
      javassist.NotFoundException
      java.lang.IllegalArgumentException
      java.lang.IllegalAccessException
      org.json.simple.parser.ParseException
    • getAll

      @RequestMapping(path="/all", method=GET) @ResponseBody @CrossOrigin public java.util.List<Users> getAll​(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javassist.NotFoundException, java.lang.IllegalArgumentException, java.lang.IllegalAccessException
      Returns all users
      Parameters:
      request - - request for getting all users
      response - - response with all users
      Returns:
      all users from DB
      Throws:
      javassist.NotFoundException
      java.lang.IllegalArgumentException
      java.lang.IllegalAccessException
    • insertAdmin

      @RequestMapping(path="/insertAdmin", method=GET) @ResponseBody @CrossOrigin public java.lang.String insertAdmin​(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javassist.NotFoundException, java.lang.IllegalArgumentException, java.lang.IllegalAccessException
      Inserts admin to DB
      Parameters:
      request - - request for admin insertion
      response - - response for admin insertion
      Returns:
      confirmation string if admin is inserted, otherwise null
      Throws:
      javassist.NotFoundException
      java.lang.IllegalArgumentException
      java.lang.IllegalAccessException
    • changeEmail

      @RequestMapping(path="/changeEmail", method=POST) @ResponseBody @CrossOrigin public boolean changeEmail​(javax.servlet.http.HttpServletRequest request, @RequestBody java.lang.String body, javax.servlet.http.HttpServletResponse response) throws javassist.NotFoundException, java.lang.IllegalArgumentException, java.lang.IllegalAccessException, org.json.simple.parser.ParseException
      Changes email according old email
      Parameters:
      request - - request for changing email according old email
      body - - body containing old and new email + password should be included
      response - - response for changing email according old email
      Returns:
      true if email is changed otherwise not
      Throws:
      javassist.NotFoundException
      java.lang.IllegalArgumentException
      java.lang.IllegalAccessException
      org.json.simple.parser.ParseException
    • changeName

      @RequestMapping(path="/changeName", method=POST) @ResponseBody @CrossOrigin public boolean changeName​(javax.servlet.http.HttpServletRequest request, @RequestBody java.lang.String body, javax.servlet.http.HttpServletResponse response) throws javassist.NotFoundException, java.lang.IllegalArgumentException, java.lang.IllegalAccessException, org.json.simple.parser.ParseException
      Changes name of user in DB according old name
      Parameters:
      request - - request for changing name of user according old name
      body - - body containing name and new name + password should be included
      response - - response for changing name according old name
      Returns:
      true if name of user is changed otherwise not
      Throws:
      javassist.NotFoundException
      java.lang.IllegalArgumentException
      java.lang.IllegalAccessException
      org.json.simple.parser.ParseException
    • changePassword

      @RequestMapping(path="/changePasswd", method=POST) @ResponseBody @CrossOrigin public boolean changePassword​(javax.servlet.http.HttpServletRequest request, @RequestBody java.lang.String body, javax.servlet.http.HttpServletResponse response) throws javassist.NotFoundException, java.lang.IllegalArgumentException, java.lang.IllegalAccessException, org.json.simple.parser.ParseException, javax.mail.internet.AddressException, javax.mail.MessagingException, java.io.IOException
      Changes password of user according email
      Parameters:
      request - - request for changing password of user according email
      body - - body containing pure for of changed password and hashed changed password + password should be included
      response - - response for changing password of user according email
      Returns:
      true if password is changed otherwise false
      Throws:
      javassist.NotFoundException
      java.lang.IllegalArgumentException
      java.lang.IllegalAccessException
      org.json.simple.parser.ParseException
      javax.mail.internet.AddressException
      javax.mail.MessagingException
      java.io.IOException