Package-level declarations

Types

Link copied to clipboard

Staff = can use the lab Admin = can admin the lab Runner = can submit measurement works with an api key

Link copied to clipboard
data class AppConfiguration(val debugMode: Boolean = false, val backends: List<LabSpecs> = listOf( LabSpecs( id = "default", server = "http://localhost:8080", taskServer = "http://localhost:8887", guestAccess = true, ), ), val serverAddress: String? = null, val serverConfiguration: ServerConfiguration = ServerConfiguration( callback = "https://ftdev.utu.fi/powergoblin/oidc/callback", staticContentPaths = listOf("web2"), staticContentPackage = "/fi/utu/tech/powergoblin/tasks/web" ), val taskServerConfiguration: ServerConfiguration = ServerConfiguration( port = 8887, callback = "", staticContentPaths = listOf("web3"), ))
Link copied to clipboard
Link copied to clipboard
data class LabEntry(val id: String, val name: String, val description: String? = null, val meters: List<String> = listOf(), val reservations: List<LabReservation> = listOf(), val users: List<UserPermission> = listOf(), val features: List<String> = listOf(), val summary: InstanceSummary? = null, val taskSummary: TaskBackendSummary? = null, val guestAccess: Boolean = false, val staffAccess: Boolean = false, val online: Boolean? = null, val taskOnline: Boolean? = null)

Represents a lab instance

Link copied to clipboard
data class LabReservation(val user: String, val units: List<String> = listOf(), val startTime: String, val stopTime: String, val uuid: String = UUID.randomUUID().toString()) : Comparable<LabReservation>
Link copied to clipboard
data class LabSpecs(val id: String, val server: String, val taskServer: String? = null, val guestAccess: Boolean = false)

Specification for a lab

Link copied to clipboard
data class LogEntry(val name: String, val entries: Int)

Logger log entry

Link copied to clipboard
data class SubmissionEntry(val id: String, val size: Int, val checksum: String)
Link copied to clipboard
data class TaskBackendSummary(val address: String, val specs: InstanceSpecs)

Represents a lab instance

Link copied to clipboard
data class UserPermission(val user: String, val role: AccessRole, val startTime: String, val stopTime: String? = null, val secretHash: String? = null, val enabled: Boolean = true)

Keep the user permission separate from whole system permissions to better protect against security issues.