spring:
  application:
    name: vpd-permission-backoffice
  datasource:
    url: ${BACKOFFICE_DB_URL:jdbc:oracle:thin:@localhost:1521/FREEPDB1}
    username: ${BACKOFFICE_DB_USERNAME:backoffice}
    password: ${BACKOFFICE_DB_PASSWORD:backoffice}
    driver-class-name: oracle.jdbc.OracleDriver
    hikari:
      pool-name: vpd-backoffice-pool
      maximum-pool-size: ${BACKOFFICE_DB_POOL_MAX:10}
      minimum-idle: ${BACKOFFICE_DB_POOL_MIN:2}
      connection-timeout: 10000
      idle-timeout: ${BACKOFFICE_DB_POOL_IDLE_TIMEOUT_MS:300000}
      keepalive-time: ${BACKOFFICE_DB_POOL_KEEPALIVE_MS:120000}
  thymeleaf:
    cache: false

mybatis:
  mapper-locations: classpath:/mapper/*.xml
  configuration:
    map-underscore-to-camel-case: true

server:
  address: ${BACKOFFICE_BIND_ADDRESS:0.0.0.0}
  port: ${BACKOFFICE_PORT:8080}
  forward-headers-strategy: ${BACKOFFICE_FORWARD_HEADERS_STRATEGY:none}
  servlet:
    session:
      cookie:
        secure: ${BACKOFFICE_SESSION_COOKIE_SECURE:false}
        http-only: true
        same-site: lax

backoffice:
  security:
    admin-user: ${BACKOFFICE_ADMIN_USER:admin}
    admin-password: ${BACKOFFICE_ADMIN_PASSWORD:admin}
    # A stable encoded value keeps signed remember-me cookies valid across restarts.
    admin-password-hash: ${BACKOFFICE_ADMIN_PASSWORD_HASH:}
    guest-enabled: ${BACKOFFICE_GUEST_ENABLED:false}
    guest-user: ${BACKOFFICE_GUEST_USER:guest}
    guest-password: ${BACKOFFICE_GUEST_PASSWORD:}
    guest-password-hash: ${BACKOFFICE_GUEST_PASSWORD_HASH:}
    require-https: ${BACKOFFICE_REQUIRE_HTTPS:false}
    remember-me-enabled: ${BACKOFFICE_REMEMBER_ME_ENABLED:false}
    remember-me-key: ${BACKOFFICE_REMEMBER_ME_KEY:}
    remember-me-days: ${BACKOFFICE_REMEMBER_ME_DAYS:14}
  token:
    max-days: ${BACKOFFICE_TOKEN_MAX_DAYS:365}
  ords:
    base-url: ${BACKOFFICE_ORDS_BASE_URL:https://g329127dfd380ad-kbaipoc.adb.ap-osaka-1.oraclecloudapps.com/ords}
    timeout: ${BACKOFFICE_ORDS_TIMEOUT_SECONDS:10}s
    agent-timeout: ${BACKOFFICE_ORDS_AGENT_TIMEOUT_SECONDS:180}s
    metadata-db:
      url: ${BACKOFFICE_ORDS_DB_URL:}
      username: ${BACKOFFICE_ORDS_DB_USERNAME:}
      password: ${BACKOFFICE_ORDS_DB_PASSWORD:}
  ai:
    enabled: ${BACKOFFICE_AI_ENABLED:false}
    provider: ${BACKOFFICE_AI_PROVIDER:openai}
    base-url: ${BACKOFFICE_AI_BASE_URL:${POC3_LLM_GPT55_OCI_ENDPOINT:}}
    model: ${BACKOFFICE_AI_MODEL:${POC3_LLM_GPT55_OCI_MODEL_ID:}}
    embedding-model: ${BACKOFFICE_AI_EMBEDDING_MODEL:}
    api-key: ${BACKOFFICE_AI_API_KEY:}
    timeout: ${BACKOFFICE_AI_TIMEOUT_SECONDS:30}s
    oci-config-file: ${BACKOFFICE_AI_OCI_CONFIG_FILE:${OCI_CONFIG_FILE:}}
    oci-profile: ${BACKOFFICE_AI_OCI_PROFILE:${OCI_PROFILE:DEFAULT}}
    oci-region: ${BACKOFFICE_AI_OCI_REGION:${POC3_LLM_GPT55_OCI_REGION:}}
    oci-compartment-id: ${BACKOFFICE_AI_OCI_COMPARTMENT_ID:${OCI_GENAI_COMPARTMENT_ID:}}
