MDL-66999 theme_boost: @extend remove extends for grades
[moodle.git] / grade / grading / classes / privacy / gradingform_provider_v2.php
CommitLineData
f3a6d9bb
AG
1<?php
2// This file is part of Moodle - http://moodle.org/
3//
4// Moodle is free software: you can redistribute it and/or modify
5// it under the terms of the GNU General Public License as published by
6// the Free Software Foundation, either version 3 of the License, or
7// (at your option) any later version.
8//
9// Moodle is distributed in the hope that it will be useful,
10// but WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12// GNU General Public License for more details.
13//
14// You should have received a copy of the GNU General Public License
15// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
16
17/**
18 * Privacy class for requesting user data.
19 *
20 * @package core_grading
21 * @copyright 2018 Adrian Greeve <adriangreeve.com>
22 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
23 */
24namespace core_grading\privacy;
25
26defined('MOODLE_INTERNAL') || die();
27
28interface gradingform_provider_v2 extends
c96cd711
AN
29 \core_privacy\local\request\plugin\subsystem_provider,
30 \core_privacy\local\request\shared_userlist_provider
31{
f3a6d9bb
AG
32
33 /**
34 * Export user data relating to an instance ID.
35 *
36 * @param \context $context Context to use with the export writer.
37 * @param int $instanceid The instance ID to export data for.
38 * @param array $subcontext The directory to export this data to.
39 */
40 public static function export_gradingform_instance_data(\context $context, int $instanceid, array $subcontext);
41
42 /**
43 * Deletes all user data related to the provided instance IDs.
44 *
45 * @param array $instanceids The instance IDs to delete information from.
46 */
47 public static function delete_gradingform_for_instances(array $instanceids);
48}