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;
}
}