Module: Rex::Exploitation::OpcodeDb::Cachable

Included in:
Group, ImageModule, Locale, MetaType, OsVersion, Type
Defined in:
lib/rex/exploitation/opcodedb.rb

Overview

A cachable entry.

Instance Method Summary collapse

Instance Method Details

#create(hash) ⇒ Object

:nodoc:



27
28
29
30
31
32
33
34
# File 'lib/rex/exploitation/opcodedb.rb', line 27

def create(hash) # :nodoc:
	@Cache = {} unless (@Cache)
	if (hash_key(hash) and @Cache[hash_key(hash)])
		@Cache[hash_key(hash)]
	else
		@Cache[hash_key(hash)] = self.new(hash)
	end
end

#flush_cacheObject

:nodoc:



40
41
42
# File 'lib/rex/exploitation/opcodedb.rb', line 40

def flush_cache # :nodoc:
	@Cache.clear
end

#hash_key(hash) ⇒ Object

:nodoc:



36
37
38
# File 'lib/rex/exploitation/opcodedb.rb', line 36

def hash_key(hash) # :nodoc:
	hash['id'] || nil
end