Skip to content

Instantly share code, notes, and snippets.

View usmansaleem's full-sized avatar

Usman Saleem usmansaleem

View GitHub Profile
@usmansaleem
usmansaleem / JGit.kt
Created November 23, 2017 07:29
JGit Usage in Kotlin
package info.usmans.blog.vertx
import org.eclipse.jgit.api.Git
import org.eclipse.jgit.revwalk.RevCommit
import org.eclipse.jgit.transport.UsernamePasswordCredentialsProvider
import java.io.File
internal const val GIST_REPO_URL = "https://gist.github.com/someid.git"
fun gitCredentialProvider(gistToken: String = System.getenv("GITHUB_GIST_TOKEN")) = UsernamePasswordCredentialsProvider(gistToken, "")
@usmansaleem
usmansaleem / run-blog.sh
Last active November 29, 2017 04:40
A simple (Linux) sh script to launch a jar in background
#! /bin/sh
# sh run-blog.sh start|stop
PIDFILE="/root/blog.pid"
JAVA_HOME="/opt/jdk"
JARFILE="/root/uzi-vertx-shadow.jar"
case $1 in
start)
@usmansaleem
usmansaleem / WebSocketClientExample.kt
Created December 4, 2017 06:17
A very simple vertx based websocket example connecting to Vertx SockJS.
package info.usmans.blog.vertx.examples
import io.vertx.core.AbstractVerticle
import io.vertx.core.Vertx
import io.vertx.core.http.HttpClient
import io.vertx.core.http.WebSocketFrame
import io.vertx.core.json.JsonObject
fun main(args: Array<String>) {
@usmansaleem
usmansaleem / NetClientExample.kt
Created December 6, 2017 07:40
Vertx NetClient Example in Kotlin
package info.usmans.blog.example
import io.vertx.core.AbstractVerticle
import io.vertx.core.Vertx
import io.vertx.core.net.NetClientOptions
fun main(args: Array<String>) {
Vertx.vertx().deployVerticle(NetClientExample())
println("Running NetClientExample!")
@usmansaleem
usmansaleem / build.gradle
Last active December 14, 2017 12:10
Gradle build file for vertx-net-client project
plugins {
id 'io.vertx.vertx-plugin' version "0.0.6"
id "org.jetbrains.kotlin.jvm" version "1.2.10"
}
repositories {
jcenter()
}
dependencies {
@usmansaleem
usmansaleem / .gitignore
Created December 8, 2017 05:01
.gitignore for vertx-net-client project
.gradle
build/
out/
logs/
# Ignore Gradle GUI config
gradle-app.setting
# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
!gradle-wrapper.jar
@usmansaleem
usmansaleem / NetClientVerticle.kt
Last active January 9, 2018 02:00
NetClientVerticle for vertx-net-client project
package info.usmans.blog.vertx
import io.vertx.core.AbstractVerticle
import io.vertx.core.Vertx
import io.vertx.core.net.NetClient
import io.vertx.core.net.NetClientOptions
import org.slf4j.LoggerFactory
fun main(args: Array<String>) {
//hack for windows - netty cause dns resolver error
@usmansaleem
usmansaleem / logback.xml
Created December 8, 2017 06:25
logback logging configuration for vertx-net-client
<configuration>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>logs/vertx-net-client.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>logs/vertx-net-client.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- keep 30 days' worth of history capped at 3GB total size -->
<maxHistory>30</maxHistory>
<totalSizeCap>3GB</totalSizeCap>
@usmansaleem
usmansaleem / logback.xml
Created December 19, 2017 05:59
logback xml file for vertx-net-server project
<configuration>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>logs/vertx-net-server.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>logs/vertx-net-client.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- keep 30 days' worth of history capped at 3GB total size -->
<maxHistory>30</maxHistory>
<totalSizeCap>3GB</totalSizeCap>
@usmansaleem
usmansaleem / build.gradle
Last active December 19, 2017 06:19
Gradle build file for vertx-net-server project
plugins {
id 'io.vertx.vertx-plugin' version "0.0.6"
id "org.jetbrains.kotlin.jvm" version "1.2.10"
}
repositories {
jcenter()
}
dependencies {