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