Module: CouchRestRails::Database
Instance Method Summary collapse
Instance Method Details
#create(database) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/couch_rest_rails/database.rb', line 6 def create(database) resp = [] return "Database '#{database}' doesn't exists" unless (database == "*" || File.exist?(File.join(RAILS_ROOT, CouchRestRails.setup_path, database))) # get list of available_databases in couch... existing_databases = COUCHDB_SERVER.databases # get all the model files Dir[File.join(RAILS_ROOT, CouchRestRails.setup_path,database)].each do |db| # check for a directory... if File::directory?( db ) database_name =COUCHDB_CONFIG[:db_prefix] + File.basename(db) + COUCHDB_CONFIG[:db_suffix] if existing_databases.include?(database_name) resp << "The CouchDB database '#{database_name}' already exists" else # create the database COUCHDB_SERVER.create_db(database_name) resp << "Created the CouchDB database '#{database_name}'" # create views on database resp << CouchRestRails::Views.push(File.basename(db),"*") # create lucene-searches resp << CouchRestRails::Lucene.push(File.basename(db),"*") end end end resp << "create complete" resp.join("\n") end |
#delete(database) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/couch_rest_rails/database.rb', line 38 def delete(database) resp = [] return "Database '#{database}' doesn't exists" unless (database == "*" || File.exist?(File.join(RAILS_ROOT, CouchRestRails.setup_path, database))) # get list of available_databases in couch... existing_databases = COUCHDB_SERVER.databases # get all the model files Dir[File.join(RAILS_ROOT, CouchRestRails.setup_path,database)].each do |db| # check for a directory... if File::directory?( db ) database_name =COUCHDB_CONFIG[:db_prefix] + File.basename(db) + COUCHDB_CONFIG[:db_suffix] if existing_databases.include?(database_name) CouchRest.delete "#{COUCHDB_CONFIG[:host_path]}/#{database_name}" resp << "Dropped CouchDB database '#{database_name}'" else resp << "The CouchDB database '#{database_name}' does not exist" end end end resp << "delete complete" resp.join("\n") end |