Refactor
:my
=>
'code'
Codes
Refactorings
Popular
Best
Submit
Spam
Account
Logout
Login
JavaScript doesn't seem to be activated, expect things to be ugly and sloppy!
Learn How to Create Your Own Programming Language
createyourproglang.com
Recent
Simple Particle Engine for a shooter game
Snake / Nibbles clone in C and Ncurses
Please improve
Parsing of XML data has high CPU usage
Convert simple Javascript to jQuery plugin
Active Record getting unique records
List the files in a directory without the directory name or the extension
clean the code
ohs system, recruitment software, hr software, oh&s software, human resources software, ohs software
Array parsing in a block
Popular
Parsing of XML data has high CPU usage
Please improve
Snake / Nibbles clone in C and Ncurses
List the files in a directory without the directory name or the extension
Convert simple Javascript to jQuery plugin
Simple Particle Engine for a shooter game
Active Record getting unique records
Breadth first cartesian product iterator
php refactoring
first BST
Pastable version of
fragment cache
<pre class='prettyprint' language='ruby'># i use this method instead of "render" render_from_cache_or_render(:cache_key =>â€cache keyâ€, :cache_expire_after => ConstantHelper::TAG_CLOUD_EXPIRED_IN, # minute # implementation def render_from_cache_or_render(p_args) return render(p_args) if true == p_args[:cache_off] # check from cache cache_key = p_args[:cache_key] cached_content = CacheService.get_cache(cache_key) if not cached_content.nil? and not cached_content.empty? return cached_content else content = render(p_args) # cache expire time if defined cache_expire_time_in_minutes = p_args[:cache_expire_after] || 60 CacheService.add_cache(cache_key, cache_expire_time_in_minutes, content) return content end end # complete source code of cache service module Cache class Item attr_accessor :key, :expire_time, :content, :created_on def initialize(p_key, p_expire_time, p_content) @key = p_key @expire_time = p_expire_time * 60 # in minutes @content = p_content @created_on = Time.now end end end class CacheService @@CACHES = {} @@CACHE_EXPIRE_TIMES = {} def self.add_cache(p_key, p_expire_time, p_content) cache_item = Cache::Item.new(p_key, p_expire_time, p_content) @@CACHES[p_key.to_sym] = cache_item end def self.get_cache(p_key) # load content from cache cached_content = @@CACHES[p_key.to_sym] return nil if cached_content.nil? # verify cache validity return cached_content.content if not expired?(cached_content) return nil end private def self.expired?(p_cache) # find time difference time_difference = Time.now - p_cache.created_on return true if time_difference > p_cache.expire_time end end</pre> <a href="http://www.refactormycode.com/codes/160-fragment-cache" style="color:#fff" title="As seen on RefactorMyCode.com"><img alt="Small_logo" src="http://www.refactormycode.com/images/small_logo.gif" style="border:0" /></a>