Subversion Repositories WebE

Compare Revisions

Last modification

Ignore whitespace Rev 25 → Rev 26

/trunk/src/ch/ffhs/webE/dao/UserDAOImpl.java
1,5 → 1,6
package ch.ffhs.webE.dao;
 
import java.util.ArrayList;
import java.util.List;
 
import org.hibernate.Session;
9,67 → 10,106
import com.googlecode.s2hibernate.struts2.plugin.annotations.TransactionTarget;
import ch.ffhs.webE.domain.*;
 
public class UserDAOImpl implements UserDAO {
public class UserDAOImpl implements UserDAO
{
 
@SessionTarget
Session session;
@TransactionTarget
Transaction transaction;
@SessionTarget
Session session;
@TransactionTarget
Transaction transaction;
 
@SuppressWarnings("unchecked")
@Override
public List<User> listUser() {
List<User> user = null;
try {
user = session.createQuery("from User").list();
} catch (Exception e) {
e.printStackTrace();
}
return user;
}
/**
* Creates a list of all the registered users
*
* @return an ArrayList with all the users - in case of a problem, an empty
* list is returned
*/
@SuppressWarnings("unchecked")
@Override
public List<User> listUser()
{
List<User> user = null;
try
{
user = session.createQuery("from User").list();
}
catch (Exception e)
{
e.printStackTrace();
}
 
@Override
public void saveUser(User user) {
try {
session.save(user);
} catch (Exception e) {
transaction.rollback();
e.printStackTrace();
}
}
//If no user was checked, return an empty list to mitigate null pointer exceptions
if (user == null)
{
user = new ArrayList<User>();
}
return user;
}
 
/**
* Used to delete a user.
*/
@Override
public void deleteUser(int userId) {
try {
User user = (User) session.get(User.class, userId);
session.delete(user);
} catch (Exception e) {
transaction.rollback();
e.printStackTrace();
}
}
/**
* Executes the query to save the user
*
* @param User
* Domain object to be saved
* @return void
*/
@Override
public void saveUser(User user)
{
try
{
session.save(user);
}
catch (Exception e)
{
transaction.rollback();
e.printStackTrace();
}
}
 
/**
* Returns a single user with this user name (used for login)
*
* @param username
* : String - entire user name
* @return User: Returns a user object if something is found. If not, null
* is returned
*/
public User searchUsername(String username) {
User user = null;
/**
* Used to delete a user.
*
* @param int userId
*/
@Override
public void deleteUser(int userId)
{
try
{
User user = (User) session.get(User.class, userId);
session.delete(user);
}
catch (Exception e)
{
transaction.rollback();
e.printStackTrace();
}
}
 
try {
user = (User) session
.createQuery("FROM User " + "WHERE username = :username")
.setParameter("username", username).uniqueResult();
} catch (Exception e) {
// TODO: Log error
}
return user;
}
/**
* Returns a single user with this user name (used for login)
*
* @param username
* : String - entire user name
* @return User: Returns a user object if something is found. If not, null
* is returned
*/
public User searchUsername(String username)
{
User user = null;
 
//Exec query
try
{
user = (User) session
.createQuery("FROM User " + "WHERE username = :username")
.setParameter("username", username).uniqueResult();
}
catch (Exception e)
{
// TODO: Log error
}
return user;
}
}