Skip to content
Snippets Groups Projects
Commit be243aac authored by npedot's avatar npedot
Browse files

refacts printDb in person vsplit scenario

parent c1448444
No related branches found
No related tags found
No related merge requests found
......@@ -3,23 +3,15 @@ package unibz.cs.semint.kprime.scenario
import unibz.cs.semint.kprime.adapter.service.XMLSerializerJacksonAdapter
import unibz.cs.semint.kprime.domain.*
import unibz.cs.semint.kprime.usecase.XMLSerializeUseCase
import javax.xml.crypto.Data
class PersonVSplitScenario {
fun run() {
val personMetadata = buildPersonMetadata()
print(XMLSerializeUseCase(XMLSerializerJacksonAdapter()).prettyDatabase(personMetadata).ok)
vsplitSakila(personMetadata)
vsplitPersonMetadata(personMetadata)
}
private fun vsplitSakila(personMetadata: Database) {
val detected = detect(personMetadata)
if (detected.ok!=null)
apply(personMetadata,detected)
}
private fun buildPersonMetadata(): Database {
val db = Database()
val personTable = Table()
......@@ -35,10 +27,26 @@ class PersonVSplitScenario {
primaryConstraint.name="primaryKey.person"
primaryConstraint.source.columns.add(colSSN)
primaryConstraint.source.columns.add(colT)
primaryConstraint.type=Constraint.TYPE.PRIMARY_KEY.name
db.schema.constraints.add(primaryConstraint)
return db
}
private fun vsplitPersonMetadata(personMetadata: Database) {
printDb(personMetadata)
val detected = detect(personMetadata)
if (detected.ok!=null) {
val applied = apply(personMetadata, detected)
if (applied.ok!=null) printDb(applied.ok)
}
}
private fun printDb(db:Database) {
println()
println("--------------------------------------------------------------------------")
println(XMLSerializeUseCase(XMLSerializerJacksonAdapter()).prettyDatabase(db))
}
private fun detect(personMetadata: Database): UseCaseResult<Database> {
return UseCaseResult("done detect",personMetadata)
}
......@@ -46,5 +54,4 @@ class PersonVSplitScenario {
private fun apply(personMetadata: Database, detected: UseCaseResult<Database>): UseCaseResult<Database>{
return UseCaseResult("done apply", personMetadata)
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment