Example #1
0
  def from_obj (cls, obj, cred=None):
    obj = adsi._get_good_ret (obj)
    klass = obj.Class.encode ("ascii")
    class_name = "%s" % klass[0].upper () + klass[1:]

    mixin_class_name = "_" + class_name
    if mixin_class_name in _mixins:
      bases = [_mixins[mixin_class_name], cls]
    else:
      bases = [cls]
    if class_name not in cls.klasses:
      cls.klasses[class_name] = type (class_name, tuple (bases), dict (obj=obj, cred=cred))
    return cls.klasses[class_name] (obj)
Example #2
0
 def _get_object (self, rdn):
   container = exc.wrapped (self.com_object.QueryInterface, adsi.IID_IADsContainer)
   obj = exc.wrapped (container.GetObject, None, rdn)
   return adsi._get_good_ret (obj)
Example #3
0
 def __init__(self, obj, cred=None):
     utils._set(self, "com_object", adsi._get_good_ret(obj))
     utils._set(self, "cred", cred)