Android Open Source - swazam Login Controller






From Project

Back to project page swazam.

License

The source code is released under:

MIT License

If you think the Android project swazam listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package ac.tuwien.sa13.controller;
//ww w  .  j  av a 2  s  .  c om
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import ac.tuwien.sa13.entity.User;
import ac.tuwien.sa13.service.IUserService;
import ac.tuwien.sa13.utilities.SessionIdentifierGenerator;
import ac.tuwien.sa13.utilities.Token;
import ac.tuwien.sa13.validator.LoginValidator;

@Controller
public class LoginController {
  
  @Autowired
  LoginValidator val;
  
  @Autowired
  IUserService userService;
  
  @RequestMapping(value = "/login", method = RequestMethod.GET)
    public String login(final ModelMap modelMap) {
    modelMap.addAttribute(new User());
        return "login"; 
    }
  
  //Used for login on website
  @RequestMapping(value = "/login", method = RequestMethod.POST)
    public String login(final ModelMap modelMap, @ModelAttribute("user") User user, BindingResult result ) {
    val.validate(user, result);
    
    if(result.hasErrors()){
      System.out.println("ERRORS in form: " + result.getErrorCount());
      return "login";
      
    }

    //Check credentials
    String name = user.getName();
    User userTemp = userService.getUser(name);
    if(userTemp != null){
      if(userTemp.getPassword().equals(user.getPassword())){
        user = userTemp;
      }else{
        return "badcredentials";
      }
    }else{
      userTemp = new User();
      userTemp.setName(user.getName());
      userTemp.setPassword(user.getPassword());
      user = userTemp;
      userService.add(user);
    }
    
    modelMap.addAttribute("user", user);
        return "user"; 
    }
  
  //Login from App
  @RequestMapping(value = "/authenticate", method = RequestMethod.POST)
  @ResponseBody
    public Token authenticate(final ModelMap modelMap, 
        @RequestParam(value = "username", required=false) String username,
        @RequestParam(value = "password", required=false) String password) 
      
  {
    
    User user = userService.getUser(username);
    Token token = new Token();
    token.setToken(SessionIdentifierGenerator.nextSessionId());
    if(user != null){
      if (user.getPassword().equals(password)) {
        user.setToken(token.getToken());
        userService.update(user);
      }else {//User exists but password wrong
        return null;
      }
    }else{
      user = new User();
      user.setName(username);
      user.setPassword(password);
      user.setToken(token.getToken());
      userService.add(user);
    }
    
    return token; 
    }
}




Java Source Code List

ac.tuwien.sa13.beans.HibernateAwareObjectMapper.java
ac.tuwien.sa13.controller.HomeController.java
ac.tuwien.sa13.controller.LoginController.java
ac.tuwien.sa13.controller.RequestController.java
ac.tuwien.sa13.controller.TransactionController.java
ac.tuwien.sa13.controller.api.UserRestController.java
ac.tuwien.sa13.dao.HibernateDAO.java
ac.tuwien.sa13.dao.IGenericDAO.java
ac.tuwien.sa13.dao.IRequestDAO.java
ac.tuwien.sa13.dao.ITransactionDAO.java
ac.tuwien.sa13.dao.IUserDAO.java
ac.tuwien.sa13.dao.RequestDAO.java
ac.tuwien.sa13.dao.TransactionDAO.java
ac.tuwien.sa13.dao.UserDAO.java
ac.tuwien.sa13.entity.Request.java
ac.tuwien.sa13.entity.Transaction.java
ac.tuwien.sa13.entity.User.java
ac.tuwien.sa13.service.IGenericService.java
ac.tuwien.sa13.service.IRequestService.java
ac.tuwien.sa13.service.ITransactionService.java
ac.tuwien.sa13.service.IUserService.java
ac.tuwien.sa13.service.PeerManager.java
ac.tuwien.sa13.service.RequestService.java
ac.tuwien.sa13.service.TransactionService.java
ac.tuwien.sa13.service.UserService.java
ac.tuwien.sa13.utilities.SessionIdentifierGenerator.java
ac.tuwien.sa13.utilities.Token.java
ac.tuwien.sa13.validator.LoginValidator.java
at.ac.tuwien.swa13.swazam.NetworkConnection.java
at.ac.tuwien.swa13.swazam.Peer.java
at.ac.tuwien.swa13.swazam.fingerprint.IFingerPrintCreator.java
at.ac.tuwien.swa13.swazam.fingerprint.impl.FingerPrintCreator.java
at.ac.tuwien.swa13.swazam.library.ILibraryManager.java
at.ac.tuwien.swa13.swazam.library.ISong.java
at.ac.tuwien.swa13.swazam.library.impl.LibraryManager.java
at.ac.tuwien.swa13.swazam.library.impl.Song.java
at.ac.tuwien.swa13.swazam.p2p.PeerConnector.java
at.saws2013.szazam.App.java
at.saws2013.szazam.BaseActivity.java
at.saws2013.szazam.HistoryActivity.java
at.saws2013.szazam.LoginActivity.java
at.saws2013.szazam.RecognitionActivity.java
at.saws2013.szazam.SettingsActivity.java
at.saws2013.szazam.entities.IListItem.java
at.saws2013.szazam.entities.ListItemTypes.java
at.saws2013.szazam.entities.Request.java
at.saws2013.szazam.entities.Transaction.java
at.saws2013.szazam.fingerprint.IFingerPrintSystem.java
at.saws2013.szazam.fingerprint.impl.FingerPrintCreator.java
at.saws2013.szazam.fragments.SettingsFragment.java
at.saws2013.szazam.media.IAudioFilePicker.java
at.saws2013.szazam.media.IAudioRecorder.java
at.saws2013.szazam.media.impl.AudioFilePicker.java
at.saws2013.szazam.media.impl.AudioRecorder.java
at.saws2013.szazam.store.IAuthStore.java
at.saws2013.szazam.store.IRequestStore.java
at.saws2013.szazam.store.ITransactionStore.java
at.saws2013.szazam.store.impl.AuthStore.java
at.saws2013.szazam.store.impl.RequestStore.java
at.saws2013.szazam.store.impl.TransactionStore.java
at.saws2013.szazam.ui.CustomListAdapter.java
at.saws2013.szazam.ui.ViewTools.java
at.saws2013.szazam.volley.CustomVolleyStringRequest.java
de.passsy.holocircularprogressbar.HoloCircularProgressBar.java