|
ILIAS
trunk Revision v13.0_alpha-62-g3b72d83f2e5
|
Stores what celtic/lti keeps of the platforms that launch ILIAS in the lti2_* tables of ILIAS, through ilDB. More...
Inheritance diagram for ilLTIDataConnector:
Collaboration diagram for ilLTIDataConnector:Public Member Functions | |
| __construct () | |
| loadPlatform (Platform $platform) | |
| By record id, by issuer, client id and deployment id for an LTI Advantage launch, or by consumer key for an LTI 1.1 launch. More... | |
| savePlatform (Platform $platform) | |
| A launch only updates what the platform tells about itself, and the public key celtic/lti fetched from the key set of an LTI Advantage platform, which it keeps with its kid. More... | |
| loadContext (Context $context) | |
| saveContext (Context $context) | |
| loadResourceLink (ResourceLink $resourceLink) | |
| By record id, or by its id at the platform within its context or directly within its platform. More... | |
| saveResourceLink (ResourceLink $resourceLink) | |
| loadUserResult (UserResult $userresult) | |
| saveUserResult (UserResult $userresult) | |
| loadPlatformNonce (PlatformNonce $nonce) | |
| A nonce is found while it has not expired, which is what protects against replayed requests. More... | |
| savePlatformNonce (PlatformNonce $nonce) | |
| deletePlatformNonce (PlatformNonce $nonce) | |
| loadAccessToken (AccessToken $accessToken) | |
| The access token ILIAS got from an LTI Advantage platform for its services, one per platform. More... | |
| saveAccessToken (AccessToken $accessToken) | |
Private Member Functions | |
| fetchAdvantagePlatform (Platform $platform) | |
| The registration of the platform (ref_id 0) comes first. More... | |
| fetch (string $table, string $column, int|string $value, string $type, string $order_by='') | |
| decodeSettings (?string $settings) | |
| Earlier releases stored some settings serialized instead of as JSON. More... | |
| toTimestamp (?string $date) | |
Private Attributes | |
| const string | DATE_FORMAT = 'Y-m-d H:i:s' |
| readonly ilDBInterface | $database |
Stores what celtic/lti keeps of the platforms that launch ILIAS in the lti2_* tables of ILIAS, through ilDB.
The library decides by the data whether a launch is LTI 1.1 or LTI Advantage.
The tables are the ones of the library with three differences: the ids come from sequences, the id of lti2_user_result is user_pk, and a resource link always keeps its platform (consumer_pk), which the learning progress sent back to the platform relies on.
Only what a launch and the outcome services use is implemented. The rest of the methods of the library keep their defaults, which store nothing.
Definition at line 45 of file class.ilLTIDataConnector.php.
| ilLTIDataConnector::__construct | ( | ) |
Definition at line 51 of file class.ilLTIDataConnector.php.
References $DIC, ILIAS\GlobalScreen\Provider\__construct(), ILIAS\Repository\database(), and ilLTILibraryLogger\register().
Here is the call graph for this function:
|
private |
Earlier releases stored some settings serialized instead of as JSON.
| string | null | $settings |
Definition at line 428 of file class.ilLTIDataConnector.php.
References $settings.
Referenced by loadContext(), loadPlatform(), and loadResourceLink().
Here is the caller graph for this function:| ilLTIDataConnector::deletePlatformNonce | ( | PlatformNonce | $nonce | ) |
Definition at line 331 of file class.ilLTIDataConnector.php.
References ILIAS\Repository\database().
Here is the call graph for this function:
|
private |
| string | $table | |
| string | $column | |
| int | string | $value | |
| string | $type | |
| string | $order_by | which row wins when several match |
Definition at line 411 of file class.ilLTIDataConnector.php.
References ILIAS\Repository\database().
Referenced by loadAccessToken(), loadContext(), loadPlatform(), loadResourceLink(), and loadUserResult().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
The registration of the platform (ref_id 0) comes first.
Earlier releases registered an LTI Advantage platform once per released object (ref_id > 0): those rows are the fallback. The library leaves out client id and deployment id when the request does not give them.
| Platform | $platform |
Definition at line 385 of file class.ilLTIDataConnector.php.
References ILIAS\Repository\database().
Referenced by loadPlatform().
Here is the call graph for this function:
Here is the caller graph for this function:| ilLTIDataConnector::loadAccessToken | ( | AccessToken | $accessToken | ) |
The access token ILIAS got from an LTI Advantage platform for its services, one per platform.
Definition at line 345 of file class.ilLTIDataConnector.php.
References $scopes, fetch(), and toTimestamp().
Here is the call graph for this function:| ilLTIDataConnector::loadContext | ( | Context | $context | ) |
Definition at line 134 of file class.ilLTIDataConnector.php.
References ILIAS\Repository\database(), decodeSettings(), fetch(), and toTimestamp().
Here is the call graph for this function:| ilLTIDataConnector::loadPlatform | ( | Platform | $platform | ) |
By record id, by issuer, client id and deployment id for an LTI Advantage launch, or by consumer key for an LTI 1.1 launch.
Definition at line 65 of file class.ilLTIDataConnector.php.
References decodeSettings(), fetch(), fetchAdvantagePlatform(), ILIAS\Repository\int(), and toTimestamp().
Here is the call graph for this function:| ilLTIDataConnector::loadPlatformNonce | ( | PlatformNonce | $nonce | ) |
A nonce is found while it has not expired, which is what protects against replayed requests.
ILIAS as platform has no record of its own, so the nonces of the messages tools send it are kept under 0.
Definition at line 305 of file class.ilLTIDataConnector.php.
References ILIAS\Repository\database(), and ILIAS\UI\examples\Symbol\Glyph\Date\date().
Here is the call graph for this function:| ilLTIDataConnector::loadResourceLink | ( | ResourceLink | $resourceLink | ) |
By record id, or by its id at the platform within its context or directly within its platform.
Definition at line 189 of file class.ilLTIDataConnector.php.
References ILIAS\Repository\database(), decodeSettings(), fetch(), ILIAS\Repository\int(), and toTimestamp().
Here is the call graph for this function:| ilLTIDataConnector::loadUserResult | ( | UserResult | $userresult | ) |
Definition at line 253 of file class.ilLTIDataConnector.php.
References ILIAS\Repository\database(), fetch(), and toTimestamp().
Here is the call graph for this function:| ilLTIDataConnector::saveAccessToken | ( | AccessToken | $accessToken | ) |
Definition at line 362 of file class.ilLTIDataConnector.php.
References ILIAS\Repository\database(), ILIAS\UI\examples\Symbol\Glyph\Date\date(), and ILIAS\Repository\int().
Here is the call graph for this function:| ilLTIDataConnector::saveContext | ( | Context | $context | ) |
Definition at line 159 of file class.ilLTIDataConnector.php.
References ILIAS\Repository\database(), and ILIAS\UI\examples\Symbol\Glyph\Date\date().
Here is the call graph for this function:| ilLTIDataConnector::savePlatform | ( | Platform | $platform | ) |
A launch only updates what the platform tells about itself, and the public key celtic/lti fetched from the key set of an LTI Advantage platform, which it keeps with its kid.
The platforms are defined in the administration and when an object is released, never here.
Definition at line 111 of file class.ilLTIDataConnector.php.
References $settings, ILIAS\Repository\database(), and ILIAS\UI\examples\Symbol\Glyph\Date\date().
Here is the call graph for this function:| ilLTIDataConnector::savePlatformNonce | ( | PlatformNonce | $nonce | ) |
Definition at line 320 of file class.ilLTIDataConnector.php.
References ILIAS\Repository\database(), and ILIAS\UI\examples\Symbol\Glyph\Date\date().
Here is the call graph for this function:| ilLTIDataConnector::saveResourceLink | ( | ResourceLink | $resourceLink | ) |
Definition at line 224 of file class.ilLTIDataConnector.php.
References ILIAS\Repository\database(), ILIAS\UI\examples\Symbol\Glyph\Date\date(), and ILIAS\Repository\int().
Here is the call graph for this function:| ilLTIDataConnector::saveUserResult | ( | UserResult | $userresult | ) |
Definition at line 276 of file class.ilLTIDataConnector.php.
References ILIAS\Repository\database(), and ILIAS\UI\examples\Symbol\Glyph\Date\date().
Here is the call graph for this function:
|
private |
Definition at line 441 of file class.ilLTIDataConnector.php.
Referenced by loadAccessToken(), loadContext(), loadPlatform(), loadResourceLink(), and loadUserResult().
Here is the caller graph for this function:
|
private |
Definition at line 49 of file class.ilLTIDataConnector.php.
|
private |
Definition at line 47 of file class.ilLTIDataConnector.php.