Class: Arachni::Data::Framework::RPC
- Defined in:
- lib/arachni/data/framework/rpc.rb
Overview
Data for RPC::Server::Framework.
Instance Attribute Summary collapse
Class Method Summary collapse
Instance Method Summary collapse
- #clear ⇒ Object
- #dump(directory) ⇒ Object
-
#initialize ⇒ RPC
constructor
A new instance of RPC.
- #statistics ⇒ Object
Constructor Details
Instance Attribute Details
#distributed_page_queue ⇒ Support::Database::Queue (readonly)
19 20 21 |
# File 'lib/arachni/data/framework/rpc.rb', line 19 def distributed_page_queue @distributed_page_queue end |
Class Method Details
.load(directory) ⇒ Object
49 50 51 52 53 54 55 56 57 |
# File 'lib/arachni/data/framework/rpc.rb', line 49 def self.load( directory ) rpc = new Dir["#{directory}/distributed_page_queue/*"].each do |page_file| rpc.distributed_page_queue.disk << page_file end rpc end |
Instance Method Details
#clear ⇒ Object
59 60 61 |
# File 'lib/arachni/data/framework/rpc.rb', line 59 def clear @distributed_page_queue.clear end |
#dump(directory) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/arachni/data/framework/rpc.rb', line 29 def dump( directory ) FileUtils.mkdir_p( directory ) page_queue_directory = "#{directory}/distributed_page_queue/" FileUtils.rm_rf( page_queue_directory ) FileUtils.mkdir_p( page_queue_directory ) distributed_page_queue.buffer.each do |page| IO.binwrite( "#{page_queue_directory}/#{page.persistent_hash}", Marshal.dump( page ) ) end distributed_page_queue.disk.each do |filepath| FileUtils.cp filepath, "#{page_queue_directory}/" end end |
#statistics ⇒ Object
25 26 27 |
# File 'lib/arachni/data/framework/rpc.rb', line 25 def statistics { distributed_page_queue: @distributed_page_queue.size } end |