package com.pingcap.community.blogserver.config;

import com.pingcap.community.blogserver.util.ContextUtils;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.domain.AuditorAware;
import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
import org.springframework.data.web.config.PageableHandlerMethodArgumentResolverCustomizer;

@Configuration
@EnableJpaAuditing
public class DataAccessConfiguration {

  @Bean
  public AuditorAware<Long> auditorProvider() {
    return ContextUtils::getCurrentUserId;
  }

  @Bean
  PageableHandlerMethodArgumentResolverCustomizer pageableResolverCustomizer() {
    return pageableResolver -> pageableResolver.setOneIndexedParameters(true);
  }

}
