class ActiveDirectory::DirectoryObject

Public Class Methods

fields(fields = {}) click to toggle source
# File lib/active_directory/directory_object.rb, line 36
def self.fields(fields = {})
  fields
end
new(options={}) click to toggle source
# File lib/active_directory/directory_object.rb, line 4
def initialize(options={})
  self.class.fields.each do |k, v|
    self.class.__send__(:attr_accessor, v)
    if options[k.to_sym].kind_of?(Array)
      self.__send__("#{v}=", options[k.to_sym].first)
    else
      self.__send__("#{v}=", options[k.to_sym])
    end
  end
end

Public Instance Methods

create() click to toggle source
# File lib/active_directory/directory_object.rb, line 27
def create
  puts build_create_data
  Client.add(@dn, build_create_data)
end
delete() click to toggle source
# File lib/active_directory/directory_object.rb, line 32
def delete
  Client.delete(@dn)
end
rename(new_dn) click to toggle source
# File lib/active_directory/directory_object.rb, line 22
def rename(new_dn)
  Client.rename(@dn, new_dn)
  #puts "test"
end
update() click to toggle source
# File lib/active_directory/directory_object.rb, line 15
def update
  self.class.fields.each do |k, v|
    # puts k, instance_variable_get("@#{v}")
    Client.update_attribute(@dn, k, instance_variable_get("@#{v}"))
  end
end