<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>To Infinity and Beyond ...</title>
	<atom:link href="http://jango.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://jango.wordpress.com</link>
	<description>It is my way</description>
	<lastBuildDate>Fri, 11 Feb 2011 22:10:15 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='jango.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>To Infinity and Beyond ...</title>
		<link>http://jango.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://jango.wordpress.com/osd.xml" title="To Infinity and Beyond ..." />
	<atom:link rel='hub' href='http://jango.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Tomcat session manager on memcache</title>
		<link>http://jango.wordpress.com/2009/12/17/tomcat-session-manager-on-memcache/</link>
		<comments>http://jango.wordpress.com/2009/12/17/tomcat-session-manager-on-memcache/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 17:01:23 +0000</pubDate>
		<dc:creator>jango</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://jango.wordpress.com/?p=79</guid>
		<description><![CDATA[see it here: http://code.google.com/p/memcached-session-manager/<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=79&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>see it here:</p>
<p>http://code.google.com/p/memcached-session-manager/</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jango.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jango.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jango.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jango.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jango.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jango.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jango.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jango.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jango.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jango.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jango.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jango.wordpress.com/79/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jango.wordpress.com/79/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jango.wordpress.com/79/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=79&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jango.wordpress.com/2009/12/17/tomcat-session-manager-on-memcache/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c9d4e8b97daed8a7d32694134e838902?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jango</media:title>
		</media:content>
	</item>
		<item>
		<title>New twitter application</title>
		<link>http://jango.wordpress.com/2009/12/17/new-twitter-application/</link>
		<comments>http://jango.wordpress.com/2009/12/17/new-twitter-application/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 16:42:02 +0000</pubDate>
		<dc:creator>jango</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://jango.wordpress.com/?p=75</guid>
		<description><![CDATA[Now a days it is obvious that most web rely on thirdparty authentication &#8211; and use oauth for that &#8211; twitter uses that: and here is where you add your application : http://twitter.com/oauth_clients/new<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=75&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Now a days it is obvious that most web rely on thirdparty authentication &#8211; and use oauth for that &#8211; twitter uses that: and here is where you add your application : <a href="http://twitter.com/oauth_clients/new">http://twitter.com/oauth_clients/new</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jango.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jango.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jango.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jango.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jango.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jango.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jango.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jango.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jango.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jango.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jango.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jango.wordpress.com/75/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jango.wordpress.com/75/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jango.wordpress.com/75/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=75&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jango.wordpress.com/2009/12/17/new-twitter-application/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c9d4e8b97daed8a7d32694134e838902?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jango</media:title>
		</media:content>
	</item>
		<item>
		<title>Memcached on windows</title>
		<link>http://jango.wordpress.com/2009/12/17/memcached-on-windows/</link>
		<comments>http://jango.wordpress.com/2009/12/17/memcached-on-windows/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 12:30:45 +0000</pubDate>
		<dc:creator>jango</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[colinux]]></category>
		<category><![CDATA[Memcached]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://jango.wordpress.com/2009/12/17/memcached-on-windows/</guid>
		<description><![CDATA[Often developers especially whom with python (Django) , ruby (on rails), php, find difficult to get their caching subsystem &#8211; memcached [http://memcached.org]- run on windows. Though there hasn&#8217;t much work to port memcached to windows it is easy to get it working using colinux [http://www.colinux.org/] Steps to do 1. Install colinux 2. Download the fedora [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=83&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Often developers especially whom with python (Django) , ruby (on rails), php, find difficult to get their caching subsystem &#8211; memcached [http://memcached.org]- run on windows. Though there hasn&#8217;t much work to port memcached to windows it is easy to get it working using colinux [http://www.colinux.org/]</p>
<p>Steps to do</p>
<p>1. Install colinux</p>
<p>2. Download the fedora image &#8211; I did with it</p>
<p>3. Enabled networking between the host os and guest os (between windows and linux) see it here [http://colinux.wikia.com/wiki/Network]</p>
<p>4. Download latest memcached to linux &#8211; install it &#8211; Remember you should have libevent installed prior to it</p>
<p>5. Using any of the apis access the memcached running on the linux from windows &#8211; I checked with python api</p>
<p>Update: You can get memcached on windows here : <a href="http://labs.northscale.com/memcached-packages/">http://labs.northscale.com/memcached-packages/</a></p>
<p>Happy programming in windows <img src='http://s2.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jango.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jango.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jango.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jango.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jango.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jango.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jango.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jango.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jango.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jango.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jango.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jango.wordpress.com/83/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jango.wordpress.com/83/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jango.wordpress.com/83/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=83&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jango.wordpress.com/2009/12/17/memcached-on-windows/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c9d4e8b97daed8a7d32694134e838902?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jango</media:title>
		</media:content>
	</item>
		<item>
		<title>Install another version of python</title>
		<link>http://jango.wordpress.com/2009/10/06/install-another-version-of-python/</link>
		<comments>http://jango.wordpress.com/2009/10/06/install-another-version-of-python/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 12:16:43 +0000</pubDate>
		<dc:creator>jango</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://jango.wordpress.com/2009/10/07/install-another-version-of-python/</guid>
		<description><![CDATA[download the latest from http://www.python.org/download/ Unzip it, change to that directory and run ./configure &#8211;prefix=&#60; Your custom python install path&#62; then make,make install You have new version of python at &#60;Your custom python install path&#62;/bin (ie &#60;Your custom python install path&#62;/bin/python will be the new python) . without disturbing the existing version<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=65&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>download the latest from <a href="http://www.python.org/download/">http://www.python.org/download/</a></p>
<p>Unzip it, change to that directory and run <font color="olive">./configure &#8211;prefix=</font>&lt; <font color="#0000A0">Your custom python install path&gt;</font></p>
<p>then make,make install</p>
<p>You have new version of python at <font color="#0000A0">&lt;Your custom python install path&gt;/bin</font> (ie <font color="#0000A0">&lt;Your custom python install path&gt;/bin/python</font> will be the new python) . without disturbing the existing version</p>
<p> <img src='http://s2.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jango.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jango.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jango.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jango.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jango.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jango.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jango.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jango.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jango.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jango.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jango.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jango.wordpress.com/65/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jango.wordpress.com/65/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jango.wordpress.com/65/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=65&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jango.wordpress.com/2009/10/06/install-another-version-of-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c9d4e8b97daed8a7d32694134e838902?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jango</media:title>
		</media:content>
	</item>
		<item>
		<title>SSL Key, Certifcate CSR &#8211; Java</title>
		<link>http://jango.wordpress.com/2009/08/14/ssl-key-certifcate-csr-java/</link>
		<comments>http://jango.wordpress.com/2009/08/14/ssl-key-certifcate-csr-java/#comments</comments>
		<pubDate>Fri, 14 Aug 2009 02:00:27 +0000</pubDate>
		<dc:creator>jango</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://jango.wordpress.com/2009/08/14/ssl-key-certifcate-csr-java/</guid>
		<description><![CDATA[Create a server key: openssl genrsa -des3 -out server.key.pass 1024 Remove the pass: openssl rsa -in server.key.pass -out server.key Generate CSR: openssl req -new -key server.key -out server.csr<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=63&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Create a server key: <strong>openssl genrsa -des3 -out server.key.pass 1024</strong></p>
<p>Remove the pass: <strong>openssl rsa -in server.key.pass -out server.key</strong></p>
<p>Generate CSR: <strong>openssl req -new -key server.key -out server.csr</strong></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jango.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jango.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jango.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jango.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jango.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jango.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jango.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jango.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jango.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jango.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jango.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jango.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jango.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jango.wordpress.com/63/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=63&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jango.wordpress.com/2009/08/14/ssl-key-certifcate-csr-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c9d4e8b97daed8a7d32694134e838902?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jango</media:title>
		</media:content>
	</item>
		<item>
		<title>Haproxy and ssl</title>
		<link>http://jango.wordpress.com/2009/06/06/haproxy-and-ssl/</link>
		<comments>http://jango.wordpress.com/2009/06/06/haproxy-and-ssl/#comments</comments>
		<pubDate>Sat, 06 Jun 2009 12:11:31 +0000</pubDate>
		<dc:creator>jango</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://jango.wordpress.com/2009/06/06/haproxy-and-ssl/</guid>
		<description><![CDATA[<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=62&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://jango.files.wordpress.com/2009/06/haproxy_ssl.jpg"><img height="224" alt="Haproxy SSL" src="http://jango.files.wordpress.com/2009/06/haproxy_ssl-small.jpg?w=450&#038;h=224" width="450" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jango.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jango.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jango.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jango.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jango.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jango.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jango.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jango.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jango.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jango.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jango.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jango.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jango.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jango.wordpress.com/62/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=62&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jango.wordpress.com/2009/06/06/haproxy-and-ssl/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c9d4e8b97daed8a7d32694134e838902?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jango</media:title>
		</media:content>

		<media:content url="http://jango.files.wordpress.com/2009/06/haproxy_ssl-small.jpg" medium="image">
			<media:title type="html">Haproxy SSL</media:title>
		</media:content>
	</item>
		<item>
		<title>JS CSS minify filter in java</title>
		<link>http://jango.wordpress.com/2009/04/27/js-minify-filter-in-java/</link>
		<comments>http://jango.wordpress.com/2009/04/27/js-minify-filter-in-java/#comments</comments>
		<pubDate>Mon, 27 Apr 2009 07:16:19 +0000</pubDate>
		<dc:creator>jango</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://jango.wordpress.com/?p=44</guid>
		<description><![CDATA[This filter is based on YUI Compressor. So for performance you must use any caching filter. The code is package com.vinu.web.performance; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.io.StringReader; import java.io.StringWriter; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponseWrapper; import org.mozilla.javascript.ErrorReporter; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=44&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This filter is based on <a href="http://developer.yahoo.com/yui/compressor/" target="_blank">YUI Compressor</a>. So for performance you must use any caching filter. The code is</p>
<pre class="brush: plain;">

package com.vinu.web.performance;

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.StringReader;
import java.io.StringWriter;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpServletResponseWrapper;

import org.mozilla.javascript.ErrorReporter;
import org.mozilla.javascript.EvaluatorException;

import com.yahoo.platform.yui.compressor.CssCompressor;
import com.yahoo.platform.yui.compressor.JavaScriptCompressor;

/**
* @author Vinu Varghese (Email: vinu@x-minds.org) Minifies JS and CSS on the fly, based on the YUI Compressor The minification is a heavy process so use this
*         filter along with a caching filter for performance.
*/
public class JsCssMinifyFilter implements Filter
{

private FilterConfig config;

/*
* (non-Javadoc)
*
* @see javax.servlet.Filter#init(javax.servlet.FilterConfig)
*/
public void init(FilterConfig filterConfig) throws ServletException
{
this.config = filterConfig;
}

/*
* (non-Javadoc)
*
* @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain)
*/
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException
{
HttpServletRequest originalRequest = (HttpServletRequest) request;

HttpServletResponse originalResponse = (HttpServletResponse) response;

// Create the response wrapper
MinifiedResponse minifiedResponse = new MinifiedResponse(originalResponse);

// Continue the chain - get the contents
chain.doFilter(originalRequest, minifiedResponse);

// The data
String data = new String(minifiedResponse.getData());

// Create the reader
StringReader reader = new StringReader(data);
//Create the writer
StringWriter writer = new StringWriter();

String requestURI = originalRequest.getRequestURI();

try
{
//Do JS minification
if (requestURI.endsWith(&quot;.js&quot;))
{
minifyJS(reader, writer);
}
// Do Css minification
else if (requestURI.endsWith(&quot;.css&quot;))
{
minifyCSS(reader, writer);
}
//Else - we can't do any other minification <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />
else
{
writer.write(data);

}

}
catch (Exception ex)
{
// We do a generic exception handling

//Log error
config.getServletContext().log(&quot;Error in minifying : &quot; + requestURI, ex);
// Write the data as it is
writer.write(data);
}

//Write the data to the original response

// Get the data from the writer (Compressed data)
String compressed = writer.toString();

//Set the content length correctly
originalResponse.setContentLength(compressed.length());

//Write the data
originalResponse.getOutputStream().write(compressed.getBytes());

}

/**
* @param reader
* @param writer
* @throws IOException
*/
private void minifyCSS(StringReader reader, StringWriter writer) throws IOException
{
CssCompressor cssCompressor = new CssCompressor(reader);
cssCompressor.compress(writer, -1);
}

/**
* @param reader
* @param writer
*/
private void minifyJS(StringReader reader, StringWriter writer) throws IOException
{
JavaScriptCompressor compressor = new JavaScriptCompressor(reader, new ErrorReporter() {

public void warning(String message, String sourceName, int line, String lineSource, int lineOffset)
{
if (line &amp;lt; 0)
{
System.err.println(&quot;\n[WARNING] &quot; + message);
}
else
{
System.err.println(&quot;\n[WARNING] &quot; + line + ':' + lineOffset + ':' + message);
}
}

public void error(String message, String sourceName, int line, String lineSource, int lineOffset)
{
if (line &amp;lt; 0)
{
System.err.println(&quot;\n[ERROR] &quot; + message);
}
else
{
System.err.println(&quot;\n[ERROR] &quot; + line + ':' + lineOffset + ':' + message);
}
}

public EvaluatorException runtimeError(String message, String sourceName, int line, String lineSource, int lineOffset)
{
error(message, sourceName, line, lineSource, lineOffset);
return new EvaluatorException(message);
}
});

// Does the compression
compressor.compress(writer, -1, true, false, true, false);

}

/*
* (non-Javadoc)
*
* @see javax.servlet.Filter#destroy()
*/
public void destroy()
{

}

/**
* A response wrapper, the content is saved to the output buffer, the stream returned is ServletOutputStreamWrapper
*
* @author Vinu Varghese (Email: vinu@x-minds.org)
*
*/
class MinifiedResponse extends HttpServletResponseWrapper
{

private ByteArrayOutputStream output = new ByteArrayOutputStream();

/**
* @param response
*/
public MinifiedResponse(HttpServletResponse response)
{
super(response);
}

/*
* (non-Javadoc)
*
* @see javax.servlet.ServletResponseWrapper#getOutputStream()
*/
@Override
public ServletOutputStream getOutputStream() throws IOException
{
return new ServletOutputStreamWrapper(this.output);
}

/*
* (non-Javadoc)
*
* @see javax.servlet.ServletResponseWrapper#getWriter()
*/
@Override
public PrintWriter getWriter() throws IOException
{
PrintWriter localPrintWriter;
try
{
localPrintWriter = new PrintWriter(new OutputStreamWriter(getOutputStream(), &quot;UTF-8&quot;), true);
}
catch (Exception localException)
{
localPrintWriter = new PrintWriter(getOutputStream(), true);
}

return localPrintWriter;
}

/**
* Returns the data
*
* @return
*/
public byte[] getData()
{
try
{
output.flush();
}
catch (IOException e)
{
//ignore
}

return output.toByteArray();
}

}

/**
* Output stream wrapper I have overriden the write method, is that enough?
*
* @author Vinu Varghese (Email: vinu@x-minds.org)
*
*/
class ServletOutputStreamWrapper extends ServletOutputStream
{

private ByteArrayOutputStream output;

/**
*
*/
public ServletOutputStreamWrapper(ByteArrayOutputStream output)
{
this.output = output;
}

/*
* (non-Javadoc)
*
* @see java.io.OutputStream#write(int)
*/
public void write(int b) throws IOException
{
output.write(b);
}

}

}
</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jango.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jango.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jango.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jango.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jango.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jango.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jango.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jango.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jango.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jango.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jango.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jango.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jango.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jango.wordpress.com/44/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=44&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jango.wordpress.com/2009/04/27/js-minify-filter-in-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c9d4e8b97daed8a7d32694134e838902?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jango</media:title>
		</media:content>
	</item>
		<item>
		<title>Import private key to Java key store</title>
		<link>http://jango.wordpress.com/2008/08/13/import-private-key-to-java-key-store/</link>
		<comments>http://jango.wordpress.com/2008/08/13/import-private-key-to-java-key-store/#comments</comments>
		<pubDate>Wed, 13 Aug 2008 07:44:47 +0000</pubDate>
		<dc:creator>jango</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://jango.wordpress.com/?p=42</guid>
		<description><![CDATA[See this link: http://www.agentbob.info/agentbob/79-AB.html<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=42&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>See this link: http://www.agentbob.info/agentbob/79-AB.html</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/jango.wordpress.com/42/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/jango.wordpress.com/42/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jango.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jango.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jango.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jango.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jango.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jango.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jango.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jango.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jango.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jango.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jango.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jango.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jango.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jango.wordpress.com/42/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=42&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jango.wordpress.com/2008/08/13/import-private-key-to-java-key-store/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c9d4e8b97daed8a7d32694134e838902?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jango</media:title>
		</media:content>
	</item>
		<item>
		<title>Free java decompiler</title>
		<link>http://jango.wordpress.com/2008/07/29/free-java-decompiler/</link>
		<comments>http://jango.wordpress.com/2008/07/29/free-java-decompiler/#comments</comments>
		<pubDate>Tue, 29 Jul 2008 04:53:19 +0000</pubDate>
		<dc:creator>jango</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[java decompiler free]]></category>

		<guid isPermaLink="false">http://jango.wordpress.com/2008/07/29/free-java-decompiler/</guid>
		<description><![CDATA[Check this: http://java.decompiler.free.fr A free java decompiler<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=34&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Check this: <a href="http://java.decompiler.free.fr">http://java.decompiler.free.fr</a>        </p>
<p>A free java decompiler</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/jango.wordpress.com/34/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/jango.wordpress.com/34/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jango.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jango.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jango.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jango.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jango.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jango.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jango.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jango.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jango.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jango.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jango.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jango.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jango.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jango.wordpress.com/34/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=34&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jango.wordpress.com/2008/07/29/free-java-decompiler/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c9d4e8b97daed8a7d32694134e838902?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jango</media:title>
		</media:content>
	</item>
		<item>
		<title>Simple Tar reader in Java</title>
		<link>http://jango.wordpress.com/2008/07/22/simple-tar-reader-in-java/</link>
		<comments>http://jango.wordpress.com/2008/07/22/simple-tar-reader-in-java/#comments</comments>
		<pubDate>Tue, 22 Jul 2008 09:13:03 +0000</pubDate>
		<dc:creator>jango</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[Tar reader java]]></category>

		<guid isPermaLink="false">http://jango.wordpress.com/2008/07/22/simple-tar-reader-in-java/</guid>
		<description><![CDATA[/** * A simple tar reader * Just reads through tar file, parses the headers and writes file. */ package com.jango.tarreader; import java.io.IOException; import java.io.InputStream; /** * @author vinu * */ public abstract class AbstractTarReader { public void read(InputStream in) throws IOException { while (true) { Header head = parseHeader(in); if (head == null) break; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=30&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><code><br />/** <br />* A simple tar reader <br />* Just reads through tar file, parses the headers and writes file. <br />*/ <br />package com.jango.tarreader;</code></p>
<p>import java.io.IOException; <br />import java.io.InputStream;</p>
<p>/** <br />* @author vinu <br />* <br />*/ <br />public abstract class AbstractTarReader {</p>
<p>public void read(InputStream in) throws IOException {</p>
<p>while (true) {</p>
<p>Header head = parseHeader(in);</p>
<p>if (head == null) <br />break;</p>
<p>if (head.isFile &amp;&amp; head.filesize &gt; 0) { <br />int remainder = head.filesize % 512; <br />int skiplen = 0; <br />if (remainder != 0) <br />skiplen = 512 &#8211; remainder;</p>
<p>byte[] fileContents = new byte[head.filesize];</p>
<p>in.read(fileContents); <br />in.skip(skiplen);</p>
<p>createFile(head.filename, fileContents);</p>
<p>} else if (!head.isFile) { <br />createDir(head.filename); <br />}</p>
<p>} <br />}</p>
<p>/** <br />* Creates the file &#8211; dependent on implementation <br />* <br />* @param filename <br />* @param fileContents <br />* @throws IOException <br />*/ <br />public abstract void createFile(String filename, byte[] fileContents) <br />throws IOException;</p>
<p>/** <br />* Creates the directory as in the tar <br />* <br />* @param dirname <br />*/ <br />public abstract void createDir(String dirname);</p>
<p>// Parses the header <br />private Header parseHeader(InputStream in) throws IOException {</p>
<p>Header head = new Header();</p>
<p>byte buf[] = new byte[512];</p>
<p>int len = in.read(buf);</p>
<p>// EOF or not fully read <br />if (len == -1 || len != 512) <br />return null;</p>
<p>StringBuffer sBufFilename = new StringBuffer();</p>
<p>byte linkIndicator = buf[156];</p>
<p>for (int i = 0; i &lt; 100; i++) { <br />if (buf[i] != 0) { <br />sBufFilename.append((char) buf[i]); <br />} <br />}</p>
<p>StringBuffer sBufFilesize = new StringBuffer(); <br />for (int i = 124; i &lt; 136; i++) { <br />sBufFilesize.append((char) buf[i]); <br />}</p>
<p>head.filename = sBufFilename.toString(); <br />head.filesize = Integer.parseInt(&#8220;0&#8243; + sBufFilesize.toString().trim(),8);</p>
<p>if(head.filesize==0 &amp;&amp; head.filename.length()==0) <br />return null;</p>
<p>if ((char) linkIndicator == &#8217;5&#8242;) { <br />head.isFile = false; <br />}</p>
<p>return head; <br />}</p>
<p>// To store the header info &#8211; Simple for now <br />// Only the filename <br />class Header { <br />String filename; <br />int filesize; <br />boolean isFile = true; <br />}</p>
<p>} </p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/jango.wordpress.com/30/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/jango.wordpress.com/30/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jango.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jango.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jango.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jango.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jango.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jango.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jango.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jango.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jango.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jango.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jango.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jango.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jango.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jango.wordpress.com/30/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jango.wordpress.com&amp;blog=551023&amp;post=30&amp;subd=jango&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jango.wordpress.com/2008/07/22/simple-tar-reader-in-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c9d4e8b97daed8a7d32694134e838902?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jango</media:title>
		</media:content>
	</item>
	</channel>
</rss>
