github-actions[bot]
Space deploy: orphan commit with Docker config + LFS pointers
5a44b8b
raw
history blame
1.84 kB
package com.example.p1.config;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.reactive.function.client.WebClient;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
@ConfigurationProperties(prefix = "gemini.api")
public class AiConfiguration implements WebMvcConfigurer {
private String key;
private String baseUrl;
private String model;
private int timeout = 30000;
@Bean
public WebClient geminiWebClient() {
return WebClient.builder()
.baseUrl(baseUrl)
.defaultHeader("Content-Type", "application/json")
.codecs(configurer -> configurer.defaultCodecs().maxInMemorySize(1024 * 1024))
.build();
}
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/api/**")
.allowedOrigins("http://localhost:3000", "http://localhost:8080","http://localhost:63342")
.allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")
.allowedHeaders("*")
.allowCredentials(true);
}
// Getters and setters
public String getKey() { return key; }
public void setKey(String key) { this.key = key; }
public String getBaseUrl() { return baseUrl; }
public void setBaseUrl(String baseUrl) { this.baseUrl = baseUrl; }
public String getModel() { return model; }
public void setModel(String model) { this.model = model; }
public int getTimeout() { return timeout; }
public void setTimeout(int timeout) { this.timeout = timeout; }
}