class Contentful::Moderator::Config
Constants
- DEFAULT_ENDPOINT
- DEFAULT_PORT
Attributes
config[R]
Public Class Methods
load(path)
click to toggle source
# File lib/contentful/moderator/config.rb, line 12 def self.load(path) new(Hashie::Mash.load(path)) end
new(config = {})
click to toggle source
# File lib/contentful/moderator/config.rb, line 16 def initialize(config = {}) @config = Hashie::Mash.new(config) @config.port = (ENV.key?('PORT') ? ENV['PORT'].to_i : DEFAULT_PORT) unless @config.port? @config.endpoint = DEFAULT_ENDPOINT unless @config.endpoint? fail ':content_types not set' unless @config.content_types? && !@config.content_types.empty? fail ':authors not set' unless @config.authors? && !@config.authors.empty? fail ':editors not set' unless @config.editors? && !@config.editors.empty? fail ':mail_origin not set' unless @config.mail_origin? fail ':mailer_settings not properly configured' unless mailer_configured? configure_mailer end
Public Instance Methods
configure_mailer()
click to toggle source
# File lib/contentful/moderator/config.rb, line 89 def configure_mailer this = self Mail.defaults do delivery_method this.config.mailer_settings.connection_type.to_sym, { address: this.config.mailer_settings.address, port: this.config.mailer_settings.port, domain: this.config.mailer_settings.domain, user_name: this.mailer_username, password: this.mailer_password, authentication: this.config.mailer_settings.authentication, enable_starttls_auto: this.config.mailer_settings.enable_starttls_auto, openssl_verify_mode: this.config.mailer_settings.openssl_verify_mode, ssl: this.config.mailer_settings.ssl, tls: this.config.mailer_settings.tls } end end
content_types()
click to toggle source
# File lib/contentful/moderator/config.rb, line 47 def content_types @config.content_types end
editors()
click to toggle source
# File lib/contentful/moderator/config.rb, line 43 def editors @config.editors end
endpoint()
click to toggle source
# File lib/contentful/moderator/config.rb, line 35 def endpoint @config.endpoint end
mail_origin()
click to toggle source
# File lib/contentful/moderator/config.rb, line 51 def mail_origin @config.mail_origin end
mailer_configured?()
click to toggle source
# File lib/contentful/moderator/config.rb, line 69 def mailer_configured? return false unless @config.mailer_settings? return false unless @config.mailer_settings.connection_type return false unless @config.mailer_settings.address return false unless @config.mailer_settings.port return false unless @config.mailer_settings.domain # Optionals - Explicitly left here as reminder # # return false unless @config.mailer_settings.user_name # return false unless @config.mailer_settings.password # return false unless @config.mailer_settings.authentication # return false unless @config.mailer_settings.enable_starttls_auto # return false unless @config.mailer_settings.openssl_verify_mode # return false unless @config.mailer_settings.ssl # return false unless @config.mailer_settings.tls true end
mailer_password()
click to toggle source
# File lib/contentful/moderator/config.rb, line 64 def mailer_password return ENV['ENV_MAILER_PASSWORD'] if config.mailer_settings.password == "'env_mailer_password'" config.mailer_settings.password end
mailer_settings()
click to toggle source
# File lib/contentful/moderator/config.rb, line 55 def mailer_settings @config.mailer_settings end
mailer_username()
click to toggle source
# File lib/contentful/moderator/config.rb, line 59 def mailer_username return ENV['ENV_MAILER_USERNAME'] if config.mailer_settings.user_name == "'env_mailer_username'" config.mailer_settings.user_name end
port()
click to toggle source
# File lib/contentful/moderator/config.rb, line 31 def port @config.port end