Exception: PgSqlTriggers::PermissionError

Inherits:
Error
  • Object
show all
Defined in:
lib/pg_sql_triggers/errors.rb

Overview

Error raised when permission checks fail

Examples:

raise PgSqlTriggers::PermissionError.new(
  "Permission denied: enable_trigger requires Operator level access",
  error_code: "PERMISSION_DENIED",
  recovery_suggestion: "Contact your administrator to request Operator or Admin access",
  context: { action: :enable_trigger, required_role: "Operator" }
)

Instance Attribute Summary

Attributes inherited from Error

#context, #error_code, #recovery_suggestion

Instance Method Summary collapse

Methods inherited from Error

#initialize, #to_h, #user_message

Constructor Details

This class inherits a constructor from PgSqlTriggers::Error

Instance Method Details

#default_error_codeObject



66
67
68
# File 'lib/pg_sql_triggers/errors.rb', line 66

def default_error_code
  "PERMISSION_DENIED"
end

#default_messageObject



70
71
72
# File 'lib/pg_sql_triggers/errors.rb', line 70

def default_message
  "Permission denied for this operation"
end

#default_recovery_suggestionObject



74
75
76
77
78
79
80
81
# File 'lib/pg_sql_triggers/errors.rb', line 74

def default_recovery_suggestion
  if context[:required_role]
    "This operation requires #{context[:required_role]} level access. " \
      "Contact your administrator to request appropriate permissions."
  else
    "This operation requires elevated permissions. Contact your administrator."
  end
end