Sha256: 15ae54fee667fa5452268e87dadf3a6cf4531037736f93e71c2fcebbde7f25c9

Contents?: true

Size: 924 Bytes

Versions: 10

Compression:

Stored size: 924 Bytes

Contents

module Architect4r
  class InstanceManager
    
    def initialize(path)
      @path = path
    end
    
    def server_path
      @path
    end
    
    def start
      %x[#{server_path}/bin/neo4j start]
    end
    
    def stop
      %x[#{server_path}/bin/neo4j stop]
    end
    
    def restart
      %x[#{server_path}/bin/neo4j restart]
    end
    
    def reset
      self.stop
      
      # Reset the database
      FileUtils.rm_rf("#{server_path}/data/graph.db")
      FileUtils.mkdir("#{server_path}/data/graph.db")
      
      # Remove log files
      FileUtils.rm_rf("#{server_path}/data/log")
      FileUtils.mkdir("#{server_path}/data/log")
      
      # Start the server
      self.start
    end
    
    def reset_to_sample_data(from)
      self.stop
      FileUtils.rm_rf("#{server_path}/data/graph.db")
      FileUtils.cp_r(from, "#{server_path}/data/graph.db/")
      self.start
    end
    
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
architect4r-0.4.3.1 lib/architect4r/instance_manager.rb
architect4r-0.4.3 lib/architect4r/instance_manager.rb
architect4r-0.4.2 lib/architect4r/instance_manager.rb
architect4r-0.4.1 lib/architect4r/instance_manager.rb
architect4r-0.4 lib/architect4r/instance_manager.rb
architect4r-0.3.4.2 lib/architect4r/instance_manager.rb
architect4r-0.3.4.1 lib/architect4r/instance_manager.rb
architect4r-0.3.4 lib/architect4r/instance_manager.rb
architect4r-0.3.3.1 lib/architect4r/instance_manager.rb
architect4r-0.3.2 lib/architect4r/instance_manager.rb