lib/active_samba_ldap/base.rb in activesambaldap-0.0.3 vs lib/active_samba_ldap/base.rb in activesambaldap-0.0.4

- old
+ new

@@ -1,114 +1,115 @@ require 'active_samba_ldap/reloadable' module ActiveSambaLdap class Error < StandardError + include ActiveSambaLdap::GetTextSupport end - class RequiredVariableIsNotSet < Error - attr_reader :name - def initialize(name) - @name = name - super("required variable '#{name}' is not set") - end - end - - class RequiredVariablesAreNotSet < RequiredVariableIsNotSet + class MissingRequiredVariableError < Error attr_reader :names def initialize(names) + names = names.to_a @names = names - super("required variables '#{names.join(', ')}' are not set") + super(n_("required variable is not set: %s", + "required variables are not set: %s", + names.size) % names.join(', ')) end + + def name + @names.first + end end class UidNumberAlreadyExists < Error attr_reader :number def initialize(number) @number = number - super("uid number '#{@number}' already exists") + super(_("uid number already exists: %s") % number) end end class GroupDoesNotExist < Error attr_reader :name def initialize(name) @name = name - super("group '#{@name}' doesn't exist") + super(_("group doesn't exist: %s") % name) end end class GidNumberAlreadyExists < Error attr_reader :number def initialize(number) @number = number - super("gid number '#{@number}' already exists") + super(_("gid number already exists: %s") % number) end end class GidNumberDoesNotExist < Error attr_reader :number def initialize(number) @number = number - super("gid number '#{@number}' doesn't exist") + super(_("gid number doesn't exist: %s") % number) end end class GroupDoesNotHaveSambaSID < Error attr_reader :number def initialize(number) @number = number - super("sambaSID attribute doesn't exist for gid number '#{@number}'") + super(_("sambaSID attribute doesn't exist for gid number '%s'") % number) end end class CanNotChangePrimaryGroup < Error attr_reader :group, :members def initialize(group, members) @group = group @members = members - message = "cannot change primary group from '#{group}' to other group " - message << "due to no other belonged groups: #{members.join(', ')}" - super(message) + format = _("cannot change primary group from '%s' to other group " \ + "due to no other belonged groups: %s") + super(format % [group, members.join(', ')]) end end class PrimaryGroupCanNotBeDestroyed < Error attr_reader :group, :members def initialize(group, members) @group = group @members = members - message = "cannot destroy group '#{group}' due to members who belong " - message << "to the group as primary group: #{members.join(', ')}" - super(message) + format = _("cannot destroy group '%s' due to members who belong " \ + "to the group as primary group: %s") + super(format % [group, members.join(', ')]) end end class InvalidConfigurationFormatError < Error attr_reader :file, :location, :detail def initialize(file, location, detail) @file = file @location = location @detail = detail - super("found invalid configuration format at #{@file}:#{@location}" + - ": #{@detail}") + format = _("found invalid configuration format at %s:%s: %s") + super(format % [file, location, detail]) end end class InvalidConfigurationValueError < Error attr_reader :name, :value, :detail def initialize(name, value, detail) @name = name @value = value @detail = detail - super("the value of #{@name} '#{@value.inspect}' is invalid: #{@detail}") + format = _("the value of %s '%s' is invalid: %s") + super(format % [name, value.inspect, detail]) end end class NotSambaAavialableError < Error attr_reader :object def initialize(object) @object = object - super("#{@object.inspect} is not Samba available") + super(_("%s is not Samba available") % [object.inspect]) end end class Base < ActiveLdap::Base include Reloadable