org.springframework.data.repository.query.parser.AbstractQueryCreator Java Examples
The following examples show how to use
org.springframework.data.repository.query.parser.AbstractQueryCreator.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: KeyValueRepositoryFactory.java From spring-data-keyvalue with Apache License 2.0 | 6 votes |
/** * @param key * @param evaluationContextProvider * @param keyValueOperations * @param queryCreator * @since 1.1 */ public KeyValueQueryLookupStrategy(@Nullable Key key, QueryMethodEvaluationContextProvider evaluationContextProvider, KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator, Class<? extends RepositoryQuery> repositoryQueryType) { Assert.notNull(evaluationContextProvider, "EvaluationContextProvider must not be null!"); Assert.notNull(keyValueOperations, "KeyValueOperations must not be null!"); Assert.notNull(queryCreator, "Query creator type must not be null!"); Assert.notNull(repositoryQueryType, "RepositoryQueryType type must not be null!"); this.evaluationContextProvider = evaluationContextProvider; this.keyValueOperations = keyValueOperations; this.queryCreator = queryCreator; this.repositoryQueryType = repositoryQueryType; }
Example #2
Source File: HazelcastQueryLookupStrategy.java From spring-data-hazelcast with Apache License 2.0 | 6 votes |
/** * <p> * Required constructor, capturing arguments for use in {@link #resolveQuery}. * </P> * <p> * Assertions copied from {@link KayValueRepositoryFactory.KeyValueQUeryLookupStrategy} which this class essentially * duplicates. * </P> * * @param key Not used * @param evaluationContextProvider For evaluation of query expressions * @param keyValueOperations Bean to use for Key/Value operations on Hazelcast repos * @param queryCreator Likely to be {@link HazelcastQueryCreator} * @param hazelcastInstance Instance of Hazelcast */ public HazelcastQueryLookupStrategy(QueryLookupStrategy.Key key, QueryMethodEvaluationContextProvider evaluationContextProvider, KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator, HazelcastInstance hazelcastInstance) { Assert.notNull(evaluationContextProvider, "EvaluationContextProvider must not be null!"); Assert.notNull(keyValueOperations, "KeyValueOperations must not be null!"); Assert.notNull(queryCreator, "Query creator type must not be null!"); Assert.notNull(hazelcastInstance, "HazelcastInstance must not be null!"); this.evaluationContextProvider = evaluationContextProvider; this.keyValueOperations = keyValueOperations; this.queryCreator = queryCreator; this.hazelcastInstance = hazelcastInstance; }
Example #3
Source File: KeyValuePartTreeQuery.java From spring-data-keyvalue with Apache License 2.0 | 5 votes |
/** * Create a {@link KeyValueQuery} given {@link ParameterAccessor}. * * @param accessor must not be {@literal null}. * @return the {@link KeyValueQuery}. */ public KeyValueQuery<?> createQuery(ParameterAccessor accessor) { PartTree tree = new PartTree(getQueryMethod().getName(), getQueryMethod().getEntityInformation().getJavaType()); AbstractQueryCreator<? extends KeyValueQuery<?>, ?> queryCreator = queryCreatorFactory.queryCreatorFor(tree, accessor); KeyValueQuery<?> query = queryCreator.createQuery(); if (tree.isLimiting()) { query.setRows(tree.getMaxResults()); } return query; }
Example #4
Source File: KeyValueRepositoryFactoryBeanUnitTests.java From spring-data-keyvalue with Apache License 2.0 | 5 votes |
@Test // DATAKV-123 @SuppressWarnings("unchecked") public void createsRepositoryFactory() { Class<? extends AbstractQueryCreator<?, ?>> creatorType = (Class<? extends AbstractQueryCreator<?, ?>>) mock( AbstractQueryCreator.class).getClass(); Class<? extends RepositoryQuery> queryType = mock(KeyValuePartTreeQuery.class).getClass(); factoryBean.setQueryCreator(creatorType); factoryBean.setKeyValueOperations(mock(KeyValueOperations.class)); factoryBean.setQueryType(queryType); assertThat(factoryBean.createRepositoryFactory()).isNotNull(); }
Example #5
Source File: KeyValueRepositoryFactoryBeanUnitTests.java From spring-data-keyvalue with Apache License 2.0 | 5 votes |
@SuppressWarnings("unchecked") @Test // DATAKV-123 public void rejectsInstanceWithoutKeyValueOperations() { Class<? extends AbstractQueryCreator<?, ?>> creatorType = (Class<? extends AbstractQueryCreator<?, ?>>) mock( AbstractQueryCreator.class).getClass(); factoryBean.setQueryCreator(creatorType); assertThatIllegalArgumentException().isThrownBy(() -> factoryBean.afterPropertiesSet()); }
Example #6
Source File: KeyValueRepositoryFactory.java From spring-data-keyvalue with Apache License 2.0 | 5 votes |
/** * Creates a new {@link KeyValueRepositoryFactory} for the given {@link KeyValueOperations} and * {@link AbstractQueryCreator}-type. * * @param keyValueOperations must not be {@literal null}. * @param queryCreator must not be {@literal null}. * @param repositoryQueryType must not be {@literal null}. * @since 1.1 */ public KeyValueRepositoryFactory(KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator, Class<? extends RepositoryQuery> repositoryQueryType) { Assert.notNull(keyValueOperations, "KeyValueOperations must not be null!"); Assert.notNull(queryCreator, "Query creator type must not be null!"); Assert.notNull(repositoryQueryType, "RepositoryQueryType type must not be null!"); this.queryCreator = queryCreator; this.keyValueOperations = keyValueOperations; this.context = keyValueOperations.getMappingContext(); this.repositoryQueryType = repositoryQueryType; }
Example #7
Source File: KeyValuePartTreeQuery.java From spring-data-keyvalue with Apache License 2.0 | 5 votes |
@Override public AbstractQueryCreator<KeyValueQuery<?>, ?> queryCreatorFor(PartTree partTree, ParameterAccessor accessor) { Assert.state(constructor != null, () -> String.format("No constructor (PartTree, ParameterAccessor) could be found on type %s!", type)); return (AbstractQueryCreator<KeyValueQuery<?>, ?>) BeanUtils.instantiateClass(constructor, partTree, accessor); }
Example #8
Source File: MyTitleRepositoryFactoryBean.java From spring-data-hazelcast with Apache License 2.0 | 5 votes |
@Override protected MyTitleRepositoryFactory createRepositoryFactory(KeyValueOperations operations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator, Class<? extends RepositoryQuery> repositoryQueryType) { return new MyTitleRepositoryFactory(operations, queryCreator, hazelcastInstance); }
Example #9
Source File: HazelcastRepositoryFactory.java From spring-data-hazelcast with Apache License 2.0 | 5 votes |
public HazelcastRepositoryFactory(KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator, HazelcastInstance hazelcastInstance) { super(keyValueOperations, queryCreator); this.keyValueOperations = keyValueOperations; this.queryCreator = queryCreator; this.hazelcastInstance = hazelcastInstance; }
Example #10
Source File: VaultRepositoryFactoryBean.java From spring-vault with Apache License 2.0 | 5 votes |
@Override protected VaultRepositoryFactory createRepositoryFactory(KeyValueOperations operations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator, Class<? extends RepositoryQuery> repositoryQueryType) { return new VaultRepositoryFactory(operations, queryCreator, repositoryQueryType); }
Example #11
Source File: VaultRepositoryFactory.java From spring-vault with Apache License 2.0 | 5 votes |
public VaultRepositoryFactory(KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator, Class<? extends RepositoryQuery> repositoryQueryType) { super(keyValueOperations, queryCreator, repositoryQueryType); this.operations = keyValueOperations; }
Example #12
Source File: MyTitleRepositoryFactory.java From spring-data-hazelcast with Apache License 2.0 | 4 votes |
public MyTitleRepositoryFactory(KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator, HazelcastInstance hazelcastInstance) { super(keyValueOperations, queryCreator, hazelcastInstance); this.keyValueOperations = keyValueOperations; }
Example #13
Source File: KeyValuePartTreeQuery.java From spring-data-keyvalue with Apache License 2.0 | 4 votes |
ConstructorCachingQueryCreatorFactory(Class<? extends AbstractQueryCreator<?, ?>> type) { this.type = type; this.constructor = ClassUtils.getConstructorIfAvailable(type, PartTree.class, ParameterAccessor.class); }
Example #14
Source File: CachingKeyValuePartTreeQuery.java From spring-data-keyvalue with Apache License 2.0 | 4 votes |
public CachingKeyValuePartTreeQuery(QueryMethod queryMethod, QueryMethodEvaluationContextProvider evaluationContextProvider, KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator) { super(queryMethod, evaluationContextProvider, keyValueOperations, queryCreator); }
Example #15
Source File: VaultRepositoryFactory.java From spring-vault with Apache License 2.0 | 4 votes |
public VaultRepositoryFactory(KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator) { this(keyValueOperations, queryCreator, KeyValuePartTreeQuery.class); }
Example #16
Source File: KeyValuePartTreeQuery.java From spring-data-keyvalue with Apache License 2.0 | 3 votes |
/** * Creates a new {@link KeyValuePartTreeQuery} for the given {@link QueryMethod}, {@link EvaluationContextProvider}, * {@link KeyValueOperations} and query creator type. * * @param queryMethod must not be {@literal null}. * @param evaluationContextProvider must not be {@literal null}. * @param keyValueOperations must not be {@literal null}. * @param queryCreator must not be {@literal null}. */ public KeyValuePartTreeQuery(QueryMethod queryMethod, QueryMethodEvaluationContextProvider evaluationContextProvider, KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator) { this(queryMethod, evaluationContextProvider, keyValueOperations, new ConstructorCachingQueryCreatorFactory(queryCreator)); }
Example #17
Source File: VaultPartTreeQuery.java From spring-vault with Apache License 2.0 | 3 votes |
/** * Creates a new {@link VaultPartTreeQuery} for the given {@link QueryMethod}, * {@link EvaluationContextProvider}, {@link KeyValueOperations} and query creator * type. * @param queryMethod must not be {@literal null}. * @param evaluationContextProvider must not be {@literal null}. * @param keyValueOperations must not be {@literal null}. * @param queryCreator must not be {@literal null}. */ @SuppressWarnings("unchecked") public VaultPartTreeQuery(QueryMethod queryMethod, QueryMethodEvaluationContextProvider evaluationContextProvider, KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator) { super(queryMethod, evaluationContextProvider, keyValueOperations, new VaultQueryCreatorFactory((MappingContext) keyValueOperations.getMappingContext())); }
Example #18
Source File: HazelcastRepositoryFactoryBean.java From spring-data-hazelcast with Apache License 2.0 | 3 votes |
/** * <p> * Return a {@link HazelcastRepositoryFactory}. * </P> * <p> * {@code super} would return {@link KeyValueRepositoryFactory} which in turn builds {@link KeyValueRepository} * instances, and these have a private method that implement querying in a manner that does not fit with Hazelcast. * More details are in {@link HazelcastRepositoryFactory}. * </P> * * @param KeyValueOperations * @param Query Creator * @param RepositoryQueryType, not used * @return A {@link HazelcastRepositoryFactory} that creates {@link HazelcastRepository} instances. */ @Override protected KeyValueRepositoryFactory createRepositoryFactory(KeyValueOperations operations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator, Class<? extends RepositoryQuery> repositoryQueryType) { Assert.state(hazelcastInstance != null, "HazelcastInstance must be set"); return new HazelcastRepositoryFactory(operations, queryCreator, hazelcastInstance); }
Example #19
Source File: HazelcastPartTreeQuery.java From spring-data-hazelcast with Apache License 2.0 | 3 votes |
/** * <p> * Create a {@link RepositoryQuery} implementation for each query method defined in a {@link HazelcastRepository}. * </P> * * @param queryMethod Method defined in {@code HazelcastRepository} * @param evaluationContextProvider Not used * @param keyValueOperations Interface to Hazelcast * @param queryCreator Not used */ public HazelcastPartTreeQuery(QueryMethod queryMethod, QueryMethodEvaluationContextProvider evaluationContextProvider, KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator) { super(queryMethod, evaluationContextProvider, keyValueOperations, queryCreator); this.queryMethod = queryMethod; this.keyValueOperations = keyValueOperations; this.isRearrangeKnown = false; }
Example #20
Source File: KeyValueRepositoryFactoryBean.java From spring-data-keyvalue with Apache License 2.0 | 3 votes |
/** * Configures the {@link QueryCreatorType} to be used. * * @param queryCreator must not be {@literal null}. */ public void setQueryCreator(Class<? extends AbstractQueryCreator<?, ?>> queryCreator) { Assert.notNull(queryCreator, "Query creator type must not be null!"); this.queryCreator = queryCreator; }
Example #21
Source File: KeyValueRepositoryFactory.java From spring-data-keyvalue with Apache License 2.0 | 2 votes |
/** * Creates a new {@link KeyValueRepositoryFactory} for the given {@link KeyValueOperations} and * {@link AbstractQueryCreator}-type. * * @param keyValueOperations must not be {@literal null}. * @param queryCreator must not be {@literal null}. */ public KeyValueRepositoryFactory(KeyValueOperations keyValueOperations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator) { this(keyValueOperations, queryCreator, KeyValuePartTreeQuery.class); }
Example #22
Source File: KeyValueRepositoryFactoryBean.java From spring-data-keyvalue with Apache License 2.0 | 2 votes |
/** * Create the repository factory to be used to create repositories. * * @param operations will never be {@literal null}. * @param queryCreator will never be {@literal null}. * @param repositoryQueryType will never be {@literal null}. * @return must not be {@literal null}. * @since 1.1 */ protected KeyValueRepositoryFactory createRepositoryFactory(KeyValueOperations operations, Class<? extends AbstractQueryCreator<?, ?>> queryCreator, Class<? extends RepositoryQuery> repositoryQueryType) { return new KeyValueRepositoryFactory(operations, queryCreator, repositoryQueryType); }