Package com.bolbachchan.blog.dao.posts

Source Code of com.bolbachchan.blog.dao.posts.UserPostsDAOImpl

/**
*
*/
package com.bolbachchan.blog.dao.posts;

import java.sql.Timestamp;
import java.util.Date;
import java.util.List;
import java.util.Map;

import org.hibernate.Query;
import org.hibernate.Session;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.bolbachchan.blog.dao.common.BaseDAO;
import com.bolbachchan.blog.dto.PostDTO;
import com.bolbachchan.blog.hibernate.domain.Posts;

/**
* @author Chaitanya
*
*/
public class UserPostsDAOImpl extends BaseDAO implements UserPostsDAO {

    private static final Logger LOG = LoggerFactory.getLogger(UserPostsDAOImpl.class);

    /*
     * (non-Javadoc)
     * @see
     * com.bolbachchan.blog.dao.posts.UserPostsDAO#saveNewPost(com.bolbachchan
     * .blog.dto.PostDTO)
     */
    @Override
    public void saveNewPost(PostDTO dto) {
  Posts post = null;
  Session session = null;
  try {
      session = getSessionFactory().getCurrentSession();
      post = new Posts();

      post.setUserDetails(dto.getUserDetails());
      post.setPostTitle(dto.getPostTitle());
      post.setPostContent(dto.getPostContent());

      Timestamp updateDt = new Timestamp(new Date().getTime());

      post.setCreateDt(updateDt);
      post.setUpdateDt(updateDt);

      LOG.debug("The new post is : " + post);

      int id = (Integer) session.save(post);

      LOG.debug("The OBJ_ID of the new post inserted is : " + id);
  }
  catch (Exception e) {
      LOG.error("Error occured while saving the new post: " + e);
  }
  finally {
      LOG.debug("Finished saveNewPost >> UserPostsDAOImpl");
  }
    }

    /*
     * (non-Javadoc)
     * @see
     * com.bolbachchan.blog.dao.posts.UserPostsDAO#updatePost(com.bolbachchan
     * .blog.dto.PostDTO)
     */
    @Override
    public void updatePost(PostDTO dto) {
  Query query = null;
  Map<String, Object> parameterMap = getParameterMap();
  parameterMap.put(POST_TITLE, dto.getPostTitle());
  parameterMap.put(POST_CONTENT, dto.getPostContent());
  parameterMap.put(UPDATE_DT, new Timestamp(new Date().getTime()));
  parameterMap.put(OBJ_ID, dto.getObjId());
  try {
      query = getNamedQuery(UPDATE_POST, parameterMap);

      query.executeUpdate();
  }
  catch (Exception e) {
      LOG.error("Error occured while updating the post: " + e);
  }
  finally {
      if (query != null) {
    query = null;
      }
      clearParameterMap();
      LOG.debug("Finished updatePost >> UserPostsDAOImpl");
  }
    }

    /*
     * (non-Javadoc)
     * @see
     * com.bolbachchan.blog.dao.posts.UserPostsDAO#getPostsByUserId(com.bolbachchan
     * .blog.dto.PostDTO)
     */
    @SuppressWarnings("unchecked")
    @Override
    public List<Posts> getPostsByUserId(PostDTO dto) {

  Query query = null;
  List<Posts> postsList = null;
  Map<String, Object> parameterMap = getParameterMap();
  parameterMap.put(USER_OBJ_ID, dto.getUserObjId());
  try {
      LOG.debug("Entering getPostsByUserId >> UserPostsDAOImpl");
      query = getNamedQuery(GET_POSTS_BY_USER_ID, parameterMap);
      postsList = (List<Posts>) query.list();
  }
  catch (Exception e) {
      LOG.error("Error occured while getting Posts : " + e);
  }
  finally {
      if (query != null) {
    query = null;
      }
      clearParameterMap();
      LOG.debug("Finished getPostsByUserId >> UserPostsDAOImpl");
  }
  return postsList;
    }

    @Override
    public Posts getPostByPostId(int objId) {
  Query query = null;
  Posts post = new Posts();
  Map<String, Object> parameterMap = getParameterMap();
  parameterMap.put(OBJ_ID, objId);
  try {
      LOG.debug("Entering getPostByPostId >> UserPostsDAOImpl");
      query = getNamedQuery(GET_POST_BY_POST_ID, parameterMap);
      post = (Posts) query.uniqueResult();

  }
  catch (Exception e) {
      LOG.error("Error occured while retrieving Post : " + e);
  }
  finally {
      if (query != null) {
    query = null;
      }
      clearParameterMap();
      LOG.debug("Exiting getPostByPostId >> UserPostsDAOImpl");
  }
  return post;
    }

    @Override
    public void saveNewPost(Posts post) {
  Session session = null;
  try {
      LOG.debug("Entering saveNewPost >> UserPostsDAOImpl");
      session = getSessionFactory().getCurrentSession();
      session.save(post);
  }
  catch (Exception e) {
      LOG.error("Error occured while saving a new post : " + e);
  }
  finally {
      LOG.debug("Finished saveNewPost >> UserPostsDAOImpl");
  }
    }

    @Override
    public void updatePost(Posts post) {
  Session session = null;
  try {
      LOG.debug("Entering updatePost >> UserPostsDAOImpl");
      session = getSessionFactory().getCurrentSession();
      session.update(post);
  }
  catch (Exception e) {
      LOG.error("Error occured while updating the post : " + e);
  }
  finally {
      LOG.debug("Finished updatePost >> UserPostsDAOImpl");
  }
    }

    @SuppressWarnings("unchecked")
    @Override
    public List<Posts> getPostsByUserId(int userId) {
  Query query = null;
  List<Posts> posts = null;
  Map<String, Object> parameterMap = getParameterMap();
  parameterMap.put(USER_OBJ_ID, userId);
  try {
      LOG.debug("Entering getPotsByUserId >> UserPostsDAOImpl");
      query = getNamedQuery(GET_POSTS_BY_USER_ID, parameterMap);
      posts = (List<Posts>) query.list();
  }
  catch (Exception e) {
      LOG.error("Error occured while getting Posts : " + e);
  }
  finally {
      if (query != null) {
    query = null;
      }
      clearParameterMap();
      LOG.debug("Finished getPostsByUserId >> UserPostsDAOImpl");
  }
  return posts;
    }

}
TOP

Related Classes of com.bolbachchan.blog.dao.posts.UserPostsDAOImpl

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.