Skip to content

Instantly share code, notes, and snippets.

@matiangul
matiangul / hello_world_threads.java
Last active May 6, 2019 13:34
Hello World Threads!
package pl.angulski.example.threads;
enum State {
HELLO("Hello "),
WORLD("world"),
EXCLAMATION("!\n");
private final String text;
State(String text) {
@matiangul
matiangul / MapMatrix.java
Created January 31, 2019 16:54
Wzorzec projektowy adapter
/**
* @author Mateusz Angulski <mateusz@angulski.pl>.
*/
public class MapMatrix implements Matrix {
private final int size;
private final HashMap<String, Integer> matrix;
public MapMatrix(int size) {
this.size = size;
@matiangul
matiangul / kotlin_http_query_params.kt
Created July 4, 2017 11:34
kotlin http query params
fun getQuery() = mapOf("page" to page)
.filterValues { it != null }
.map { "${it.key}=${it.value}" }
.joinToString(separator = "&", prefix = "?")
.removeSuffix("?")
@matiangul
matiangul / data_source_configuration.kt
Created March 7, 2017 17:18
Hikari Data Source configuration
val dataSource = HikariDataSource(HikariConfig(Properties().apply {
setProperty("jdbcUrl", "jdbc:mysql://localhost/rcs_parsing_challenge")
setProperty("dataSource.user", "root")
setProperty("dataSource.password", "password")
put("dataSource.cachePrepStmts", true)
put("dataSource.useServerPrepStmts", true)
put("dataSource.rewriteBatchedStatements", true)
put("maximumPoolSize", 21)
put("idleTimeout", 30000)
put("autoCommit", false)
@matiangul
matiangul / xml_process.kt
Created March 6, 2017 20:16
Process xml content using java StAX API
while (xmlReader.hasNext()) {
xmlReader.next()
if (xmlReader.eventType == XMLStreamConstants.START_ELEMENT && xmlReader.localName == "F") {
origin = xmlReader.getAttributeValue(null, "o")
destination = xmlReader.getAttributeValue(null, "d")
route = xmlReader.getAttributeValue(null, "r")
} else if (xmlReader.eventType == XMLStreamConstants.START_ELEMENT && xmlReader.localName == "T") {
ticketCode = xmlReader.getAttributeValue(null, "t")
} else if (xmlReader.eventType == XMLStreamConstants.START_ELEMENT && xmlReader.localName == "FF") {
@matiangul
matiangul / xml_read.kt
Created March 5, 2017 16:16
Read xml content using java streams in kotlin
val fileStream = Thread.currentThread().contextClassLoader.getResourceAsStream("RCS.zip")
val zipStream = ZipInputStream(fileStream).apply { nextEntry }
val xmlReader = XMLInputFactory.newInstance().createXMLStreamReader(zipStream)
<F i="I" r="00000" o="0035" d="0410">
<T t="0CI">
<FF u="991231" f="150810" s="100000" p="150812" k="07J0" fm="00001"/>
</T>
<T t="0CK">
<FF u="991231" f="150815" s="100000" p="150817" k="07J2" fm="00001"/>
</T>
...
</F>
@matiangul
matiangul / pull_repositories
Created July 8, 2015 09:41
Pull repositories in current dir (assuming all is directory)
ls | xargs -I{} sh -c "echo {}; git -C{} pull"
@matiangul
matiangul / latin-1_to_utf-8
Created March 12, 2014 20:34
Mysql latin1 to utf-8 chars conversion
mysqldump -u $user -p --opt --quote-names --skip-set-charset --default-character-set=latin1 $dbname > dump.sql
mysql -u $user -p --default-character-set=utf8 $dbname < dump.sql
@matiangul
matiangul / gpp.sublime-build
Created October 7, 2013 20:27
Sublime C++ build system for Windows Users
{
"cmd": ["g++", "${file}", "-o", "${file_path}/${file_base_name}", "&&", "start", "cmd", "/c", "$file_base_name & pause"],
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "${file_path}",
"selector": "source.c, source.c++",
"shell": true,
"variants":
[
{