def MI_getInstance(self,
                       env,
                       instanceName,
                       propertyList,
                       cimClass):
        # pylint: disable=invalid-name
        """Return a specific CIM instance

        Implements the WBEM operation GetInstance in terms
        of the get_instance method.  A derived class will not normally
        override this method.

        """

        logger = env.get_logger()
        logger.log_debug('CIMProvider MI_getInstance called...')
        keyNames = get_keys_from_class(cimClass)
        plist = None
        if propertyList is not None:
            lkns = [kn.lower() for kn in keyNames]
            props = pywbem.NocaseDict()
            plist = [s.lower() for s in propertyList]
            pklist = plist + lkns
            [props.__setitem__(p.name, p) for p in cimClass.properties.values()
             if p.name.lower() in pklist]
        else:
            props = cimClass.properties
        _strip_quals(props)
        model = pywbem.CIMInstance(classname=instanceName.classname,
                                   properties=props,
                                   path=instanceName)
        for k, v in instanceName.keybindings.items():
            type_ = cimClass.properties[k].type

            if type_ != 'reference':
                v = val = pywbem.tocimobj(_type, v)
            model.__setitem__(k, pywbem.CIMProperty(name=k, type=type_,
                                                    value=v))

        rval = self.get_instance(env=env,
                                 model=model,
                                 cim_class=cimClass)
        if self.filter_results:
            filter_instance(rval, plist)
        logger.log_debug('CIMProvider MI_getInstance returning')
        if rval is None:
            raise pywbem.CIMError(pywbem.CIM_ERR_NOT_FOUND, "")
        return rval
Return a specific CIM instance

        Implements the WBEM operation GetInstance in terms
        of the get_instance method.  A derived class will not normally
        override this method.