Search in sources :

Example 6 with MwMleSource

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();
    }
}
Also used : CriteriaQuery(javax.persistence.criteria.CriteriaQuery) Query(javax.persistence.Query) MwMleSource(com.intel.mtwilson.as.data.MwMleSource)

Example 7 with MwMleSource

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();
    }
}
Also used : CriteriaQuery(javax.persistence.criteria.CriteriaQuery) Query(javax.persistence.Query) CriteriaQuery(javax.persistence.criteria.CriteriaQuery) MwMleSource(com.intel.mtwilson.as.data.MwMleSource)

Example 8 with MwMleSource

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);
    }
}
Also used : MwMleSourceJpaController(com.intel.mtwilson.as.controller.MwMleSourceJpaController) TblMle(com.intel.mtwilson.as.data.TblMle) NoResultException(javax.persistence.NoResultException) MwMleSource(com.intel.mtwilson.as.data.MwMleSource) ASException(com.intel.mountwilson.as.common.ASException) ASException(com.intel.mountwilson.as.common.ASException) NoResultException(javax.persistence.NoResultException) ASDataException(com.intel.mtwilson.as.controller.exceptions.ASDataException) NonexistentEntityException(com.intel.mtwilson.as.controller.exceptions.NonexistentEntityException) IllegalOrphanException(com.intel.mtwilson.as.controller.exceptions.IllegalOrphanException)

Example 9 with MwMleSource

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";
}
Also used : MwMleSourceJpaController(com.intel.mtwilson.as.controller.MwMleSourceJpaController) TblMle(com.intel.mtwilson.as.data.TblMle) MleData(com.intel.mtwilson.datatypes.MleData) NoResultException(javax.persistence.NoResultException) MwMleSource(com.intel.mtwilson.as.data.MwMleSource) ASException(com.intel.mountwilson.as.common.ASException) ASException(com.intel.mountwilson.as.common.ASException) NoResultException(javax.persistence.NoResultException) ASDataException(com.intel.mtwilson.as.controller.exceptions.ASDataException) NonexistentEntityException(com.intel.mtwilson.as.controller.exceptions.NonexistentEntityException) IllegalOrphanException(com.intel.mtwilson.as.controller.exceptions.IllegalOrphanException)

Aggregations

MwMleSource (com.intel.mtwilson.as.data.MwMleSource)9 NonexistentEntityException (com.intel.mtwilson.as.controller.exceptions.NonexistentEntityException)6 TblMle (com.intel.mtwilson.as.data.TblMle)6 ASException (com.intel.mountwilson.as.common.ASException)4 MwMleSourceJpaController (com.intel.mtwilson.as.controller.MwMleSourceJpaController)4 ASDataException (com.intel.mtwilson.as.controller.exceptions.ASDataException)4 IllegalOrphanException (com.intel.mtwilson.as.controller.exceptions.IllegalOrphanException)4 NoResultException (javax.persistence.NoResultException)4 Query (javax.persistence.Query)3 CriteriaQuery (javax.persistence.criteria.CriteriaQuery)3 MleData (com.intel.mtwilson.datatypes.MleData)2 EntityNotFoundException (javax.persistence.EntityNotFoundException)2