Skip to content

Commit

Permalink
Clean up Bygning data class and remove unused code (#44)
Browse files Browse the repository at this point in the history
* remove currently unused bygningService and use new Bygning model where applicable instead of old with added egenregistreringer

* remove bygningdto and repo as this is unused and probably wrong
  • Loading branch information
anderssonw authored Aug 6, 2024
1 parent 7c59327 commit c82b512
Show file tree
Hide file tree
Showing 14 changed files with 38 additions and 237 deletions.
11 changes: 3 additions & 8 deletions src/main/kotlin/no/kartverket/matrikkel/bygning/Application.kt
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,9 @@ import no.kartverket.matrikkel.bygning.db.DatabaseConfig
import no.kartverket.matrikkel.bygning.db.createHikariDataSource
import no.kartverket.matrikkel.bygning.db.runFlywayMigrations
import no.kartverket.matrikkel.bygning.matrikkel.createBygningClient
import no.kartverket.matrikkel.bygning.repositories.BygningRepository
import no.kartverket.matrikkel.bygning.repositories.HealthRepository
import no.kartverket.matrikkel.bygning.routes.installInternalRouting
import no.kartverket.matrikkel.bygning.routes.v1.installBaseRouting
import no.kartverket.matrikkel.bygning.services.BygningService
import no.kartverket.matrikkel.bygning.services.EgenregistreringsService
import no.kartverket.matrikkel.bygning.services.HealthService

Expand Down Expand Up @@ -91,21 +89,18 @@ fun Application.mainModule() {

val dataSource = createDataSource(loadConfig(environment))

val bygningRepository = BygningRepository(dataSource)

val bygningService = BygningService(bygningRepository)
val egenregistreringsService = EgenregistreringsService(bygningService)

val bygningClient = createBygningClient(
config.propertyOrNull("matrikkel.baseUrl")?.getString() ?: "",
config.propertyOrNull("matrikkel.username")?.getString() ?: "",
config.propertyOrNull("matrikkel.password")?.getString() ?: "",
config.property("ktor.development").getString().toBoolean(),
)

// Kanskje litt snålt at EgenregService får bygningClient, men vi sender den også med til BaseRouting
val egenregistreringsService = EgenregistreringsService(bygningClient)

installBaseRouting(
bygningClient = bygningClient,
bygningService = bygningService,
egenregistreringsService = egenregistreringsService
)

Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
package no.kartverket.matrikkel.bygning.matrikkel

import no.kartverket.matrikkel.bygning.models.Bygning


interface BygningClient {
fun getBygningById(id: Long): Bygning?
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package no.kartverket.matrikkel.bygning.matrikkel.adapters

import no.kartverket.matrikkel.bygning.matrikkel.Bruksenhet
import no.kartverket.matrikkel.bygning.matrikkel.Bygning
import no.kartverket.matrikkel.bygning.matrikkel.BygningClient
import no.kartverket.matrikkel.bygning.models.Bruksenhet
import no.kartverket.matrikkel.bygning.models.Bygning

internal class LocalBygningClient : BygningClient {
private val bruksenheter: List<Bruksenhet> = listOf(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package no.kartverket.matrikkel.bygning.matrikkel.adapters

import io.ktor.util.logging.*
import no.kartverket.matrikkel.bygning.matrikkel.Bruksenhet
import no.kartverket.matrikkel.bygning.matrikkel.Bygning
import no.kartverket.matrikkel.bygning.matrikkel.BygningClient
import no.kartverket.matrikkel.bygning.matrikkelapi.MatrikkelApi
import no.kartverket.matrikkel.bygning.matrikkelapi.getObjectAs
import no.kartverket.matrikkel.bygning.matrikkelapi.getObjectsAs
import no.kartverket.matrikkel.bygning.models.Bruksenhet
import no.kartverket.matrikkel.bygning.models.Bygning
import no.statkart.matrikkel.matrikkelapi.wsapi.v1.domain.bygning.BygningId
import no.statkart.matrikkel.matrikkelapi.wsapi.v1.service.store.ServiceException
import no.statkart.matrikkel.matrikkelapi.wsapi.v1.domain.bygning.Bruksenhet as MatrikkelBruksenhet
Expand Down
Original file line number Diff line number Diff line change
@@ -1,40 +1,16 @@
package no.kartverket.matrikkel.bygning.models

import kotlinx.serialization.Serializable
import no.kartverket.matrikkel.bygning.models.requests.*

@Serializable
data class Bygning(
val bygningId: Long,
val bygningNummer: Long,
val bruksenheter: List<Bruksenhet>,
val bruksarealRegistreringer: List<BruksarealRegistrering>,
val byggeaarRegistreringer: List<ByggeaarRegistrering>,
val vannforsyningsRegistreringer: List<VannforsyningsRegistrering>,
val avlopRegistreringer: List<AvlopRegistrering>,
)

@Serializable
data class Bruksenhet(
val bruksenhetId: Long,
val bygningId: Long,
val bruksarealRegistreringer: List<BruksarealRegistrering>,
val energikildeRegistreringer: List<EnergikildeRegistrering>,
val oppvarmingRegistreringer: List<OppvarmingRegistrering>
)

// Disse er dummy klasser som brukes runtime mens vi ikke har en databasetilkobling
data class BygningStorage(
val bygningId: Long,
val bruksarealRegistreringer: MutableList<BruksarealRegistrering>,
val byggeaarRegistreringer: MutableList<ByggeaarRegistrering>,
val vannforsyningsRegistreringer: MutableList<VannforsyningsRegistrering>,
val avlopRegistreringer: MutableList<AvlopRegistrering>,
)

data class BruksenhetStorage(
val bruksenhetId: Long,
val bygningId: Long,
val bruksarealRegistreringer: MutableList<BruksarealRegistrering>,
val energikildeRegistreringer: MutableList<EnergikildeRegistrering>,
val oppvarmingRegistreringer: MutableList<OppvarmingRegistrering>
)

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,6 @@ data class OppvarmingRegistrering(

@Serializable
data class BygningsRegistrering(
val bygningId: Long,
val bruksareal: BruksarealRegistrering?,
val byggeaar: ByggeaarRegistrering?,
val vannforsyning: VannforsyningsRegistrering?,
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,10 @@ import io.ktor.server.application.*
import io.ktor.server.response.*
import io.ktor.server.routing.*
import no.kartverket.matrikkel.bygning.matrikkel.BygningClient
import no.kartverket.matrikkel.bygning.services.BygningService
import no.kartverket.matrikkel.bygning.services.EgenregistreringsService

fun Application.installBaseRouting(
bygningClient: BygningClient,
bygningService: BygningService,
egenregistreringsService: EgenregistreringsService
) {
routing {
Expand All @@ -25,7 +23,7 @@ fun Application.installBaseRouting(
}

route("v1") {
bygningRouting(bygningClient, bygningService, egenregistreringsService)
bygningRouting(bygningClient, egenregistreringsService)
kodelisteRouting()
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,12 @@ import io.ktor.http.*
import io.ktor.server.application.*
import io.ktor.server.response.*
import io.ktor.server.routing.*
import kotlinx.datetime.LocalDate
import no.kartverket.matrikkel.bygning.matrikkel.BygningClient
import no.kartverket.matrikkel.bygning.models.Bygning
import no.kartverket.matrikkel.bygning.services.BygningService
import no.kartverket.matrikkel.bygning.services.EgenregistreringsService

fun Route.bygningRouting(
bygningClient: BygningClient,
bygningService: BygningService,
egenregistreringsService: EgenregistreringsService
) {
route("bygninger") {
Expand All @@ -25,23 +22,15 @@ fun Route.bygningRouting(

bygningDoc()
get {
val gyldigFra = call.request.queryParameters["gyldigFra"]
val bygningId = call.parameters["bygningId"]

if (bygningId == null) {
call.respondText("Du må sende med bygningId som parameter", status = HttpStatusCode.BadRequest)
return@get
}

val gyldigFraDate = gyldigFra?.let {
try {
LocalDate.parse(it)
} catch (e: Exception) {
null
}
}

val bygning = bygningService.getBygning(bygningId.toLong(), gyldigFraDate)
val bygning = bygningClient.getBygningById(bygningId.toLong())

if (bygning != null) {
call.respond(bygning)
Expand All @@ -64,21 +53,12 @@ private fun Route.bygningDoc() {

get = GetInfo.builder {
summary("Hent en bygning")
description("Henter en bygning med gitte egenregistreringer. Kan også være med en gitt gyldigFra dato.")

parameters(
Parameter(
name = "gyldigFra",
`in` = Parameter.Location.query,
schema = TypeDefinition.STRING,
required = false
)
)
description("Henter en bygning med tilhørende bruksenheter.")

response {
responseCode(HttpStatusCode.OK)
responseType<Bygning>()
description("Bygning med tilhørende egenregistreringer")
description("Bygning med tilhørende bruksenheter")
}

canRespond {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,6 @@ private fun Route.egenregistreringBygningIdDoc() {
examples(
"Bygning Id 1" to EgenregistreringRequest(
bygningsRegistrering = BygningsRegistrering(
bygningId = 1L,
bruksareal = BruksarealRegistrering(
bruksareal = 125.0, metadata = RegistreringMetadataRequest(
registreringstidspunkt = Clock.System.now(),
Expand Down

This file was deleted.

Loading

0 comments on commit c82b512

Please sign in to comment.