<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright 2002-2020 the original author or authors.
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the License.
  ~ You may obtain a copy of the License at
  ~
  ~       https://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing, software
  ~ distributed under the License is distributed on an "AS IS" BASIS,
  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License.
  -->

<b:beans xmlns:b="http://www.springframework.org/schema/beans"
		 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		 xmlns="http://www.springframework.org/schema/security"
		 xsi:schemaLocation="http://www.springframework.org/schema/security https://www.springframework.org/schema/security/spring-security.xsd
		http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd">

	<b:bean name="clock" class="org.springframework.security.config.http.OAuth2ResourceServerBeanDefinitionParserTests.ClockFactoryBean">
		<b:property name="millis" value="4687181540000"/>
	</b:bean>

	<b:bean name="jwtValidator" class="org.springframework.security.oauth2.jwt.JwtTimestampValidator">
		<b:constructor-arg value="#{T(java.time.Duration).ofHours(1)}"/>
		<b:property name="clock" ref="clock"/>
	</b:bean>

	<b:bean name="rest" class="org.mockito.Mockito" factory-method="mock">
		<b:constructor-arg value="org.springframework.web.client.RestOperations"/>
	</b:bean>

	<b:bean name="decoder"
			class="org.springframework.security.config.http.OAuth2ResourceServerBeanDefinitionParserTests$JwtDecoderFactoryBean">
		<b:property name="jwtValidator" ref="jwtValidator"/>
		<b:property name="rest" ref="rest"/>
	</b:bean>
</b:beans>
