Search in sources :

Example 1 with AnnotatedPropertyCriteria

use of org.apache.deltaspike.data.impl.property.query.AnnotatedPropertyCriteria in project deltaspike by apache.

the class EntityUtils method primaryKeyPropertyCriteriaList.

private static List<PropertyCriteria> primaryKeyPropertyCriteriaList(Class<?> entityClass) {
    List<PropertyCriteria> criteria = new LinkedList<PropertyCriteria>();
    criteria.add(new AnnotatedPropertyCriteria(Id.class));
    criteria.add(new AnnotatedPropertyCriteria(EmbeddedId.class));
    String[] fromMappingFiles = PersistenceUnitDescriptorProvider.getInstance().primaryKeyFields(entityClass);
    if (fromMappingFiles != null) {
        for (String id : fromMappingFiles) {
            criteria.add(new NamedPropertyCriteria(id));
        }
    }
    return criteria;
}
Also used : NamedPropertyCriteria(org.apache.deltaspike.data.impl.property.query.NamedPropertyCriteria) EmbeddedId(javax.persistence.EmbeddedId) EmbeddedId(javax.persistence.EmbeddedId) Id(javax.persistence.Id) AnnotatedPropertyCriteria(org.apache.deltaspike.data.impl.property.query.AnnotatedPropertyCriteria) NamedPropertyCriteria(org.apache.deltaspike.data.impl.property.query.NamedPropertyCriteria) PropertyCriteria(org.apache.deltaspike.data.impl.property.query.PropertyCriteria) LinkedList(java.util.LinkedList) AnnotatedPropertyCriteria(org.apache.deltaspike.data.impl.property.query.AnnotatedPropertyCriteria)

Example 2 with AnnotatedPropertyCriteria

use of org.apache.deltaspike.data.impl.property.query.AnnotatedPropertyCriteria in project deltaspike by apache.

the class TimestampsProvider method updateTimestamps.

private void updateTimestamps(Object entity, boolean create) {
    long systime = System.currentTimeMillis();
    List<Property<Object>> properties = new LinkedList<Property<Object>>();
    PropertyQuery<Object> query = PropertyQueries.<Object>createQuery(entity.getClass()).addCriteria(new AnnotatedPropertyCriteria(ModifiedOn.class));
    properties.addAll(query.getWritableResultList());
    if (create) {
        query = PropertyQueries.<Object>createQuery(entity.getClass()).addCriteria(new AnnotatedPropertyCriteria(CreatedOn.class));
        properties.addAll(query.getWritableResultList());
    }
    for (Property<Object> property : properties) {
        setProperty(entity, property, systime, create);
    }
}
Also used : ModifiedOn(org.apache.deltaspike.data.api.audit.ModifiedOn) Property(org.apache.deltaspike.data.impl.property.Property) LinkedList(java.util.LinkedList) AnnotatedPropertyCriteria(org.apache.deltaspike.data.impl.property.query.AnnotatedPropertyCriteria)

Example 3 with AnnotatedPropertyCriteria

use of org.apache.deltaspike.data.impl.property.query.AnnotatedPropertyCriteria in project deltaspike by apache.

the class EntityUtils method getVersionProperty.

public static Property<Serializable> getVersionProperty(Class<?> entityClass) {
    List<PropertyCriteria> criteriaList = new LinkedList<PropertyCriteria>();
    criteriaList.add(new AnnotatedPropertyCriteria(Version.class));
    String fromMappingFiles = PersistenceUnitDescriptorProvider.getInstance().versionField(entityClass);
    if (fromMappingFiles != null) {
        criteriaList.add(new NamedPropertyCriteria(fromMappingFiles));
    }
    for (PropertyCriteria criteria : criteriaList) {
        PropertyQuery<Serializable> query = PropertyQueries.<Serializable>createQuery(entityClass).addCriteria(criteria);
        Property<Serializable> result = query.getFirstResult();
        if (result != null) {
            return result;
        }
    }
    return null;
}
Also used : Serializable(java.io.Serializable) Version(javax.persistence.Version) NamedPropertyCriteria(org.apache.deltaspike.data.impl.property.query.NamedPropertyCriteria) AnnotatedPropertyCriteria(org.apache.deltaspike.data.impl.property.query.AnnotatedPropertyCriteria) NamedPropertyCriteria(org.apache.deltaspike.data.impl.property.query.NamedPropertyCriteria) PropertyCriteria(org.apache.deltaspike.data.impl.property.query.PropertyCriteria) LinkedList(java.util.LinkedList) AnnotatedPropertyCriteria(org.apache.deltaspike.data.impl.property.query.AnnotatedPropertyCriteria)

Aggregations

LinkedList (java.util.LinkedList)3 AnnotatedPropertyCriteria (org.apache.deltaspike.data.impl.property.query.AnnotatedPropertyCriteria)3 NamedPropertyCriteria (org.apache.deltaspike.data.impl.property.query.NamedPropertyCriteria)2 PropertyCriteria (org.apache.deltaspike.data.impl.property.query.PropertyCriteria)2 Serializable (java.io.Serializable)1 EmbeddedId (javax.persistence.EmbeddedId)1 Id (javax.persistence.Id)1 Version (javax.persistence.Version)1 ModifiedOn (org.apache.deltaspike.data.api.audit.ModifiedOn)1 Property (org.apache.deltaspike.data.impl.property.Property)1