msoLogger.debug("Execute query on infra active request table");
OperationStatus operStatus = null;
+ List<Object> list = null;
Session session = sessionFactoryRequestDB.getSessionFactory().openSession();
try {
session.beginTransaction();
- String hql = "FROM OperationStatus WHERE SERVICE_ID = :service_id";
+ String hql = "FROM OperationStatus WHERE SERVICE_ID = :service_id order by OPERATE_AT desc";
Query query = session.createQuery(hql);
query.setParameter("service_id", serviceId);
- operStatus = (OperationStatus)query.uniqueResult();
+ list = query.list();
+ if(list != null && list.size() >= 1) {
+ operStatus = (OperationStatus) list.get(0);
+ }
} finally {
if(session != null && session.isOpen()) {
import org.openecomp.mso.db.AbstractSessionFactoryManager;
import java.util.Arrays;
+import java.util.List;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
@Mocked Query query) throws Exception {
new Expectations() {{
sessionFactoryManager.getSessionFactory().openSession(); result = session;
- session.createQuery("FROM OperationStatus WHERE SERVICE_ID = :service_id"); result = query;
- query.uniqueResult(); result = new OperationStatus();
+ session.createQuery("FROM OperationStatus WHERE SERVICE_ID = :service_id order by OPERATE_AT desc"); result = query;
+ List<Object>list = query.list(); result = new OperationStatus();
}};
assertEquals(OperationStatus.class,
requestsDatabase.getOperationStatusByServiceId("123").getClass());