Skip to content

Instantly share code, notes, and snippets.

Keybase proof

I hereby claim:

  • I am erickdavidson on github.
  • I am erickd (https://keybase.io/erickd) on keybase.
  • I have a public key ASD0_adaKznxnvq5eUZsO-FrsJc4ofvtUlnvysBeFqpwzgo

To claim this, I am signing this object:

@erickdavidson
erickdavidson / gist:1441037
Created December 7, 2011 01:44
python-hipchat-connection
import sys
from urllib import urlencode
from urllib2 import urlopen, Request
if sys.version_info[0] == 2 and sys.version_info[1] < 6:
import simplejson as json
else:
import json
import sys
from urllib import urlencode
from urllib2 import urlopen, Request
if sys.version_info[0] == 2 and sys.version_info[1] < 6:
import simplejson as json
else:
import json
import sys
from urllib import urlencode
from urllib2 import urlopen, Request
if sys.version_info[0] == 2 and sys.version_info[1] < 6:
import simplejson as json
else:
import json
import sys
from urllib import urlencode
from urllib2 import urlopen, Request
if sys.version_info[0] == 2 and sys.version_info[1] < 6:
import simplejson as json
else:
import json
- private.setters = function setters(type, validate, key, value, lifetime, callback, cas){
+ private.setters = function setters(type, validate, key, value, lifetime, compress, callback, cas){
var flag = 0
, memcached = this
, valuetype = typeof value
, length;
if (Buffer.isBuffer(value)){
- flag = FLAG_BINARY;
+ if (compress) {
if (Buffer.isBuffer(value)){
- flag = FLAG_BINARY;
+ if (compress) {
+ flag = FLAG_COMPRESSED;
+ value = new Buffer(zlib.deflate(value), 'binary');
+ } else {
+ flag = FLAG_BINARY;
+ }
+ length = value.length;
value = value.toString('binary');
if (Buffer.isBuffer(value)){
- flag = FLAG_BINARY;
+ if (compress) {
+ flag = FLAG_COMPRESSED;
+ value = new Buffer(zlib.deflate(value), 'binary');
+ } else {
+ flag = FLAG_BINARY;
+ }
+ length = value.length;
value = value.toString('binary');
@erickdavidson
erickdavidson / gist:1285050
Created October 13, 2011 18:32
nodejs memcached library
if (Buffer.isBuffer(value)){
- flag = FLAG_BINARY;
+ if (compress) {
+ flag = FLAG_COMPRESSED;
+ value = new Buffer(zlib.deflate(value), 'binary');
+ } else {
+ flag = FLAG_BINARY;
+ }
+ length = value.length;
value = value.toString('binary');
diff --git a/lib/memcached.js b/lib/memcached.js
index c3e4f26..64a7a01 100644
--- a/lib/memcached.js
+++ b/lib/memcached.js
@@ -78,7 +78,8 @@ Client.config = {
, BUFFER = 1E2
, CONTINUE = 1E1
, FLAG_JSON = 1<<1
- , FLAG_BINARY = 2<<1;
+ , FLAG_BINARY = 2<<1