1 package org.onap.portalapp.widget.service.impl;
 
   5 import javax.transaction.Transactional;
 
   7 import org.hibernate.Criteria;
 
   8 import org.hibernate.Session;
 
   9 import org.hibernate.SessionFactory;
 
  10 import org.hibernate.Transaction;
 
  11 import org.hibernate.criterion.Restrictions;
 
  12 import org.onap.portalapp.widget.domain.MicroserviceData;
 
  13 import org.onap.portalapp.widget.domain.MicroserviceParameter;
 
  14 import org.onap.portalapp.widget.service.MicroserviceService;
 
  15 import org.slf4j.Logger;
 
  16 import org.slf4j.LoggerFactory;
 
  17 import org.springframework.beans.factory.annotation.Autowired;
 
  18 import org.springframework.context.annotation.EnableAspectJAutoProxy;
 
  19 import org.springframework.stereotype.Service;
 
  22  * TODO: moved all microservice-related code (domain, controller, service)
 
  23  * from ecomp portal Backend to widget microservice
 
  25 @Service("microserviceService")
 
  27 @org.springframework.context.annotation.Configuration
 
  28 @EnableAspectJAutoProxy
 
  29 public class MicroserviceServiceImpl implements MicroserviceService{
 
  31         private static final Logger logger = LoggerFactory.getLogger(MicroserviceServiceImpl.class);
 
  34         private SessionFactory sessionFactory;
 
  37         public Long saveMicroserivce(MicroserviceData newService) {
 
  39                         logger.debug("MicroserviceServiceImpl.saveMicroserivce: microservice={}", newService);
 
  40                         Session session = sessionFactory.openSession();
 
  41                         Transaction tx = session.beginTransaction();            
 
  42                         session.save(newService);
 
  48                         logger.error("Exception occurred while performing MicroserviceServiceImpl.saveMicroserivce in widget microservices. Details:" + e.getMessage());
 
  50                 return newService.getId();
 
  54         public void saveMicroserviceParameter(MicroserviceParameter newParameter) {
 
  56                         logger.debug("MicroserviceServiceImpl.saveMicroserviceData: microservice={}", newParameter);
 
  57                         Session session = sessionFactory.openSession();
 
  58                         Transaction tx = session.beginTransaction();            
 
  59                         session.save(newParameter);
 
  65                         logger.error("Exception occurred while performing MicroserviceServiceImpl.saveMicroserviceData in widget microservices. Details:" + e.getMessage());
 
  69         @SuppressWarnings("unchecked")
 
  71         public Long getMicroserviceIdByName(String newServiceName) {
 
  73                 Session session = sessionFactory.openSession();
 
  74                 Criteria criteria = session.createCriteria(MicroserviceData.class)
 
  75                                 .add(Restrictions.eq("name", newServiceName))
 
  76                                 .setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
 
  78                 List<MicroserviceData> services = criteria.list();
 
  79                 logger.debug("MicroserviceServiceImpl.getMicroserviceByName: result={}", services);
 
  83                 return (services.size() > 0) ? services.get(0).getId() : null;