Initial commit

This commit is contained in:
NewUsername
2025-10-10 12:56:49 +03:00
parent f9579e4839
commit bec7093889
42 changed files with 1574 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
package com.test.payment.service;
import lombok.RequiredArgsConstructor;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import reactor.core.publisher.Mono;
import java.time.Duration;
@Service
@RequiredArgsConstructor
public class MpesaTokenService {
private final RedisTemplate<String, String> redisTemplate;
public Mono<String> getToken() {
String cachedToken = redisTemplate.opsForValue().get("mpesa:token");
if (cachedToken != null) {
return Mono.just(cachedToken);
}
// Simulate token fetch from M-Pesa auth endpoint
String newToken = "access_token_" + System.currentTimeMillis();
redisTemplate.opsForValue().set("mpesa:token", newToken, Duration.ofMinutes(50));
return Mono.just(newToken);
}
}