Removed generated but unnecessary comments
This commit is contained in:
@@ -13,8 +13,8 @@ import java.util.Map;
|
|||||||
|
|
||||||
import org.eclipse.hawkbit.aspects.ExceptionMappingAspectHandler;
|
import org.eclipse.hawkbit.aspects.ExceptionMappingAspectHandler;
|
||||||
import org.eclipse.hawkbit.repository.SystemManagement;
|
import org.eclipse.hawkbit.repository.SystemManagement;
|
||||||
import org.eclipse.hawkbit.repository.model.helper.AfterTransactionCommitExecutorHolder;
|
|
||||||
import org.eclipse.hawkbit.repository.TenantConfigurationManagement;
|
import org.eclipse.hawkbit.repository.TenantConfigurationManagement;
|
||||||
|
import org.eclipse.hawkbit.repository.model.helper.AfterTransactionCommitExecutorHolder;
|
||||||
import org.eclipse.hawkbit.repository.model.helper.CacheManagerHolder;
|
import org.eclipse.hawkbit.repository.model.helper.CacheManagerHolder;
|
||||||
import org.eclipse.hawkbit.repository.model.helper.SecurityTokenGeneratorHolder;
|
import org.eclipse.hawkbit.repository.model.helper.SecurityTokenGeneratorHolder;
|
||||||
import org.eclipse.hawkbit.repository.model.helper.SystemManagementHolder;
|
import org.eclipse.hawkbit.repository.model.helper.SystemManagementHolder;
|
||||||
@@ -127,23 +127,11 @@ public class RepositoryApplicationConfiguration extends JpaBaseConfiguration {
|
|||||||
return new ExceptionMappingAspectHandler();
|
return new ExceptionMappingAspectHandler();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration#
|
|
||||||
* createJpaVendorAdapter()
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
protected AbstractJpaVendorAdapter createJpaVendorAdapter() {
|
protected AbstractJpaVendorAdapter createJpaVendorAdapter() {
|
||||||
return new EclipseLinkJpaVendorAdapter();
|
return new EclipseLinkJpaVendorAdapter();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration#
|
|
||||||
* getVendorProperties()
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
protected Map<String, Object> getVendorProperties() {
|
protected Map<String, Object> getVendorProperties() {
|
||||||
|
|
||||||
|
|||||||
@@ -167,11 +167,6 @@ public class ExceptionMappingAspectHandler implements Ordered {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see org.springframework.core.Ordered#getOrder()
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public int getOrder() {
|
public int getOrder() {
|
||||||
return 1;
|
return 1;
|
||||||
|
|||||||
@@ -18,9 +18,9 @@ import org.eclipse.hawkbit.eventbus.event.RolloutGroupPropertyChangeEvent;
|
|||||||
import org.eclipse.hawkbit.eventbus.event.RolloutPropertyChangeEvent;
|
import org.eclipse.hawkbit.eventbus.event.RolloutPropertyChangeEvent;
|
||||||
import org.eclipse.hawkbit.executor.AfterTransactionCommitExecutor;
|
import org.eclipse.hawkbit.executor.AfterTransactionCommitExecutor;
|
||||||
import org.eclipse.hawkbit.repository.model.Action;
|
import org.eclipse.hawkbit.repository.model.Action;
|
||||||
import org.eclipse.hawkbit.repository.model.TenantAwareBaseEntity;
|
|
||||||
import org.eclipse.hawkbit.repository.model.Rollout;
|
import org.eclipse.hawkbit.repository.model.Rollout;
|
||||||
import org.eclipse.hawkbit.repository.model.RolloutGroup;
|
import org.eclipse.hawkbit.repository.model.RolloutGroup;
|
||||||
|
import org.eclipse.hawkbit.repository.model.TenantAwareBaseEntity;
|
||||||
import org.eclipse.hawkbit.repository.model.helper.AfterTransactionCommitExecutorHolder;
|
import org.eclipse.hawkbit.repository.model.helper.AfterTransactionCommitExecutorHolder;
|
||||||
import org.eclipse.hawkbit.repository.model.helper.EventBusHolder;
|
import org.eclipse.hawkbit.repository.model.helper.EventBusHolder;
|
||||||
import org.eclipse.persistence.descriptors.DescriptorEvent;
|
import org.eclipse.persistence.descriptors.DescriptorEvent;
|
||||||
@@ -36,13 +36,7 @@ import com.google.common.eventbus.EventBus;
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public class EntityPropertyChangeListener extends DescriptorEventAdapter {
|
public class EntityPropertyChangeListener extends DescriptorEventAdapter {
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.eclipse.persistence.descriptors.DescriptorEventAdapter#postInsert
|
|
||||||
* (org.eclipse.persistence.descriptors.DescriptorEvent)
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public void postInsert(final DescriptorEvent event) {
|
public void postInsert(final DescriptorEvent event) {
|
||||||
if (event.getObject().getClass().equals(Action.class)) {
|
if (event.getObject().getClass().equals(Action.class)) {
|
||||||
@@ -56,30 +50,18 @@ public class EntityPropertyChangeListener extends DescriptorEventAdapter {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.eclipse.persistence.descriptors.DescriptorEventAdapter#postUpdate
|
|
||||||
* (org.eclipse.persistence.descriptors.DescriptorEvent)
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public void postUpdate(final DescriptorEvent event) {
|
public void postUpdate(final DescriptorEvent event) {
|
||||||
if (event.getObject().getClass().equals(Action.class)) {
|
if (event.getObject().getClass().equals(Action.class)) {
|
||||||
getAfterTransactionCommmitExecutor().afterCommit(
|
getAfterTransactionCommmitExecutor().afterCommit(() -> getEventBus().post(
|
||||||
() -> getEventBus()
|
new ActionPropertyChangeEvent((Action) event.getObject(), getChangeSet(Action.class, event))));
|
||||||
.post(new ActionPropertyChangeEvent((Action) event.getObject(), getChangeSet(Action.class,
|
|
||||||
event))));
|
|
||||||
} else if (event.getObject().getClass().equals(Rollout.class)) {
|
} else if (event.getObject().getClass().equals(Rollout.class)) {
|
||||||
getAfterTransactionCommmitExecutor().afterCommit(
|
getAfterTransactionCommmitExecutor().afterCommit(() -> getEventBus().post(
|
||||||
() -> getEventBus().post(
|
new RolloutPropertyChangeEvent((Rollout) event.getObject(), getChangeSet(Rollout.class, event))));
|
||||||
new RolloutPropertyChangeEvent((Rollout) event.getObject(), getChangeSet(Rollout.class,
|
|
||||||
event))));
|
|
||||||
} else if (event.getObject().getClass().equals(RolloutGroup.class)) {
|
} else if (event.getObject().getClass().equals(RolloutGroup.class)) {
|
||||||
getAfterTransactionCommmitExecutor().afterCommit(
|
getAfterTransactionCommmitExecutor().afterCommit(
|
||||||
() -> getEventBus().post(
|
() -> getEventBus().post(new RolloutGroupPropertyChangeEvent((RolloutGroup) event.getObject(),
|
||||||
new RolloutGroupPropertyChangeEvent((RolloutGroup) event.getObject(), getChangeSet(
|
getChangeSet(RolloutGroup.class, event))));
|
||||||
RolloutGroup.class, event))));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -87,14 +69,11 @@ public class EntityPropertyChangeListener extends DescriptorEventAdapter {
|
|||||||
final Class<T> clazz, final DescriptorEvent event) {
|
final Class<T> clazz, final DescriptorEvent event) {
|
||||||
final T rolloutGroup = clazz.cast(event.getObject());
|
final T rolloutGroup = clazz.cast(event.getObject());
|
||||||
final ObjectChangeSet changeSet = ((UpdateObjectQuery) event.getQuery()).getObjectChangeSet();
|
final ObjectChangeSet changeSet = ((UpdateObjectQuery) event.getQuery()).getObjectChangeSet();
|
||||||
return changeSet
|
return changeSet.getChanges().stream().filter(record -> record instanceof DirectToFieldChangeRecord)
|
||||||
.getChanges()
|
|
||||||
.stream()
|
|
||||||
.filter(record -> record instanceof DirectToFieldChangeRecord)
|
|
||||||
.map(record -> (DirectToFieldChangeRecord) record)
|
.map(record -> (DirectToFieldChangeRecord) record)
|
||||||
.collect(
|
.collect(Collectors.toMap(record -> record.getAttribute(),
|
||||||
Collectors.toMap(record -> record.getAttribute(), record -> new AbstractPropertyChangeEvent<T>(
|
record -> new AbstractPropertyChangeEvent<T>(rolloutGroup, null).new Values(
|
||||||
rolloutGroup, null).new Values(record.getOldValue(), record.getNewValue())));
|
record.getOldValue(), record.getNewValue())));
|
||||||
}
|
}
|
||||||
|
|
||||||
private AfterTransactionCommitExecutor getAfterTransactionCommmitExecutor() {
|
private AfterTransactionCommitExecutor getAfterTransactionCommmitExecutor() {
|
||||||
|
|||||||
@@ -11,8 +11,9 @@ package org.eclipse.hawkbit.eventbus.event;
|
|||||||
import org.eclipse.hawkbit.repository.model.TenantAwareBaseEntity;
|
import org.eclipse.hawkbit.repository.model.TenantAwareBaseEntity;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* An abstract definition class for {@link EntityEvent} for {@link TenantAwareBaseEntity}s,
|
* An abstract definition class for {@link EntityEvent} for
|
||||||
* which holds the {@link TenantAwareBaseEntity}.
|
* {@link TenantAwareBaseEntity}s, which holds the {@link TenantAwareBaseEntity}
|
||||||
|
* .
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
@@ -37,33 +38,16 @@ public abstract class AbstractBaseEntityEvent<E extends TenantAwareBaseEntity> e
|
|||||||
this.entity = baseEntity;
|
this.entity = baseEntity;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see org.eclipse.hawkbit.server.eventbus.event.EntityEvent#getEntity()
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public E getEntity() {
|
public E getEntity() {
|
||||||
return entity;
|
return entity;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.eclipse.hawkbit.server.eventbus.event.EntityEvent#getEntity(java.lang
|
|
||||||
* .Class)
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public <T> T getEntity(final Class<T> entityClass) {
|
public <T> T getEntity(final Class<T> entityClass) {
|
||||||
return entityClass.cast(entity);
|
return entityClass.cast(entity);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see org.eclipse.hawkbit.server.eventbus.event.EntityEvent#getTenant()
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public String getTenant() {
|
public String getTenant() {
|
||||||
return entity.getTenant();
|
return entity.getTenant();
|
||||||
|
|||||||
@@ -29,9 +29,6 @@ import org.springframework.stereotype.Repository;
|
|||||||
* Workaround as spring data does not provide a {@link Slice} based
|
* Workaround as spring data does not provide a {@link Slice} based
|
||||||
* {@link JpaRepository#findAll()}.
|
* {@link JpaRepository#findAll()}.
|
||||||
*
|
*
|
||||||
*
|
|
||||||
*
|
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
@Repository
|
@Repository
|
||||||
public class NoCountPagingRepository {
|
public class NoCountPagingRepository {
|
||||||
@@ -104,15 +101,6 @@ public class NoCountPagingRepository {
|
|||||||
super(domainClass, em);
|
super(domainClass, em);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.springframework.data.jpa.repository.support.SimpleJpaRepository#
|
|
||||||
* readPage(javax.persistence .TypedQuery,
|
|
||||||
* org.springframework.data.domain.Pageable,
|
|
||||||
* org.springframework.data.jpa.domain.Specification)
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
protected Page<T> readPage(final TypedQuery<T> query, final Pageable pageable, final Specification<T> spec) {
|
protected Page<T> readPage(final TypedQuery<T> query, final Pageable pageable, final Specification<T> spec) {
|
||||||
query.setFirstResult(pageable.getOffset());
|
query.setFirstResult(pageable.getOffset());
|
||||||
|
|||||||
@@ -458,11 +458,6 @@ public class ReportManagement {
|
|||||||
return name;
|
return name;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see java.lang.Object#hashCode()
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
final int prime = 31;
|
final int prime = 31;
|
||||||
@@ -471,11 +466,6 @@ public class ReportManagement {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see java.lang.Object#equals(java.lang.Object)
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(final Object obj) { // NOSONAR - as this is
|
public boolean equals(final Object obj) { // NOSONAR - as this is
|
||||||
// generated
|
// generated
|
||||||
@@ -499,11 +489,6 @@ public class ReportManagement {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see java.lang.Object#toString()
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return "DSName [name=" + name + "]";
|
return "DSName [name=" + name + "]";
|
||||||
@@ -523,9 +508,6 @@ public class ReportManagement {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Return DateTypes.
|
* Return DateTypes.
|
||||||
*
|
|
||||||
*
|
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
public static final class DateTypes implements Serializable {
|
public static final class DateTypes implements Serializable {
|
||||||
/**
|
/**
|
||||||
@@ -585,12 +567,6 @@ public class ReportManagement {
|
|||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
private static final String DATE_PATTERN = "yyyy-MM";
|
private static final String DATE_PATTERN = "yyyy-MM";
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see org.eclipse.hawkbit.server.repository.ReportManagement.DateType#
|
|
||||||
* format(java. lang.String)
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public LocalDate format(final String s) {
|
public LocalDate format(final String s) {
|
||||||
final DateTimeFormatter formatter = DateTimeFormatter.ofPattern(DATE_PATTERN);
|
final DateTimeFormatter formatter = DateTimeFormatter.ofPattern(DATE_PATTERN);
|
||||||
@@ -598,23 +574,11 @@ public class ReportManagement {
|
|||||||
return ym.atDay(1);
|
return ym.atDay(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see org.eclipse.hawkbit.server.repository.ReportManagement.DateType#
|
|
||||||
* h2Format()
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public String h2Format() {
|
public String h2Format() {
|
||||||
return DATE_PATTERN;
|
return DATE_PATTERN;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see org.eclipse.hawkbit.server.repository.ReportManagement.DateType#
|
|
||||||
* mySqlFormat( )
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public String mySqlFormat() {
|
public String mySqlFormat() {
|
||||||
return "%Y-%m";
|
return "%Y-%m";
|
||||||
|
|||||||
@@ -339,18 +339,8 @@ public class SystemManagement {
|
|||||||
* default types we need to use the tenant the current tenant which is
|
* default types we need to use the tenant the current tenant which is
|
||||||
* currently created and not the one currently in the {@link TenantAware}.
|
* currently created and not the one currently in the {@link TenantAware}.
|
||||||
*
|
*
|
||||||
*
|
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
private class CurrentTenantKeyGenerator implements KeyGenerator {
|
private class CurrentTenantKeyGenerator implements KeyGenerator {
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.springframework.cache.interceptor.KeyGenerator#generate(java.lang
|
|
||||||
* .Object, java.lang.reflect.Method, java.lang.Object[])
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public Object generate(final Object target, final Method method, final Object... params) {
|
public Object generate(final Object target, final Method method, final Object... params) {
|
||||||
final String initialTenantCreation = createInitialTenant.get();
|
final String initialTenantCreation = createInitialTenant.get();
|
||||||
|
|||||||
@@ -16,9 +16,6 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
/**
|
/**
|
||||||
* The spring-data repository for the entity {@link TenantConfiguration}.
|
* The spring-data repository for the entity {@link TenantConfiguration}.
|
||||||
*
|
*
|
||||||
*
|
|
||||||
*
|
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
@Transactional(readOnly = true)
|
@Transactional(readOnly = true)
|
||||||
public interface TenantConfigurationRepository extends BaseEntityRepository<TenantConfiguration, Long> {
|
public interface TenantConfigurationRepository extends BaseEntityRepository<TenantConfiguration, Long> {
|
||||||
@@ -32,11 +29,6 @@ public interface TenantConfigurationRepository extends BaseEntityRepository<Tena
|
|||||||
*/
|
*/
|
||||||
TenantConfiguration findByKey(String configurationKey);
|
TenantConfiguration findByKey(String configurationKey);
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see org.springframework.data.repository.CrudRepository#findAll()
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
List<TenantConfiguration> findAll();
|
List<TenantConfiguration> findAll();
|
||||||
|
|
||||||
|
|||||||
@@ -18,9 +18,6 @@ import org.springframework.stereotype.Service;
|
|||||||
/**
|
/**
|
||||||
* {@link KeyGenerator} for tenant related caches.
|
* {@link KeyGenerator} for tenant related caches.
|
||||||
*
|
*
|
||||||
*
|
|
||||||
*
|
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
public class TenantKeyGenerator implements KeyGenerator {
|
public class TenantKeyGenerator implements KeyGenerator {
|
||||||
@@ -28,13 +25,6 @@ public class TenantKeyGenerator implements KeyGenerator {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private TenantAware tenantAware;
|
private TenantAware tenantAware;
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.springframework.cache.interceptor.KeyGenerator#generate(java.lang.
|
|
||||||
* Object, java.lang.reflect.Method, java.lang.Object[])
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public Object generate(final Object target, final Method method, final Object... params) {
|
public Object generate(final Object target, final Method method, final Object... params) {
|
||||||
return tenantAware.getCurrentTenant().toUpperCase();
|
return tenantAware.getCurrentTenant().toUpperCase();
|
||||||
|
|||||||
@@ -246,11 +246,6 @@ public class Target extends NamedEntity implements Persistable<Long> {
|
|||||||
this.securityToken = securityToken;
|
this.securityToken = securityToken;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see java.lang.Object#toString()
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return "Target [controllerId=" + controllerId + ", getId()=" + getId() + "]";
|
return "Target [controllerId=" + controllerId + ", getId()=" + getId() + "]";
|
||||||
|
|||||||
@@ -59,11 +59,6 @@ public class TargetIdName implements Serializable {
|
|||||||
return targetId;
|
return targetId;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see java.lang.Object#hashCode()
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
final int prime = 31;
|
final int prime = 31;
|
||||||
|
|||||||
@@ -139,14 +139,6 @@ public final class RSQLUtility {
|
|||||||
this.enumType = enumType;
|
this.enumType = enumType;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* (non-Javadoc)
|
|
||||||
*
|
|
||||||
* @see
|
|
||||||
* org.springframework.data.jpa.domain.Specification#toPredicate(javax.
|
|
||||||
* persistence.criteria .Root, javax.persistence.criteria.CriteriaQuery,
|
|
||||||
* javax.persistence.criteria.CriteriaBuilder)
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public Predicate toPredicate(final Root<T> root, final CriteriaQuery<?> query, final CriteriaBuilder cb) {
|
public Predicate toPredicate(final Root<T> root, final CriteriaQuery<?> query, final CriteriaBuilder cb) {
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user