Returns model instance of plugin point or plugin, depending from which
        class this methos is called.

        Example::

            plugin_model_instance = MyPlugin.get_model()
            plugin_model_instance = MyPluginPoint.get_model('plugin-name')
            plugin_point_model_instance = MyPluginPoint.get_model()

def get_model(cls, name=None, status=ENABLED):
        """
        Returns model instance of plugin point or plugin, depending from which
        class this methos is called.

        Example::

            plugin_model_instance = MyPlugin.get_model()
            plugin_model_instance = MyPluginPoint.get_model('plugin-name')
            plugin_point_model_instance = MyPluginPoint.get_model()

        """
        ppath = cls.get_pythonpath()
        if is_plugin_point(cls):
            if name is not None:
                kwargs = {}
                if status is not None:
                    kwargs['status'] = status
                return Plugin.objects.get(point__pythonpath=ppath,
                                          name=name, **kwargs)
            else:
                return PluginPointModel.objects.get(pythonpath=ppath)
        else:
            return Plugin.objects.get(pythonpath=ppath)