main
1# frozen_string_literal: true
2
3require 'saml/kit/version'
4
5require 'active_model'
6require 'active_support/core_ext/date/calculations'
7require 'active_support/core_ext/hash/conversions'
8require 'active_support/core_ext/hash/indifferent_access'
9require 'active_support/core_ext/numeric/time'
10require 'active_support/deprecation'
11require 'active_support/duration'
12require 'forwardable'
13require 'logger'
14require 'net/hippie'
15require 'nokogiri'
16require 'securerandom'
17require 'uri'
18require 'xml/kit'
19
20require 'saml/kit/concerns/buildable'
21require 'saml/kit/concerns/requestable'
22require 'saml/kit/concerns/respondable'
23require 'saml/kit/concerns/serializable'
24require 'saml/kit/concerns/translatable'
25require 'saml/kit/concerns/trustable'
26require 'saml/kit/concerns/validatable'
27require 'saml/kit/concerns/xml_parseable'
28require 'saml/kit/concerns/xml_templatable'
29require 'saml/kit/concerns/xsd_validatable'
30
31require 'saml/kit/builders'
32require 'saml/kit/namespaces'
33require 'saml/kit/document'
34
35require 'saml/kit/assertion'
36require 'saml/kit/attribute_statement'
37require 'saml/kit/authentication_request'
38require 'saml/kit/bindings'
39require 'saml/kit/conditions'
40require 'saml/kit/configuration'
41require 'saml/kit/default_registry'
42require 'saml/kit/logout_response'
43require 'saml/kit/logout_request'
44require 'saml/kit/metadata'
45require 'saml/kit/deprecated/metadata'
46require 'saml/kit/null_assertion'
47require 'saml/kit/organization'
48require 'saml/kit/parser'
49require 'saml/kit/composite_metadata'
50require 'saml/kit/response'
51require 'saml/kit/identity_provider_metadata'
52require 'saml/kit/invalid_document'
53require 'saml/kit/service_provider_metadata'
54require 'saml/kit/signature'
55
56I18n.load_path +=
57 Dir[File.expand_path('kit/locales/*.yml', File.dirname(__FILE__))]
58
59module Saml
60 # This module is the container for all classes/modules in this gem.
61 module Kit
62 # This class provides a global access to the
63 # default SAML configuration. This is useful
64 # for long running processes.
65 class << self
66 def configuration
67 @configuration ||= Saml::Kit::Configuration.new
68 end
69
70 def configure
71 yield configuration
72 end
73
74 def logger
75 configuration.logger
76 end
77
78 def registry
79 configuration.registry
80 end
81
82 def deprecate(message)
83 @deprecation ||= ActiveSupport::Deprecation.new('2.0.0', 'saml-kit')
84 @deprecation.deprecation_warning(message)
85 end
86 end
87 end
88end