1291 lines
64 KiB
HTML
1291 lines
64 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<title>Documentation</title>
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<base href="../">
|
||
<link rel="icon" href="images/favicon.ico"/>
|
||
<link rel="stylesheet" href="css/normalize.css">
|
||
<link rel="stylesheet" href="css/base.css">
|
||
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||
<link rel="stylesheet" href="css/template.css">
|
||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||
<script src="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/js/all.min.js" integrity="sha256-0vuk8LXoyrmCjp1f0O300qo1M75ZQyhH9X3J6d+scmk=" crossorigin="anonymous"></script>
|
||
<script src="js/search.js"></script>
|
||
<script defer src="js/searchIndex.js"></script>
|
||
</head>
|
||
<body id="top">
|
||
<header class="phpdocumentor-header phpdocumentor-section">
|
||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||
<i class="fas fa-bars"></i>
|
||
</label>
|
||
<section data-search-form class="phpdocumentor-search">
|
||
<label>
|
||
<span class="visually-hidden">Search for</span>
|
||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||
</svg>
|
||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||
</label>
|
||
</section>
|
||
|
||
<nav class="phpdocumentor-topnav">
|
||
<ul class="phpdocumentor-topnav__menu">
|
||
</ul>
|
||
</nav>
|
||
</header>
|
||
|
||
<main class="phpdocumentor">
|
||
<div class="phpdocumentor-section">
|
||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||
Menu
|
||
</label>
|
||
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
|
||
|
||
<section class="phpdocumentor-sidebar__category">
|
||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/taproot.html"><abbr title="\Taproot">Taproot</abbr></a></h4>
|
||
<ul class="phpdocumentor-list">
|
||
<li><a href="namespaces/taproot-indieauth.html"><abbr title="\Taproot\IndieAuth">IndieAuth</abbr></a></li>
|
||
</ul>
|
||
</section>
|
||
|
||
|
||
<section class="phpdocumentor-sidebar__category">
|
||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||
</section>
|
||
|
||
<section class="phpdocumentor-sidebar__category">
|
||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||
</section>
|
||
</aside>
|
||
|
||
<div class="phpdocumentor-column -eight phpdocumentor-content">
|
||
<ul class="phpdocumentor-breadcrumbs">
|
||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/taproot.html">Taproot</a></li>
|
||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/taproot-indieauth.html">IndieAuth</a></li>
|
||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/taproot-indieauth-storage.html">Storage</a></li>
|
||
</ul>
|
||
|
||
<article class="phpdocumentor-element -class">
|
||
<h2 class="phpdocumentor-content__title">
|
||
FilesystemJsonStorage
|
||
|
||
|
||
|
||
<span class="phpdocumentor-element__implements">
|
||
implements
|
||
<a href="classes/Taproot-IndieAuth-Storage-TokenStorageInterface.html"><abbr title="\Taproot\IndieAuth\Storage\TokenStorageInterface">TokenStorageInterface</abbr></a>, <abbr title="\Psr\Log\LoggerAwareInterface">LoggerAwareInterface</abbr> </span>
|
||
|
||
</h2>
|
||
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">26</span>
|
||
</aside>
|
||
|
||
<p class="phpdocumentor-summary">Filesystem JSON Token Storage</p>
|
||
|
||
<section class="phpdocumentor-description"><p>An implementation of <code class="prettyprint">TokenStorageInterface</code> which stores authorization codes
|
||
and access tokens in the filesystem as JSON files, and supports custom access
|
||
token lifetimes.</p>
|
||
<p>This is intended as a default, example implementation with minimal requirements.
|
||
In practise, most people should probably be using an SQLite3 version of this
|
||
which I haven’t written yet. I haven’t extensively documented this class, as it
|
||
will likely be superceded by the SQLite version.</p>
|
||
</section>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<h3 id="interfaces_class_traits">
|
||
Interfaces, Classes and Traits
|
||
<a href="#interfaces_class_traits" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h3>
|
||
|
||
<dl class="phpdocumentor-table-of-contents">
|
||
<dt class="phpdocumentor-table-of-contents__entry -interface"><a href="classes/Taproot-IndieAuth-Storage-TokenStorageInterface.html"><abbr title="\Taproot\IndieAuth\Storage\TokenStorageInterface">TokenStorageInterface</abbr></a></dt>
|
||
<dd>Token Storage Interface</dd>
|
||
<dt class="phpdocumentor-table-of-contents__entry -interface"><abbr title="\Psr\Log\LoggerAwareInterface">LoggerAwareInterface</abbr></dt>
|
||
<dd></dd>
|
||
|
||
|
||
</dl>
|
||
|
||
|
||
<h3 id="toc">
|
||
Table of Contents
|
||
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h3>
|
||
|
||
<dl class="phpdocumentor-table-of-contents">
|
||
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#constant_DEFAULT_ACCESS_TOKEN_TTL">DEFAULT_ACCESS_TOKEN_TTL</a>
|
||
<span>
|
||
= 60 * 60 * 24 * 7 </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#constant_DEFAULT_AUTH_CODE_TTL">DEFAULT_AUTH_CODE_TTL</a>
|
||
<span>
|
||
= 60 * 5 </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#constant_TOKEN_LENGTH">TOKEN_LENGTH</a>
|
||
<span>
|
||
= 64 </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#property_accessTokenTtl">$accessTokenTtl</a>
|
||
<span>
|
||
: int </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#property_authCodeTtl">$authCodeTtl</a>
|
||
<span>
|
||
: int </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#property_logger">$logger</a>
|
||
<span>
|
||
: <abbr title="\Psr\Log\LoggerInterface">LoggerInterface</abbr> </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#property_path">$path</a>
|
||
<span>
|
||
: string </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#property_secret">$secret</a>
|
||
<span>
|
||
: string </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method___construct">__construct()</a>
|
||
<span>
|
||
: mixed </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_createAuthCode">createAuthCode()</a>
|
||
<span>
|
||
: string|null </span>
|
||
</dt>
|
||
<dd>Create Authorization Code</dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_delete">delete()</a>
|
||
<span>
|
||
: bool </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_deleteExpiredTokens">deleteExpiredTokens()</a>
|
||
<span>
|
||
: int </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_exchangeAuthCodeForAccessToken">exchangeAuthCodeForAccessToken()</a>
|
||
<span>
|
||
: array<string|int, mixed>|null </span>
|
||
</dt>
|
||
<dd>Exchange Authorization Code for Access Token</dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_get">get()</a>
|
||
<span>
|
||
: array<string|int, mixed>|null </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_getAccessToken">getAccessToken()</a>
|
||
<span>
|
||
: array<string|int, mixed>|null </span>
|
||
</dt>
|
||
<dd>Get Access Token</dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_getPath">getPath()</a>
|
||
<span>
|
||
: string </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_put">put()</a>
|
||
<span>
|
||
: bool </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_revokeAccessToken">revokeAccessToken()</a>
|
||
<span>
|
||
: bool </span>
|
||
</dt>
|
||
<dd>Revoke Access Token</dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_setLogger">setLogger()</a>
|
||
<span>
|
||
: mixed </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -protected">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_hash">hash()</a>
|
||
<span>
|
||
: string </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -protected">
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_withLock">withLock()</a>
|
||
<span>
|
||
: mixed </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
<section class="phpdocumentor-constants">
|
||
<h3 class="phpdocumentor-elements__header" id="constants">
|
||
Constants
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#constants" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h3>
|
||
<article class="phpdocumentor-element -constant -public ">
|
||
<h4 class="phpdocumentor-element__name" id="constant_DEFAULT_ACCESS_TOKEN_TTL">
|
||
DEFAULT_ACCESS_TOKEN_TTL
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#constant_DEFAULT_ACCESS_TOKEN_TTL" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">28</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-signature phpdocumentor-code ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type">mixed</span>
|
||
<span class="phpdocumentor-signature__name">DEFAULT_ACCESS_TOKEN_TTL</span>
|
||
= <span class="phpdocumentor-signature__default-value">60 * 60 * 24 * 7</span>
|
||
</code>
|
||
|
||
|
||
|
||
|
||
|
||
</article>
|
||
<article class="phpdocumentor-element -constant -public ">
|
||
<h4 class="phpdocumentor-element__name" id="constant_DEFAULT_AUTH_CODE_TTL">
|
||
DEFAULT_AUTH_CODE_TTL
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#constant_DEFAULT_AUTH_CODE_TTL" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">27</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-signature phpdocumentor-code ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type">mixed</span>
|
||
<span class="phpdocumentor-signature__name">DEFAULT_AUTH_CODE_TTL</span>
|
||
= <span class="phpdocumentor-signature__default-value">60 * 5</span>
|
||
</code>
|
||
|
||
|
||
|
||
|
||
|
||
</article>
|
||
<article class="phpdocumentor-element -constant -public ">
|
||
<h4 class="phpdocumentor-element__name" id="constant_TOKEN_LENGTH">
|
||
TOKEN_LENGTH
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#constant_TOKEN_LENGTH" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">30</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-signature phpdocumentor-code ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type">mixed</span>
|
||
<span class="phpdocumentor-signature__name">TOKEN_LENGTH</span>
|
||
= <span class="phpdocumentor-signature__default-value">64</span>
|
||
</code>
|
||
|
||
|
||
|
||
|
||
|
||
</article>
|
||
</section>
|
||
|
||
|
||
<section class="phpdocumentor-properties">
|
||
<h3 class="phpdocumentor-elements__header" id="properties">
|
||
Properties
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h3>
|
||
<article
|
||
class="
|
||
phpdocumentor-element
|
||
-property
|
||
-protected
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="property_accessTokenTtl">
|
||
$accessTokenTtl
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#property_accessTokenTtl" class="headerlink"><i class="fas fa-link"></i></a>
|
||
<span class="phpdocumentor-element__modifiers">
|
||
</span>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">39</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">protected</span>
|
||
<span class="phpdocumentor-signature__type">int</span>
|
||
<span class="phpdocumentor-signature__name">$accessTokenTtl</span>
|
||
</code>
|
||
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="
|
||
phpdocumentor-element
|
||
-property
|
||
-protected
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="property_authCodeTtl">
|
||
$authCodeTtl
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#property_authCodeTtl" class="headerlink"><i class="fas fa-link"></i></a>
|
||
<span class="phpdocumentor-element__modifiers">
|
||
</span>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">36</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">protected</span>
|
||
<span class="phpdocumentor-signature__type">int</span>
|
||
<span class="phpdocumentor-signature__name">$authCodeTtl</span>
|
||
</code>
|
||
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="
|
||
phpdocumentor-element
|
||
-property
|
||
-protected
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="property_logger">
|
||
$logger
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#property_logger" class="headerlink"><i class="fas fa-link"></i></a>
|
||
<span class="phpdocumentor-element__modifiers">
|
||
</span>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">45</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">protected</span>
|
||
<span class="phpdocumentor-signature__type"><abbr title="\Psr\Log\LoggerInterface">LoggerInterface</abbr></span>
|
||
<span class="phpdocumentor-signature__name">$logger</span>
|
||
</code>
|
||
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="
|
||
phpdocumentor-element
|
||
-property
|
||
-protected
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="property_path">
|
||
$path
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#property_path" class="headerlink"><i class="fas fa-link"></i></a>
|
||
<span class="phpdocumentor-element__modifiers">
|
||
</span>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">33</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">protected</span>
|
||
<span class="phpdocumentor-signature__type">string</span>
|
||
<span class="phpdocumentor-signature__name">$path</span>
|
||
</code>
|
||
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="
|
||
phpdocumentor-element
|
||
-property
|
||
-protected
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="property_secret">
|
||
$secret
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#property_secret" class="headerlink"><i class="fas fa-link"></i></a>
|
||
<span class="phpdocumentor-element__modifiers">
|
||
</span>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">42</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">protected</span>
|
||
<span class="phpdocumentor-signature__type">string</span>
|
||
<span class="phpdocumentor-signature__name">$secret</span>
|
||
</code>
|
||
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
|
||
</article>
|
||
</section>
|
||
|
||
<section class="phpdocumentor-methods">
|
||
<h3 class="phpdocumentor-elements__header" id="methods">
|
||
Methods
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h3>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method___construct">
|
||
__construct()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">47</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$path</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$secret</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">int|null </span><span class="phpdocumentor-signature__argument__name">$authCodeTtl</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">int|null </span><span class="phpdocumentor-signature__argument__name">$accessTokenTtl</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">mixed </span><span class="phpdocumentor-signature__argument__name">$cleanUpNow</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">false</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Log\LoggerInterface">LoggerInterface</abbr>|null </span><span class="phpdocumentor-signature__argument__name">$logger</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$path</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$secret</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$authCodeTtl</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">int|null</span>
|
||
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$accessTokenTtl</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">int|null</span>
|
||
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$cleanUpNow</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">mixed</span>
|
||
= <span class="phpdocumentor-signature__argument__default-value">false</span> </dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$logger</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Log\LoggerInterface">LoggerInterface</abbr>|null</span>
|
||
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">mixed</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_createAuthCode">
|
||
createAuthCode()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_createAuthCode" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">75</span>
|
||
</aside>
|
||
|
||
<p class="phpdocumentor-summary">Create Authorization Code</p>
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">createAuthCode</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">array<string|int, mixed> </span><span class="phpdocumentor-signature__argument__name">$data</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string|null</span></code>
|
||
|
||
<section class="phpdocumentor-description"><p>This method is called on a valid authorization token request. The <code class="prettyprint">$data</code>
|
||
array is guaranteed to have the following keys:</p>
|
||
<ul>
|
||
<li>
|
||
<code class="prettyprint">client_id</code>: the validated <code class="prettyprint">client_id</code> request parameter</li>
|
||
<li>
|
||
<code class="prettyprint">redirect_uri</code>: the validated <code class="prettyprint">redirect_uri</code> request parameter</li>
|
||
<li>
|
||
<code class="prettyprint">state</code>: the <code class="prettyprint">state</code> request parameter</li>
|
||
<li>
|
||
<code class="prettyprint">code_challenge</code>: the <code class="prettyprint">code_challenge</code> request parameter</li>
|
||
<li>
|
||
<code class="prettyprint">code_challenge_method</code>: the <code class="prettyprint">code_challenge_method</code> request parameter</li>
|
||
<li>
|
||
<code class="prettyprint">requested_scope</code>: the value of the <code class="prettyprint">scope</code> request parameter</li>
|
||
<li>
|
||
<code class="prettyprint">me</code>: the value of the <code class="prettyprint">me</code> key from the authentication result returned from the authentication request handler callback</li>
|
||
</ul>
|
||
<p>It may also have additional keys, which can come from the following locations:</p>
|
||
<ul>
|
||
<li>All keys from the the authentication request handler callback result which do not clash
|
||
with the keys listed above (with the exception of <code class="prettyprint">me</code>, which is always present). Usually
|
||
this is a <code class="prettyprint">profile</code> key, but you may choose to return additional data from the authentication
|
||
callback, which will be present in <code class="prettyprint">$data</code>.</li>
|
||
<li>Any keys added by the <code class="prettyprint">transformAuthorizationCode</code> method on the currently active instance
|
||
of <code class="prettyprint">Taproot\IndieAuth\Callback\AuthorizationFormInterface</code>. Typically this is the <code class="prettyprint">scope</code>
|
||
key, which is a valid space-separated scope string listing the scopes granted by the user on
|
||
the consent screen. Other implementations of <code class="prettyprint">AuthorizationFormInterface</code> may add additional
|
||
data, such as custom token-specific settings, or a custom token lifetime.</li>
|
||
</ul>
|
||
<p>This method should store the data passed to it, generate a corresponding authorization code
|
||
string, and return it.</p>
|
||
<p>The method call and data is structured such that implementations have a lot of flexibility
|
||
about how to store authorization code data. It could be a record in an auth code database
|
||
table, a record in a table which is used for both auth codes and access tokens, or even
|
||
a stateless self-encrypted token — note that in the latter case, you must persist a copy
|
||
of the auth code with its exchanged access token to check against, in order to prevent it
|
||
being exchanged more than once.</p>
|
||
<p>On an error, return null. The reason for the error is irrelevant for calling code, but it’s
|
||
recommended to log it internally for reference. For the same reason, this method should not
|
||
throw exceptions.</p>
|
||
</section>
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$data</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">array<string|int, mixed></span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">string|null</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_delete">
|
||
delete()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_delete" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">259</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">delete</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$key</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">mixed </span><span class="phpdocumentor-signature__argument__name">$observeLock</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">true</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
|
||
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$key</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$observeLock</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">mixed</span>
|
||
= <span class="phpdocumentor-signature__argument__default-value">true</span> </dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">bool</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_deleteExpiredTokens">
|
||
deleteExpiredTokens()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_deleteExpiredTokens" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">200</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">deleteExpiredTokens</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">int</span></code>
|
||
|
||
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">int</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_exchangeAuthCodeForAccessToken">
|
||
exchangeAuthCodeForAccessToken()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_exchangeAuthCodeForAccessToken" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">93</span>
|
||
</aside>
|
||
|
||
<p class="phpdocumentor-summary">Exchange Authorization Code for Access Token</p>
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">exchangeAuthCodeForAccessToken</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$code</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">callable </span><span class="phpdocumentor-signature__argument__name">$validateAuthCode</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array<string|int, mixed>|null</span></code>
|
||
|
||
<section class="phpdocumentor-description"><p>Attempt to exchange an authorization code identified by <code class="prettyprint">$code</code> for
|
||
an access token. Return an array of access token data to be passed onto
|
||
the client app on success, and null on error.</p>
|
||
<p>This method is called at the beginning of a code exchange request, before
|
||
further error checking or validation is applied. It should proceed as
|
||
follows.</p>
|
||
<ul>
|
||
<li>Attempt to fetch the authorization code data identified by $code. If
|
||
it does not exist or has expired, return null;</li>
|
||
<li>Pass the authorization code data array to $validateAuthCode for validation.
|
||
If there is a problem with the code, a <code class="prettyprint">Taproot\IndieAuth\IndieAuthException</code>
|
||
will be thrown. This method should catch it, invalidate the authorization
|
||
code data, then re-throw the exception for handling by Server.</li>
|
||
<li>If the authorization code data passed all checks, convert it into an access
|
||
token, invalidate the auth code to prevent re-use, and store the access token
|
||
data internally.</li>
|
||
<li>Return an array of access token data to be passed onto the client app. It MUST
|
||
contain the following keys:
|
||
<ul>
|
||
<li>
|
||
<code class="prettyprint">me</code>
|
||
</li>
|
||
<li>
|
||
<code class="prettyprint">access_token</code>
|
||
Additonally, it SHOULD contain the following keys:</li>
|
||
<li>
|
||
<code class="prettyprint">scope</code>, if the token grants any scope
|
||
And MAY contain additional keys, such as:</li>
|
||
<li>
|
||
<code class="prettyprint">profile</code>
|
||
</li>
|
||
<li>
|
||
<code class="prettyprint">expires_at</code>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
<p>If the authorization code was redeemed at the authorization endpoint, Server will
|
||
only pass the <code class="prettyprint">me</code> and <code class="prettyprint">profile</code> keys onto the client. In both cases, it will filter
|
||
out <code class="prettyprint">code_challenge</code> keys to prevent that data from accidentally being leaked to
|
||
clients. If an access token is present, the server will add <code class="prettyprint">token_type: Bearer</code>
|
||
automatically.</p>
|
||
<p>A typical implementation might look like this:</p>
|
||
<pre class="prettyprint"><code class="language-php">function exchangeAuthCodeForAccessToken(string $code, callable $validateAuthCode): ?array {
|
||
if (is_null($authCodeData = $this->fetchAuthCode($code))) {
|
||
return null;
|
||
}
|
||
|
||
if (isExpired($authCodeData)) {
|
||
return null;
|
||
}
|
||
|
||
try {
|
||
$validateAuthCode($authCodeData);
|
||
} catch (IndieAuthException $e) {
|
||
$this->deleteAuthCode($code);
|
||
throw $e;
|
||
}
|
||
|
||
return $this->newTokenFromAuthCodeData($authCodeData);
|
||
}
|
||
</code></pre>
|
||
<p>Refer to reference implementations in the <code class="prettyprint">Taproot\IndieAuth\Storage</code> namespace for
|
||
reference.</p>
|
||
</section>
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$code</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
<section class="phpdocumentor-description"><p>The Authorization Code to attempt to exchange.</p>
|
||
</section>
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$validateAuthCode</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">callable</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
<section class="phpdocumentor-description"><p>A callable to perform additional validation if valid auth code data is found. Takes <code class="prettyprint">array $authCodeData</code>, raises <code class="prettyprint">Taproot\IndieAuth\IndieAuthException</code> on invalid data, which should be bubbled up to the caller after any clean-up. Returns void.</p>
|
||
</section>
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">array<string|int, mixed>|null</span>
|
||
—
|
||
<section class="phpdocumentor-description"><p>An array of access token data to return to the client on success, null on any error.</p>
|
||
</section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_get">
|
||
get()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_get" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">228</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">get</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$key</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array<string|int, mixed>|null</span></code>
|
||
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$key</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">array<string|int, mixed>|null</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_getAccessToken">
|
||
getAccessToken()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_getAccessToken" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">168</span>
|
||
</aside>
|
||
|
||
<p class="phpdocumentor-summary">Get Access Token</p>
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">getAccessToken</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$token</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array<string|int, mixed>|null</span></code>
|
||
|
||
<section class="phpdocumentor-description"><p>Fetch access token data identified by the token <code class="prettyprint">$token</code>, returning
|
||
null if it is expired or invalid.</p>
|
||
</section>
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$token</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">array<string|int, mixed>|null</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_getPath">
|
||
getPath()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_getPath" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">273</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">getPath</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$key</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
|
||
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$key</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">string</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_put">
|
||
put()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_put" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">250</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">put</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$key</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">array<string|int, mixed> </span><span class="phpdocumentor-signature__argument__name">$data</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
|
||
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$key</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$data</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">array<string|int, mixed></span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">bool</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_revokeAccessToken">
|
||
revokeAccessToken()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_revokeAccessToken" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">193</span>
|
||
</aside>
|
||
|
||
<p class="phpdocumentor-summary">Revoke Access Token</p>
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">revokeAccessToken</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$token</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
|
||
|
||
<section class="phpdocumentor-description"><p>Revoke the access token identified by <code class="prettyprint">$token</code>. Return true on success,
|
||
or false on error, including if the token did not exist.</p>
|
||
</section>
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$token</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">bool</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_setLogger">
|
||
setLogger()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_setLogger" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">69</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">setLogger</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Log\LoggerInterface">LoggerInterface</abbr> </span><span class="phpdocumentor-signature__argument__name">$logger</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$logger</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Log\LoggerInterface">LoggerInterface</abbr></span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">mixed</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-protected
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_hash">
|
||
hash()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_hash" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">302</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">protected</span>
|
||
<span class="phpdocumentor-signature__name">hash</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$token</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">string</span></code>
|
||
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$token</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">string</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-protected
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_withLock">
|
||
withLock()
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#method_withLock" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Storage/FilesystemJsonStorage.php"><a href="files/src-storage-filesystemjsonstorage.html"><abbr title="src/Storage/FilesystemJsonStorage.php">FilesystemJsonStorage.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">278</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">protected</span>
|
||
<span class="phpdocumentor-signature__name">withLock</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$path</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string </span><span class="phpdocumentor-signature__argument__name">$mode</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">callable </span><span class="phpdocumentor-signature__argument__name">$callback</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$path</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$mode</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$callback</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">callable</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">mixed</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
</section>
|
||
|
||
</article>
|
||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||
<section class="phpdocumentor-search-results__dialog">
|
||
<header class="phpdocumentor-search-results__header">
|
||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||
</header>
|
||
<section class="phpdocumentor-search-results__body">
|
||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||
</section>
|
||
</section>
|
||
</section>
|
||
</div>
|
||
</div>
|
||
<a href="classes/Taproot-IndieAuth-Storage-FilesystemJsonStorage.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||
|
||
</main>
|
||
|
||
<script>
|
||
cssVars({});
|
||
</script>
|
||
</body>
|
||
</html>
|