Package edu.bellevue.its.migration.global

Source Code of edu.bellevue.its.migration.global.AppHelper

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package edu.bellevue.its.migration.global;

import edu.bellevue.its.migration.entities.Role;
import edu.bellevue.its.migration.entities.User;
import java.awt.Point;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Iterator;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.zip.GZIPInputStream;
import java.util.zip.GZIPOutputStream;
import javax.swing.JInternalFrame;
import org.hibernate.Session;
import org.hibernate.criterion.Restrictions;

/**
*
* @author tj
*/
public class AppHelper {
   
   
    public static byte[] encodeHTML(String s)
    {
        try{
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            GZIPOutputStream out = new GZIPOutputStream(baos);
            out.write(s.getBytes());
            out.flush();
            out.close();
            baos.close();

            byte[] compData = baos.toByteArray();

            return compData;
        }catch(Exception e){}
       
        return null;
    }
   
    public static String decodeHTML(byte[] b)
    {
        try
        {
            ByteArrayInputStream bais = new ByteArrayInputStream(b);
            GZIPInputStream in = new GZIPInputStream(bais);
           
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            for (int value = 0; value != -1;) {
                value = in.read();
                if (value != -1) {
                    baos.write(value);
                }
            }
            in.close();
            baos.close();
           
            return new String(baos.toByteArray(),"UTF-8");
        }catch(Exception e){}
        return "";
    }
   
    public static String encodePassword(String userName, String pass)
    {
        try {
            MessageDigest md = MessageDigest.getInstance("MD5");
            byte[] digest = md.digest((userName + pass + "migrationManager").getBytes());
           
            BigInteger bi = new BigInteger(digest);

            // Format to hexadecimal
            String s = bi.toString(16);
            if (s.length() % 2 != 0) {
                s = "0" + s;
           
           
            return s;
        } catch (NoSuchAlgorithmException ex) {
            Logger.getLogger(User.class.getName()).log(Level.SEVERE, null, ex);
        }
        return "";
    }
   
    public static Role getRoleByName(String role)
    {
        Session s = AppGlobals.getInstance().hibernateSession;
       
        Role aRole = (Role) s.createCriteria(Role.class).add(Restrictions.eq("roleName",role)).uniqueResult();
        return aRole;
    }
    public static User getUserById(Integer userId) {
        Session session = AppGlobals.getInstance().hibernateSession;
        User aUser = (User) session.createCriteria(User.class).add(Restrictions.eq("idUser",userId)).uniqueResult();
        return aUser;
    }

    public static boolean userHasRole( String rolename)
    {
        Role r = AppHelper.getRoleByName(rolename);
        return (AppGlobals.getInstance().loggedInUser.getRoles().contains(r));
    }
    public static User getUserByUserNameAndPassword(String username, String password)
    {
        try {
            MessageDigest md = MessageDigest.getInstance("MD5");
            byte[] digest = md.digest((username + password + "migrationManager").getBytes());
           
            BigInteger bi = new BigInteger(digest);

            // Format to hexadecimal
            String encodedPass = bi.toString(16);
            if (encodedPass.length() % 2 != 0) {
                encodedPass = "0" + encodedPass;
           
           
            Session session = AppGlobals.getInstance().hibernateSession;
            User aUser = (User) session.createCriteria(User.class).add(Restrictions.eq("userName",username)).add(Restrictions.eq("password", encodedPass)).uniqueResult();
           
            return aUser;
           
        } catch (NoSuchAlgorithmException ex) {
            Logger.getLogger(User.class.getName()).log(Level.SEVERE, null, ex);
        }
        return null;
    }

    public static String getUserDisplayName(User loggedInUser) {
        return loggedInUser.getFirstName() + " " + loggedInUser.getLastName();
    }

    public static void placeRightOfParent(JInternalFrame child, JInternalFrame owner) {
        Point parentPoint = owner.getLocation();
        Point newPoint = (Point)parentPoint.clone();
        newPoint.x += owner.getSize().width + 5;
       
        int heightDiff = owner.getSize().height - child.getSize().height;
       
        if (newPoint.y + (heightDiff / 2) >=0)
        {
            newPoint.y += heightDiff / 2;
        }
        child.setLocation(newPoint);
       
    }
    public boolean userHasRole(User u, Role r)
    {
        Iterator<Role> roles = u.getRoles().iterator();
        while (roles.hasNext())
        {
            Role nextRole = roles.next();
            if (nextRole.equals(r))
            {
                return true;
            }
        }
        return false;
    }
   
    public static User getUserByUsername(String username)
    {
        Session session = AppGlobals.getInstance().hibernateSession;
        User aUser = (User) session.createCriteria(User.class).add(Restrictions.eq("userName",username)).uniqueResult();
        return aUser;
    }

}
TOP

Related Classes of edu.bellevue.its.migration.global.AppHelper

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.