Skip to content

Instantly share code, notes, and snippets.

@bastman
bastman / dumpGlobalVars.php
Last active November 14, 2017 05:46
drupal7 mess utils
function dumpGlobalVars() {
// usage: echo "<pre>".json_encode(dumpGlobalVars())."</pre>";
// you may want to base64_encode($json)
// !!! WARNING: the result may contain sensitive data. prefer logging over echo to stdout !!!
$d=(array)$GLOBALS;
$removedFromSerializationText="***REMOVED_FROM_SERIALIZATION***";
$d["_GET"]=$removedFromSerializationText;
$d["_POST"]=$removedFromSerializationText;
$d["_REQUEST"]=$removedFromSerializationText;
$d["_SERVER"]=$removedFromSerializationText;
@bastman
bastman / pgsql_commands.txt
Last active September 12, 2017 09:24
postgres-pgsql-commands
# list databases
$ SELECT datname FROM pg_database WHERE datistemplate = false;
# use database FOO_DB
$ \connect FOO_DB;
# list tables
$ \dt
# SELECT FROM TABLE
$ SELECT * FROM YOUR_TABLE;
@bastman
bastman / k8s-commands.txt
Last active March 20, 2018 12:14
k8s-commands
# see: https://kubernetes.io/docs/user-guide/kubectl-cheatsheet/
brew upgrade kubernetes-cli
brew list kubectl --versions
brew info kubectl
brew switch kubectl 1.7.5
# get current context
$ kubectl config current-context
# change current context
@bastman
bastman / AbstractTest.kt
Created July 5, 2017 04:41
migrate a codebase from java to kotlin
@ActiveProfiles("test")
abstract class AbstractTest {
@Rule
val springMethodRule = SpringMethodRule()
companion object {
@ClassRule
val SPRING_CLASS_RULE = SpringClassRule()
}
}
@bastman
bastman / docker-compose-wait.sh
Last active October 16, 2019 16:09
docker-compose-wait: wait for docker containers to be ready
// https://github.com/ufoscout/docker-compose-wait
#!/bin/bash
set -e
timeout=${WAIT_HOSTS_TIMEOUT:-30}
waitAfterHosts=${WAIT_AFTER_HOSTS:-0}
waitBeforeHosts=${WAIT_BEFORE_HOSTS:-0}
@bastman
bastman / StringMatcherApp.java
Created May 3, 2017 08:57
quick poc of matching balanced brackets, braces,...
import java.util.List;
import java.util.Stack;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class StringMatcherApp {
public static void main(String[] args) {
String[] source = {"{}[]()", "{]}]"};
System.out.println("source ...");
@bastman
bastman / SequenceExtensions.kt
Created April 20, 2017 15:42
kotlin sequence extensions (batch, sort)
object SequenceExtensions
inline fun <T, R : Comparable<R>> Sequence<T>.sortedByDirection(
descending: Boolean,
crossinline selector: (T) -> R?
): Sequence<T> {
val comparator = if (descending) {
compareByDescending(selector)
} else {
compareBy(selector)
@bastman
bastman / JsonUtil.kt
Created November 3, 2016 12:00
Json Encoder/Decoder for kotlin-lang (wraps jackson)
package com.seb.util
import com.fasterxml.jackson.core.type.TypeReference
import com.fasterxml.jackson.databind.ObjectMapper
import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
import java.util.HashMap
object JsonUtil {
@bastman
bastman / hash_map.rb
Last active September 6, 2016 06:44
Ruby Hash: simple immutable Hash.map() implementation for old ruby versions
class Hash
def map_kv(&block)
result_hash = Hash.new()
for k,v in self
result_item=block.call(k,v)
result_hash[result_item.fetch("key")]=result_item.fetch("value")
end
return result_hash
end
def map_v(&block)
@bastman
bastman / InstantUtcUtil.groovy
Last active August 17, 2016 21:02
Some example shortcuts for working with Java8 DateTime Api (java.time): e.g. Instant, LocalDateTime, ZonedDateTime, OffsetDateTime
package com.example.util
import groovy.transform.CompileStatic
import groovy.transform.TypeChecked
import java.time.*
import java.time.format.DateTimeFormatter
@CompileStatic
@TypeChecked