Class: ActiveVersion::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/active_version/configuration.rb

Overview

Global configuration for ActiveVersion

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# File 'lib/active_version/configuration.rb', line 41

def initialize
  # Global settings
  @auditing_enabled = true
  @current_user_method = :current_user
  @ignored_attributes = %w[lock_version created_at updated_at created_on updated_on]
  @ignored_default_callbacks = []
  @store_synthesized_enums = false
  @execution_scope = :fiber

  # Translation defaults
  @translation_locale_column = :locale
  @translation_default_locale = :en

  # Revision defaults
  @revision_version_column = :version
  @revision_foreign_key_suffix = "_id"

  # Audit defaults
  @default_audit_class = nil  # When set, has_audits without :as uses this when ModelAudit is not defined
  @audit_storage = :json_column
  @audit_action_column = :action
  @audit_changes_column = :audited_changes
  @audit_context_column = :audited_context
  @audit_comment_column = :comment
  @audit_version_column = :version
  @audit_user_column = :user_id
  @audit_auditable_column = :auditable
  @audit_auditable_optional = false
  @audit_associated_column = :associated
  @audit_remote_address_column = :remote_address
  @audit_request_uuid_column = :request_uuid
  @max_audits = nil
  @max_revisions = nil
  @return_self_if_no_revisions = false
  @return_self_if_no_audits = false
  @audit_error_behavior = :exception
  @revision_error_behavior = :exception
  @debounce_time = nil  # Time in seconds to merge revisions within window
end

Instance Attribute Details

#audit_action_columnObject

Returns the value of attribute audit_action_column.



22
23
24
# File 'lib/active_version/configuration.rb', line 22

def audit_action_column
  @audit_action_column
end

#audit_associated_columnObject

Returns the value of attribute audit_associated_column.



30
31
32
# File 'lib/active_version/configuration.rb', line 30

def audit_associated_column
  @audit_associated_column
end

#audit_auditable_columnObject

Returns the value of attribute audit_auditable_column.



28
29
30
# File 'lib/active_version/configuration.rb', line 28

def audit_auditable_column
  @audit_auditable_column
end

#audit_auditable_optionalObject

Returns the value of attribute audit_auditable_optional.



29
30
31
# File 'lib/active_version/configuration.rb', line 29

def audit_auditable_optional
  @audit_auditable_optional
end

#audit_changes_columnObject

Returns the value of attribute audit_changes_column.



23
24
25
# File 'lib/active_version/configuration.rb', line 23

def audit_changes_column
  @audit_changes_column
end

#audit_comment_columnObject

Returns the value of attribute audit_comment_column.



25
26
27
# File 'lib/active_version/configuration.rb', line 25

def audit_comment_column
  @audit_comment_column
end

#audit_context_columnObject

Returns the value of attribute audit_context_column.



24
25
26
# File 'lib/active_version/configuration.rb', line 24

def audit_context_column
  @audit_context_column
end

#audit_error_behaviorObject

Returns the value of attribute audit_error_behavior.



37
38
39
# File 'lib/active_version/configuration.rb', line 37

def audit_error_behavior
  @audit_error_behavior
end

#audit_remote_address_columnObject

Returns the value of attribute audit_remote_address_column.



31
32
33
# File 'lib/active_version/configuration.rb', line 31

def audit_remote_address_column
  @audit_remote_address_column
end

#audit_request_uuid_columnObject

Returns the value of attribute audit_request_uuid_column.



32
33
34
# File 'lib/active_version/configuration.rb', line 32

def audit_request_uuid_column
  @audit_request_uuid_column
end

#audit_storageObject

Returns the value of attribute audit_storage.



21
22
23
# File 'lib/active_version/configuration.rb', line 21

def audit_storage
  @audit_storage
end

#audit_user_columnObject

Returns the value of attribute audit_user_column.



27
28
29
# File 'lib/active_version/configuration.rb', line 27

def audit_user_column
  @audit_user_column
end

#audit_version_columnObject

Returns the value of attribute audit_version_column.



26
27
28
# File 'lib/active_version/configuration.rb', line 26

def audit_version_column
  @audit_version_column
end

#auditing_enabledObject

Returns the value of attribute auditing_enabled.



4
5
6
# File 'lib/active_version/configuration.rb', line 4

def auditing_enabled
  @auditing_enabled
end

#current_user_methodObject

Returns the value of attribute current_user_method.



5
6
7
# File 'lib/active_version/configuration.rb', line 5

def current_user_method
  @current_user_method
end

#debounce_timeObject

Returns the value of attribute debounce_time.



39
40
41
# File 'lib/active_version/configuration.rb', line 39

def debounce_time
  @debounce_time
end

#default_audit_classObject

Audit defaults



20
21
22
# File 'lib/active_version/configuration.rb', line 20

def default_audit_class
  @default_audit_class
end

#execution_scopeObject

Returns the value of attribute execution_scope.



9
10
11
# File 'lib/active_version/configuration.rb', line 9

def execution_scope
  @execution_scope
end

#ignored_attributesObject

Returns the value of attribute ignored_attributes.



6
7
8
# File 'lib/active_version/configuration.rb', line 6

def ignored_attributes
  @ignored_attributes
end

#ignored_default_callbacksObject

Returns the value of attribute ignored_default_callbacks.



7
8
9
# File 'lib/active_version/configuration.rb', line 7

def ignored_default_callbacks
  @ignored_default_callbacks
end

#max_auditsObject

Returns the value of attribute max_audits.



33
34
35
# File 'lib/active_version/configuration.rb', line 33

def max_audits
  @max_audits
end

#max_revisionsObject

Returns the value of attribute max_revisions.



34
35
36
# File 'lib/active_version/configuration.rb', line 34

def max_revisions
  @max_revisions
end

#return_self_if_no_auditsObject

Returns the value of attribute return_self_if_no_audits.



36
37
38
# File 'lib/active_version/configuration.rb', line 36

def return_self_if_no_audits
  @return_self_if_no_audits
end

#return_self_if_no_revisionsObject

Returns the value of attribute return_self_if_no_revisions.



35
36
37
# File 'lib/active_version/configuration.rb', line 35

def return_self_if_no_revisions
  @return_self_if_no_revisions
end

#revision_error_behaviorObject

Returns the value of attribute revision_error_behavior.



38
39
40
# File 'lib/active_version/configuration.rb', line 38

def revision_error_behavior
  @revision_error_behavior
end

#revision_foreign_key_suffixObject

Returns the value of attribute revision_foreign_key_suffix.



17
18
19
# File 'lib/active_version/configuration.rb', line 17

def revision_foreign_key_suffix
  @revision_foreign_key_suffix
end

#revision_version_columnObject

Revision defaults



16
17
18
# File 'lib/active_version/configuration.rb', line 16

def revision_version_column
  @revision_version_column
end

#store_synthesized_enumsObject

Returns the value of attribute store_synthesized_enums.



8
9
10
# File 'lib/active_version/configuration.rb', line 8

def store_synthesized_enums
  @store_synthesized_enums
end

#translation_default_localeObject

Returns the value of attribute translation_default_locale.



13
14
15
# File 'lib/active_version/configuration.rb', line 13

def translation_default_locale
  @translation_default_locale
end

#translation_locale_columnObject

Translation defaults



12
13
14
# File 'lib/active_version/configuration.rb', line 12

def translation_locale_column
  @translation_locale_column
end

Instance Method Details

#validate!Object

Validate configuration



82
83
84
85
86
# File 'lib/active_version/configuration.rb', line 82

def validate!
  validate_storage_type!
  validate_execution_scope!
  validate_column_names!
end