def disconnect(self, obj, trait_name):

        extension_registry = self._get_extension_registry(obj)

        listener = self._obj_to_listeners_map[obj].get(trait_name)
        if listener is not None:
            # Remove the listener from the extension registry.
            extension_registry.remove_extension_point_listener(
                listener, self.id
            )

            # Clean up.
            del self._obj_to_listeners_map[obj][trait_name]

        return

    ###########################################################################
    # Private interface.
    ###########################################################################
Disconnect the extension point from a trait on an object.
dataset/ETHPy150Open enthought/envisage/envisage/extension_point.py/ExtensionPoint.disconnect