public AssocGroupComponent(ManagementObject assocInstance, ManagementObject sourceObj)
        {
            sourceInst = sourceObj;

            associationPath  = assocInstance.Path.Path;
            associationClass = assocInstance.Path.ClassName;

            //now, inspect assocInstance object to find target role and path
            string targetNamespacePath = WmiHelper.GetAssocTargetNamespacePath(assocInstance, sourceObj.Path);
            int    colon = targetNamespacePath.IndexOf(":");

            if (colon >= 0)
            {
                targetClass = targetNamespacePath.Substring(colon + 1);
                targetNS    = targetNamespacePath.Substring(0, colon + 1);
            }
            else
            {
                targetClass = targetNamespacePath;
                targetNS    = sourceObj.Path.NamespacePath;
            }


            targetRole = WmiHelper.GetAssocTargetRole(assocInstance, sourceObj.Path);
        }
        public AssocGroupComponent(ISWbemObject assocInstance, ISWbemObject sourceObj)
        {
            sourceInst = sourceObj;

            associationPath  = assocInstance.Path_.Path;
            associationClass = assocInstance.Path_.Class;

            //now, inspect assocInstance object to find target role and path
            targetClass = WmiHelper.GetAssocTargetClass(assocInstance, sourceObj.Path_);

            targetRole = WmiHelper.GetAssocTargetRole(assocInstance, sourceObj.Path_);
        }