List of usage examples for org.springframework.data.projection SpelAwareProxyProjectionFactory SpelAwareProxyProjectionFactory
SpelAwareProxyProjectionFactory
From source file:org.springframework.data.web.JsonProjectingMethodInterceptorFactoryUnitTests.java
@Before public void setUp() { String json = "{\"firstname\" : \"Dave\", "// + "\"address\" : { \"zipCode\" : \"01097\", \"city\" : \"Dresden\" }," // + "\"addresses\" : [ { \"zipCode\" : \"01097\", \"city\" : \"Dresden\" }]" + " }"; SpelAwareProxyProjectionFactory projectionFactory = new SpelAwareProxyProjectionFactory(); MappingProvider mappingProvider = new JacksonMappingProvider(new ObjectMapper()); projectionFactory.registerMethodInvokerFactory(new JsonProjectingMethodInterceptorFactory(mappingProvider)); this.projectionFactory = projectionFactory; this.customer = projectionFactory.createProjection(Customer.class, new ByteArrayInputStream(json.getBytes())); }
From source file:org.springframework.data.web.ProjectingJackson2HttpMessageConverter.java
/** * Creates a new {@link SpelAwareProxyProjectionFactory} with the {@link JsonProjectingMethodInterceptorFactory} * registered for the given {@link ObjectMapper}. * /*from w ww . j av a 2 s . com*/ * @param mapper must not be {@literal null}. * @return */ private static SpelAwareProxyProjectionFactory initProjectionFactory(ObjectMapper mapper) { Assert.notNull(mapper, "ObjectMapper must not be null!"); SpelAwareProxyProjectionFactory projectionFactory = new SpelAwareProxyProjectionFactory(); projectionFactory.registerMethodInvokerFactory( new JsonProjectingMethodInterceptorFactory(new JacksonMappingProvider(mapper))); return projectionFactory; }
From source file:org.springframework.data.rest.webmvc.json.PersistentEntitySerializationTests.java
@Before public void setUp() { RequestContextHolder.setRequestAttributes(new ServletWebRequest(new MockHttpServletRequest())); this.linkDiscoverer = new HalLinkDiscoverer(); this.projectionFactory = new SpelAwareProxyProjectionFactory(); }
From source file:com._4dconcept.springframework.data.marklogic.repository.query.PartTreeMarklogicQueryTest.java
private PartTreeMarklogicQuery createQueryForMethod(String methodName, Class<?>... paramTypes) { try {/* w w w .j a v a 2 s .com*/ Method method = Repo.class.getMethod(methodName, paramTypes); ProjectionFactory factory = new SpelAwareProxyProjectionFactory(); MarklogicQueryMethod queryMethod = new MarklogicQueryMethod(method, new DefaultRepositoryMetadata(Repo.class), factory); return new PartTreeMarklogicQuery(queryMethod, marklogicOperationsMock); } catch (NoSuchMethodException | SecurityException e) { throw new IllegalArgumentException(e.getMessage(), e); } }
From source file:org.springframework.data.rest.webmvc.config.RepositoryRestMvcConfiguration.java
@Bean public ExcerptProjector excerptProjector() { SpelAwareProxyProjectionFactory projectionFactory = new SpelAwareProxyProjectionFactory(); projectionFactory.setBeanFactory(applicationContext); projectionFactory.setResourceLoader(applicationContext); return new DefaultExcerptProjector(projectionFactory, resourceMappings()); }
From source file:org.springframework.data.rest.webmvc.config.RepositoryRestMvcConfiguration.java
protected List<HandlerMethodArgumentResolver> defaultMethodArgumentResolvers() { SpelAwareProxyProjectionFactory projectionFactory = new SpelAwareProxyProjectionFactory(); projectionFactory.setBeanFactory(applicationContext); projectionFactory.setResourceLoader(applicationContext); PersistentEntityResourceAssemblerArgumentResolver peraResolver = new PersistentEntityResourceAssemblerArgumentResolver( persistentEntities(), selfLinkProvider(), config().getProjectionConfiguration(), projectionFactory, associationLinks());/* w w w . j av a2 s .c o m*/ HateoasPageableHandlerMethodArgumentResolver pageableResolver = pageableResolver(); HandlerMethodArgumentResolver defaultedPageableResolver = new DefaultedPageableHandlerMethodArgumentResolver( pageableResolver); return Arrays.asList(defaultedPageableResolver, pageableResolver, sortResolver(), serverHttpRequestMethodArgumentResolver(), repoRequestArgumentResolver(), persistentEntityArgumentResolver(), resourceMetadataHandlerMethodArgumentResolver(), HttpMethodHandlerMethodArgumentResolver.INSTANCE, peraResolver, backendIdHandlerMethodArgumentResolver(), eTagArgumentResolver()); }