spring.application.name=SEB Server
spring.profiles.active=dev
sebserver.version=0.5.4 beta

##########################################################
### Global Server Settings

# Server address (set for docker internal)
server.address=0.0.0.0
# Server http port
server.port=8080
# The servlet context path
server.servlet.context-path=/

# Tomcat
server.tomcat.max-threads=1000
server.tomcat.accept-count=300


### encoding
file.encoding=UTF-8 
spring.mandatory-file-encoding=UTF-8
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true

### servlet session handling
server.servlet.session.cookie.http-only=true
server.servlet.session.tracking-modes=cookie

### Logging
# Default logging level in the form  "logging.level" + namespace=LEVEL 
logging.level.ch=WARN
# Log file name and location
logging.file=/sebserver/log/sebserver.log

### spring actuator configuration
management.endpoints.web.base-path=/mprofile
management.endpoints.web.exposure.include=metrics,logfile,loggers,heapdump

##########################################################
### Overall Security Settings

security.require-ssl=false
#server.ssl.key-store-type=PKCS12
#server.ssl.key-store=/certs/seb-server-keystore.pkcs12
#server.ssl.key-store-password=${sebserver.certs.password}
#server.ssl.key-password=${sebserver.certs.password}
#server.ssl.trust-store=/certs/seb-server-truststore.pkcs12
#server.ssl.trust-store-password=${sebserver.certs.password}
#server.ssl.enabled-protocols=TLSv1,TLSv1.1,TLSv1.2

# If webservice or gui runs on ssl and this flag is true, an integrated redirect from http to https is activated
# Disable this if a redirect is done by a reverse proxy for example
sebserver.ssl.redirect.enabled=false
sebserver.ssl.redirect.html.port=8080

##########################################################
### SEB Server Webservice configuration

sebserver.test.property=This is the default/root configuration

### webservice initialization
sebserver.init.adminaccount.gen-on-init=true
sebserver.init.organisation.name=ETHZ
sebserver.init.adminaccount.username=super-admin

### webservice data source configuration
spring.datasource.username=root
spring.datasource.initialize=true
spring.datasource.initialization-mode=always
spring.datasource.url=jdbc:mariadb://${datastore.mariadb.server.address}:${datastore.mariadb.server.port}/SEBServer?useSSL=false&createDatabaseIfNotExist=true
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
spring.datasource.platform=dev
spring.datasource.hikari.initializationFailTimeout=3000
spring.datasource.hikari.connectionTimeout=30000
spring.datasource.hikari.idleTimeout=600000
spring.datasource.hikari.maxLifetime=1800000

### webservice security
spring.datasource.password=${sebserver.mariadb.password}
sebserver.webservice.api.admin.clientSecret=${sebserver.password}
sebserver.webservice.internalSecret=${sebserver.password}

### webservice networking
sebserver.webservice.distributed=false
sebserver.webservice.http.scheme=http
sebserver.webservice.http.external.servername=
sebserver.webservice.http.external.port=
sebserver.webservice.http.redirect.gui=/gui

### webservice API
sebserver.webservice.api.admin.clientId=guiClient
sebserver.webservice.api.admin.endpoint=/admin-api/v1
sebserver.webservice.api.admin.accessTokenValiditySeconds=3600
sebserver.webservice.api.admin.refreshTokenValiditySeconds=25200
sebserver.webservice.api.exam.config.init.permittedProcesses=config/initialPermittedProcesses.xml
sebserver.webservice.api.exam.config.init.prohibitedProcesses=config/initialProhibitedProcesses.xml
sebserver.webservice.api.exam.endpoint=/exam-api
sebserver.webservice.api.exam.endpoint.discovery=${sebserver.webservice.api.exam.endpoint}/discovery
sebserver.webservice.api.exam.endpoint.v1=${sebserver.webservice.api.exam.endpoint}/v1
sebserver.webservice.api.exam.accessTokenValiditySeconds=3600
sebserver.webservice.api.exam.event-handling-strategy=SINGLE_EVENT_STORE_STRATEGY
sebserver.webservice.api.exam.enable-indicator-cache=true
sebserver.webservice.api.pagination.maxPageSize=500
# comma separated list of known possible OpenEdX API access token request endpoints
sebserver.webservice.lms.openedx.api.token.request.paths=/oauth2/access_token
sebserver.webservice.lms.address.alias=

##########################################################
### SEB Server GUI configuration

# theme
sebserver.gui.theme=css/sebserver.css
sebserver.gui.list.page.size=20
sebserver.gui.defaultLogo=classpath:/static/images/sebserver-logo.png

# User Account
sebserver.gui.self-registering=true
sebserver.gui.multilingual=false
sebserver.gui.supported.languages=en
sebserver.gui.date.displayformat=de

# GUI API
sebserver.gui.entrypoint=/gui
sebserver.gui.webservice.protocol=http
sebserver.gui.webservice.address=localhost
sebserver.gui.webservice.port=8080
sebserver.gui.webservice.apipath=${sebserver.webservice.api.admin.endpoint}
# defines the polling interval that is used to poll the webservice for client connection data on a monitored exam page
sebserver.gui.webservice.poll-interval=1000
sebserver.gui.webservice.mock-lms-enabled=true
sebserver.gui.seb.client.config.download.filename=SEBClientSettings.seb
sebserver.gui.seb.exam.config.download.filename=SEBExamSettings.seb

