use of com.intel.mtwilson.as.data.MwMleSource in project OpenAttestation by OpenAttestation.
the class MwMleSourceJpaController method findByMleId.
public MwMleSource findByMleId(Integer id) {
EntityManager em = getEntityManager();
try {
Query query = em.createNamedQuery("MwMleSource.findByMleID");
query.setParameter("mleId", id);
query.setHint(QueryHints.REFRESH, HintValues.TRUE);
query.setHint(QueryHints.CACHE_USAGE, CacheUsage.DoNotCheckCache);
MwMleSource mleSourceObj = (MwMleSource) query.getSingleResult();
return mleSourceObj;
} catch (NoResultException e) {
log.error(String.format("MLE information with identity %d not found in the DB.", id));
return null;
} finally {
em.close();
}
}
use of com.intel.mtwilson.as.data.MwMleSource in project OpenAttestation by OpenAttestation.
the class MwMleSourceJpaController method getMwMleSourceCount.
public int getMwMleSourceCount() {
EntityManager em = getEntityManager();
try {
CriteriaQuery cq = em.getCriteriaBuilder().createQuery();
Root<MwMleSource> rt = cq.from(MwMleSource.class);
cq.select(em.getCriteriaBuilder().count(rt));
Query q = em.createQuery(cq);
return ((Long) q.getSingleResult()).intValue();
} finally {
em.close();
}
}
use of com.intel.mtwilson.as.data.MwMleSource in project OpenAttestation by OpenAttestation.
the class MleBO method getMleSource.
/**
* Retrieves the host name that was used to white list the MLE specified.
*
* @param mleName
* @param mleVersion
* @param osName
* @param osVersion
* @param oemName
* @return
*/
public String getMleSource(String mleName, String mleVersion, String osName, String osVersion, String oemName) {
TblMle tblMle;
String hostName = null;
try {
try {
// First check if the entry exists in the MLE table.
tblMle = getMleDetails(mleName, mleVersion, osName, osVersion, oemName);
} catch (NoResultException nre) {
throw new ASException(nre, ErrorCode.WS_MLE_DOES_NOT_EXIST, mleName, mleVersion);
}
MwMleSourceJpaController mleSourceJpaController = new MwMleSourceJpaController(getEntityManagerFactory());
MwMleSource mwMleSource = mleSourceJpaController.findByMleId(tblMle.getId());
// the MLE was configured manually.
if (mwMleSource == null) {
hostName = "Manually configured white list";
} else {
hostName = mwMleSource.getHostName();
}
return hostName;
} catch (ASException ase) {
throw ase;
} catch (Exception e) {
throw new ASException(e);
}
}
use of com.intel.mtwilson.as.data.MwMleSource in project OpenAttestation by OpenAttestation.
the class MleBO method addMleSource.
/**
* Creates a new mapping entry in the DB between the MLE and the host that was used for whitelisiting.
*
* @param mleSourceObj : Object containing the details of the host and the MLE.
* @return True or False
*/
public String addMleSource(MleSource mleSourceObj) {
TblMle tblMle;
MleData mleData = null;
try {
try {
mleData = mleSourceObj.getMleData();
// Verify if the MLE exists in the system.
tblMle = getMleDetails(mleData.getName(), mleData.getVersion(), mleData.getOsName(), mleData.getOsVersion(), mleData.getOemName());
} catch (NoResultException nre) {
throw new ASException(nre, ErrorCode.WS_MLE_DOES_NOT_EXIST, mleData.getName(), mleData.getVersion());
}
MwMleSourceJpaController mleSourceJpaController = new MwMleSourceJpaController(getEntityManagerFactory());
// Let us check if there is a mapping entry already for this MLE. If it does, then we need to return
// back appropriate error.
MwMleSource mleSourceCurrentObj = mleSourceJpaController.findByMleId(tblMle.getId());
if (mleSourceCurrentObj != null) {
log.error("White List host is already mapped to the MLE - " + tblMle.getName());
throw new ASException(ErrorCode.WS_MLE_SOURCE_MAPPING_ALREADY_EXISTS, mleData.getName());
}
// Else create a new entry in the DB.
MwMleSource mleSourceData = new MwMleSource();
mleSourceData.setMleId(tblMle);
mleSourceData.setHostName(mleSourceObj.getHostName());
mleSourceJpaController.create(mleSourceData);
} catch (ASException ase) {
throw ase;
} catch (Exception e) {
throw new ASException(e);
}
return "true";
}
Aggregations