public function uninstall_plugin($component, progress_trace $progress) {

        $pluginfo = $this->get_plugin_info($component);

        if (is_null($pluginfo)) {
            return false;
        }

        // Give the pluginfo class a chance to execute some steps.
        $result = $pluginfo->uninstall($progress);
        if (!$result) {
            return false;
        }

        // Call the legacy core function to uninstall the plugin.
        ob_start();
        uninstall_plugin($pluginfo->type, $pluginfo->name);
        $progress->output(ob_get_clean());

        return true;
    }
public function uninstall_plugin($component, progress_trace $progress) {

        $pluginfo = $this->get_plugin_info($component);

        if (is_null($pluginfo)) {
            return false;
        }

        // Give the pluginfo class a chance to execute some steps.
        $result = $pluginfo->uninstall($progress);
        if (!$result) {
            return false;
        }

        // Call the legacy core function to uninstall the plugin.
        ob_start();
        uninstall_plugin($pluginfo->type, $pluginfo->name);
        $progress->output(ob_get_clean());

        return true;
    }
public function uninstall_plugin ( $ component , progress_trace $ progress ) { $ pluginfo = $ this -> get_plugin_info ( $ component ) ; if ( is_null ( $ pluginfo ) ) { return false ; } // Give the pluginfo class a chance to execute some steps. $ result = $ pluginfo -> uninstall ( $ progress ) ; if ( ! $ result ) { return false ; } // Call the legacy core function to uninstall the plugin. ob_start ( ) ; uninstall_plugin ( $ pluginfo -> type , $ pluginfo -> name ) ; $ progress -> output ( ob_get_clean ( ) ) ; return true ; }
Uninstall the given plugin.

Automatically cleans-up all remaining configuration data, log records, events,
files from the file pool etc.

In the future, the functionality of {@link uninstall_plugin()} function may be moved
into this method and all the code should be refactored to use it. At the moment, we
mimic this future behaviour by wrapping that function call.

@param string $component
@param progress_trace $progress traces the process
@return bool true on success, false on errors/problems
Uninstall the given plugin .