Sha256: e80e5c39986d9a10f47042ff66a8fd47bd2db92aca4f3e3bfb883ac08049f86e

Contents?: true

Size: 1.9 KB

Versions: 8

Compression:

Stored size: 1.9 KB

Contents

# frozen_string_literal: true
#
# ronin-db-activerecord - ActiveRecord backend for the Ronin Database.
#
# Copyright (c) 2022-2023 Hal Brodigan (postmodern.mod3 at gmail.com)
#
# This file is part of ronin-db-activerecord.
#
# ronin-db-activerecord is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published
# by the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# ronin-db-activerecord is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with ronin-db-activerecord.  If not, see <https://www.gnu.org/licenses/>.
#

#
# Creates the `ronin_urls` table.
#
class CreateRoninUrlsTable < ActiveRecord::Migration[7.0]

  def change
    create_table :ronin_urls, if_not_exists: true do |t|
      t.references :scheme, null: false,
                            foreign_key: {
                              to_table: :ronin_url_schemes
                            }
      t.references :host_name, null: false,
                               foreign_key: {
                                 to_table: :ronin_host_names
                               }
      t.references :port, null: false,
                          foreign_key: {
                            to_table: :ronin_ports
                          }
      t.string :path
      t.string :query
      t.string :fragment
      t.datetime :last_scanned_at
      t.datetime :created_at, null: false

      t.index :scheme_id
      t.index :host_name_id
      t.index :port_id
      t.index [:scheme_id, :host_name_id, :port_id, :path, :query, :fragment], unique: true, name: 'url_index'
    end
  end

end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
ronin-db-activerecord-0.2.0 db/migrate/0009_create_ronin_urls_table.rb
ronin-db-activerecord-0.2.0.rc1 db/migrate/0009_create_ronin_urls_table.rb
ronin-db-activerecord-0.1.6 db/migrate/0009_create_ronin_urls_table.rb
ronin-db-activerecord-0.1.5 db/migrate/0009_create_ronin_urls_table.rb
ronin-db-activerecord-0.1.4 db/migrate/0009_create_ronin_urls_table.rb
ronin-db-activerecord-0.1.3 db/migrate/0009_create_ronin_urls_table.rb
ronin-db-activerecord-0.1.2 db/migrate/0009_create_ronin_urls_table.rb
ronin-db-activerecord-0.1.1 db/migrate/0009_create_ronin_urls_table.rb