Sha256: 7aa3afd6a3f47d5abc29bc9c62d6851dd209ae1bf5acea5478bea236b1f917a3

Contents?: true

Size: 742 Bytes

Versions: 1

Compression:

Stored size: 742 Bytes

Contents

module EuGdpr
  class PersonalDataRegistry
    extend ActiveModel::Translation
    extend ActiveModel::Naming

    attr_accessor :personal_data

    delegate :first, :last, :[], :each, :map, :collect, :to => :personal_data

    def initialize
      @personal_data = []
    end

    def self.instance
      @@instance
    end

    def self.all
      instance.personal_data
    end

    def self.count
      instance.personal_data.size
    end

    def self.attribute_names
      [:personal_data]
    end

    def register(root, options, &block)
      self.personal_data << PersonalData.new(:root => root, :options => options, :block => block)
    end

    @@instance = EuGdpr::PersonalDataRegistry.new

    private_class_method :new
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rails_eu_gdpr-0.0.4 lib/eu_gdpr/personal_data_registry.rb