Skip to content

Instantly share code, notes, and snippets.

View bjonnh's full-sized avatar
🐈

Jonathan Bisson bjonnh

🐈
View GitHub Profile
class QueryFragment : Fragment() {
val name = SimpleStringProperty("Default")
val error = SimpleStringProperty("Wow")
var query: TextArea by singleAssign()
var errorPane: NotificationPane by singleAssign()
var button: Button by singleAssign()
override val root = vbox {
form {
fieldset {
field("Name") {
java.lang.NullPointerException
at com.sun.javafx.text.PrismTextLayout.addTextRun(PrismTextLayout.java:755)
at com.sun.javafx.text.GlyphLayout.addTextRun(GlyphLayout.java:140)
at com.sun.javafx.text.GlyphLayout.breakRuns(GlyphLayout.java:312)
at com.sun.javafx.text.PrismTextLayout.buildRuns(PrismTextLayout.java:770)
at com.sun.javafx.text.PrismTextLayout.layout(PrismTextLayout.java:1021)
at com.sun.javafx.text.PrismTextLayout.ensureLayout(PrismTextLayout.java:223)
at com.sun.javafx.text.PrismTextLayout.getBounds(PrismTextLayout.java:246)
at javafx.scene.text.Text.getLogicalBounds(Text.java:358)
at javafx.scene.text.Text.impl_computeLayoutBounds(Text.java:1115)
package arrowdebug
import arrow.effects.extensions.io.fx.fx
import arrow.effects.IO
sealed class Error : RuntimeException()
object ClientInvalidQuery : Error()
object ClientQueryTimeout : Error()
object NotInTransaction : Error()
import arrow.effects.IO
class File(url: String) {
fun open(): File = this
fun close(): Unit {}
override fun toString(): String = "This file contains some interesting content!"
}
fun openFile(uri: String): IO<File> = IO { throw RuntimeException() }
package arrowdebug
import arrow.effects.extensions.io.fx.fx
import arrow.core.left
import arrow.core.right
import arrow.effects.IO
import arrow.effects.extensions.io.monad.binding
import kotlinx.coroutines.runBlocking
package arrowdebug
import arrow.core.left
import arrow.core.right
import arrow.effects.IO
import arrow.effects.extensions.io.monad.binding
import kotlinx.coroutines.runBlocking
sealed class Error : RuntimeException()
object ClientInvalidQuery : Error()
@bjonnh
bjonnh / ArrowTrial.kt
Last active January 6, 2019 19:15
How to run suspend function in Arrow IOs
import arrow.effects.IO
import arrow.effects.coroutines.DeferredK
import arrow.effects.coroutines.extensions.deferredk.applicativeError.handleError
import arrow.effects.extensions.io.async.async
import arrow.effects.extensions.io.monad.binding
import arrow.effects.fix
import kotlinx.coroutines.delay
import java.time.LocalDateTime
@bjonnh
bjonnh / Test.kt
Last active January 3, 2019 21:02
Exposed and TornadoFX
object Citations: IntIdTable() {
override val tableName: String = "app_citation"
val code = varchar("code", 32)
val year = integer("year").nullable()
}
class Citation(id: EntityID<Int>) : IntEntity(id) {
companion object : IntEntityClass<Citation>(Citations)
@bjonnh
bjonnh / exception_tornado.kt
Created January 1, 2019 23:35
Exception works in the controller not the view.
import tornadofx.Controller
import tornadofx.EventBus
import tornadofx.FXEvent
class LogException(val ex: Exception) : FXEvent(EventBus.RunOn.ApplicationThread)
class ExceptionController: Controller() {
init {
subscribe<LogException> {
println("Received an exception "+ it.ex)
@bjonnh
bjonnh / build.gradle.kts
Last active December 30, 2018 02:36
Non Working Gradle build to bintray
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import com.jfrog.bintray.gradle.BintrayExtension
import com.jfrog.bintray.gradle.tasks.BintrayUploadTask
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
import org.gradle.api.publish.maven.MavenPom
import org.jetbrains.dokka.gradle.*
val kotlin_version = "1.3.11"
val rdf4j_version = "2.4.2"