Skip to content

Instantly share code, notes, and snippets.

@rozza
rozza / decorator.py
Created October 18, 2010 09:17
A decorator for django management commands that ensures only one process is running at any one time.
"""
A decorator for management commands (or any class method) to ensure that there is
only ever one process running the method at any one time.
Requires lockfile - (pip install lockfile)
Author: Ross Lawley
"""
import time
@rozza
rozza / django_jinja.py
Created July 12, 2010 09:49
Django 1.2 and Jinja2 loader
"""
Using Jinja2 with Django 1.2
Based on: http://djangosnippets.org/snippets/2063/
To use:
* Add this template loader to settings: `TEMPLATE_LOADERS`
* Add template dirs to settings: `JINJA2_TEMPLATE_DIRS`
If in template debug mode - we fire the template rendered signal, which allows
debugging the context with the debug toolbar. Viewing source currently doesnt
@rozza
rozza / DocumentToBinary.java
Created September 22, 2015 09:35
Example of static helpers to convert to and from InputStreams
package example;
import org.bson.BsonBinaryReader;
import org.bson.BsonBinaryWriter;
import org.bson.Document;
import org.bson.codecs.Codec;
import org.bson.codecs.DecoderContext;
import org.bson.codecs.DocumentCodec;
import org.bson.codecs.EncoderContext;
import org.bson.io.BasicOutputBuffer;
import scala.tools.nsc.interpreter._
import scala.tools.nsc.Settings
//USAGE EXAMPLE: import break._;break[someClass]("MainObject" -> MainObject)
object break{
def echo(x: Any) = Console.println(x)
def break[T: Manifest](args: NamedParam*) = {
scala> class Bippy(xs: List[Int]) extends improving.TypesafeProxy(xs) { def isEmpty = true }
defined class Bippy
scala> val bippy = new Bippy(1 to 10 toList)
bippy: Bippy = List(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
scala> bippy.slice(3, 7)
[proxy] $line4.$read.$iw.$iw.bippy.slice(3, 7)
res1: List[Int] = List(4, 5, 6, 7)
import util.parsing.json.JSON
import io.Source
import scala.language.dynamics
object Example extends App{
val json = """{
"name" : "Adam Slodowy",
"active": "true",
"roles" : [ "teacher", "admin" ],
@rozza
rozza / .slate
Created January 3, 2013 11:03
My .slate configuration - use it to automatically place my apps when going to and from dual monitor.
# ~/.slate configuration
#
# Two modes:
#
# * Single Screen
# No real config, I manage this myself - aka TODO
#
# * Dual Screen
# I want chat and comms on my small monitor and out the way.
# Sublime, Chrome and iTerm on the big screen.
@rozza
rozza / Secured.scala
Created November 13, 2012 15:00 — forked from guillaumebort/Secured.scala
HTTP Basic Authorization for Play 2.0
def Secured[A](username: String, password: String)(action: Action[A]) = Action(action.parser) { request =>
request.headers.get("Authorization").flatMap { authorization =>
authorization.split(" ").drop(1).headOption.filter { encoded =>
new String(org.apache.commons.codec.binary.Base64.decodeBase64(encoded.getBytes)).split(":").toList match {
case u :: p :: Nil if u == username && password == p => true
case _ => false
}
}.map(_ => action(request))
}.getOrElse {
Unauthorized.withHeaders("WWW-Authenticate" -> """Basic realm="Secured"""")
import unittest
from mongoengine import *
from mongoengine.tests import query_counter
class Test(unittest.TestCase):
def setUp(self):
conn = connect(db='mongoenginetest')
@rozza
rozza / leak.py
Created August 14, 2012 09:08
Leak Hunting
from mongoengine import *
import objgraph
import random
import inspect
def main():
"""
Run by calling: python leak.py