Sha256: 558ff8e908eee8d607422e093287999de1797e76e1c2ddd4907e84d94dbd7d81

Contents?: true

Size: 902 Bytes

Versions: 19

Compression:

Stored size: 902 Bytes

Contents

class Mdm::Report < ActiveRecord::Base
  #
  # Callbacks
  #

  before_destroy :delete_file

  #
  # Relations
  #

  belongs_to :workspace, :class_name => 'Mdm::Workspace'
  belongs_to :task, :class_name => 'Mdm::Task'
  #
  # Scopes
  #

  scope :flagged, where('reports.downloaded_at is NULL')

  #
  # Serializations
  #

  serialize :options, MetasploitDataModels::Base64Serializer.new

  #
  # Validations
  #

  validates :name,
            :format => {
                :allow_blank => true,
                :message => "name must consist of A-Z, 0-9, space, dot, underscore, or dash",
                :with => /^[A-Za-z0-9\x20\x2e\x2d\x5f\x5c]+$/
            }

  private

  def delete_file
    c = Pro::Client.get rescue nil
    if c
      c.report_delete_file(self[:id])
    else
      ::File.unlink(self.path) rescue nil
    end
  end

  ActiveSupport.run_load_hooks(:mdm_report, self)
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
metasploit_data_models-0.16.9 app/models/mdm/report.rb
metasploit_data_models-0.16.9-java app/models/mdm/report.rb
metasploit_data_models-0.16.8 app/models/mdm/report.rb
metasploit_data_models-0.16.8-java app/models/mdm/report.rb
metasploit_data_models-0.16.7-java app/models/mdm/report.rb
metasploit_data_models-0.16.7 app/models/mdm/report.rb
metasploit_data_models-0.16.6-java app/models/mdm/report.rb
metasploit_data_models-0.16.6 app/models/mdm/report.rb
metasploit_data_models-0.16.5-java app/models/mdm/report.rb
metasploit_data_models-0.16.5 app/models/mdm/report.rb
metasploit_data_models-0.16.4-java app/models/mdm/report.rb
metasploit_data_models-0.16.4 app/models/mdm/report.rb
metasploit_data_models-0.16.3-java app/models/mdm/report.rb
metasploit_data_models-0.16.1-java app/models/mdm/report.rb
metasploit_data_models-0.16.1 app/models/mdm/report.rb
metasploit_data_models-0.16.0-java app/models/mdm/report.rb
metasploit_data_models-0.16.0 app/models/mdm/report.rb
metasploit_data_models-0.15.2-java app/models/mdm/report.rb
metasploit_data_models-0.15.2 app/models/mdm/report.rb