package edu.ualberta.med.biobank.common.wrappers.checks; import java.util.List; import edu.ualberta.med.biobank.common.wrappers.actions.BiobankHQLAction; import edu.ualberta.med.biobank.server.applicationservice.exceptions.BiobankSessionException; import edu.ualberta.med.biobank.server.applicationservice.exceptions.UnexpectedHQLResultsException; public class HQLResultCheck extends BiobankHQLAction { private static final long serialVersionUID = 1L; private final String errMsg; private final List<?> expected; /** * * @param expected expected {@code List} of results. * @param msg the message shown in the {@code UnexpectedHQLResultsException} * thrown if the results returned do not match the expected. * @param hql * @param parameters */ HQLResultCheck(List<?> expected, String msg, String hql, Object... parameters) { super(hql, parameters); this.expected = expected; this.errMsg = msg; } @Override public Object doResults(List<?> results) throws BiobankSessionException { if (!results.equals(expected)) throw new UnexpectedHQLResultsException(errMsg); return null; } }