Skip to content

Instantly share code, notes, and snippets.

View sitepodmatt's full-sized avatar

Mãtt Freèman sitepodmatt

  • Everywhere
View GitHub Profile
interface Transport{
fun <T : Resource> get(kind: Kind, name: String): T?
fun <T : Resource> list(kind: Kind): List<T>
}
class HTTPTransport : Transport {
override fun <T : Resource> get(kind: Kind, name: String): T? {
return null
}
data class Informer<T : Resource>(val blah : Int = 1) {
private var started = false
fun start(): Boolean {
if (!started) {
this.started = true
return true
} else {
return false
package tenniskata
enum class ConditionStatus { Unknown, True, False }
abstract class ResourceCondition(
val name: String,
val status: ConditionStatus = ConditionStatus.Unknown
)
sealed class SitepodCondition(
#!/bin/bash
xinput -disable $(xinput -list | grep Touchpad | sed -e 's/.*id=\([0-9]\+\).*/\1/')
xdotool mousemove 0 0
return new Promise((resolve, reject) => {
this.pool.query(queryStatement, values, (err, results) => {
if (err) {
return reject(err);
}
return resolve(results);
});
});
@sitepodmatt
sitepodmatt / profiles.clj
Created November 14, 2015 08:22
~/.lein/profiles.clj
{:user {:plugins [[org.clojure/tools.namespace "0.2.4"]]
:injections [(require '[clojure.tools.namespace.repl :refer [refresh]])]
}}
@sitepodmatt
sitepodmatt / sheets.clj
Last active December 5, 2016 07:28
oauth2 experiment
(ns acme.sheets
(:require [midje.sweet :refer :all])
(:require
[clj-time.core :as t]
[clj-time.coerce :refer [to-long]]
[clj-http.client :as client]
[byte-streams :refer [to-input-stream]]
[cheshire.core :refer [parse-stream]]
[clj-jwt.core :refer [jwt sign to-str]]
[clj-jwt.key :refer [private-key]]))
@sitepodmatt
sitepodmatt / pulldeps.bash
Last active October 18, 2015 06:55
hacky bash script to pull clojure lein project deps into a local directory
#!/bin/bash
# require unzip
UNZIP=$(which unzip)
if [ $? -ne 0 ]; then
echo "Error: requires unzip command"
exit 1
fi
# pull the first level dependencies from lein via some sed pain
var keys = Object.keys(CKEDITOR.instances);
for(var i=0;i<keys.length;i++) {
var key = keys[i];
var config = CKEDITOR.instances[key].config;
if(config.toolbar.length > 0) {
config.toolbar = null;
CKEDITOR.instances[key].destroy();
CKEDITOR.replace(key, config);
(def form-app-state { })
(def schema {
:first-name {:type :text
:label "First Name"
:required true }
:middle-names {:type :text
:label "Middle Name(s)"
:required false }
:surname {:type :text