Subversion Repositories bacoAlunos

Rev

Rev 1814 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package pt.estgp.estgweb.domain.dao.impl;

import pt.estgp.estgweb.domain.RepositoryFileVersion;

import java.util.List;

import static org.hibernate.criterion.Restrictions.eq;
import static org.hibernate.criterion.Restrictions.isNull;
import static org.hibernate.criterion.Restrictions.not;

/**
 * @author Jorge Machado
 * @date 28/Fev/2008
 * @time 2:51:06
 * @see pt.estgp.estgweb.domain.dao.impl
 */

public class RepositoryFileVersionDaoImpl extends RepositoryFileVersionDao
{
    private RepositoryFileVersionDaoImpl()
    {
    }

    public static RepositoryFileVersionDaoImpl getInstance()
    {
        if (myInstance == null)
            myInstance = new RepositoryFileVersionDaoImpl();
        return (RepositoryFileVersionDaoImpl) myInstance;
    }

    /**
     * Find the real fileVersion for Md5Mirror
     * @param md5
     * @return
     */

    public RepositoryFileVersion findIdFromPhisicalMirror4Md5(1.5.0/docs/api/java/lang/String.html">String md5,1.5.0/docs/api/java/lang/Long.html">Long myId)
    {
        List<RepositoryFileVersion> repoFileVersions = createCriteria()
                .add(eq("md5checksum",md5))
                .add(isNull("mirrorRepositoryFileVersion"))
                .add(not(eq("id",myId)))
                .list();
        if(repoFileVersions.size() > 0)
        {
            return repoFileVersions.get(0);
        }
        return null;
    }


}