Table of Contents

DataRequestService

Layer: Service · Source: lib/service/DataRequestService.php:30 (lines 30–390)


class DataRequestService

DataRequestService Class

Service layer for GDPR data requests (access, deletion)

Docblock Metadata

Tag Value
@category Service Class
@author Scriptlog
@license MIT
@version 1.0
@since Since Release 1.0

Inheritance

No parent, interface or trait. This is a root type.

Constants (0)

None.

Properties (8)

Visibility Type Name Default Line
private (untyped) $dataRequestDao 36
private (untyped) $privacyLogDao 42
private (untyped) $sanitizer 48
private (untyped) $notificationService 54
private (untyped) $userService 60
private (untyped) $userDao 66
private (untyped) $commentDao 72
private (untyped) $postDao 78

Methods (13)

Visibility Method Summary Line
public __construct() Constructor 92
public createRequest() Create a new data request 112
public getAllRequests() Get all requests 153
public getPendingCount() Get pending requests count 163
public getTotalRequests() Get total requests count 173
public updateRequestStatus() Update request status 186
public exportUserData() Export user data 221
public deleteUserData() Delete user data (anonymize) 287
private getUserService() Lazy-access the injected UserService, falling back to a fresh instance 326
private getUserDao() Lazy-access the injected UserDao, falling back to a fresh instance 341
private getCommentDao() Lazy-access the injected CommentDao, falling back to a fresh instance 356
private getPostDao() Lazy-access the injected PostDao, falling back to a fresh instance 371
private validateEmail() Validate email address 386

__construct()

public function __construct(DataRequestDao $dataRequestDao, PrivacyLogDao $privacyLogDao, Sanitize $sanitizer, ?ConfigurationService $configService = null, ?UserService $userService = null, ?UserDao $userDao = null, ?CommentDao $commentDao = null, ?PostDao $postDao = null)

lines 92–102 (11)

Constructor

Parameter Type Default Description
$dataRequestDao ''DataRequestDao'' required none
$privacyLogDao ''PrivacyLogDao'' required none
$sanitizer ''Sanitize'' required none
$configService ''?ConfigurationService'' null none
$userService ''?UserService'' null none
$userDao ''?UserDao'' null none
$commentDao ''?CommentDao'' null none
$postDao ''?PostDao'' null none

createRequest()

public function createRequest($requestType, $email, $options = [])

lines 112–146 (35)

Create a new data request

Parameter Type Default Description
$requestType (untyped) required none
$email (untyped) required none
$options (untyped) [] none

Returns: (none declared) — int|bool

getAllRequests()

public function getAllRequests()

lines 153–156 (4)

Get all requests

Takes no parameters.

Returns: (none declared) — array

getPendingCount()

public function getPendingCount()

lines 163–166 (4)

Get pending requests count

Takes no parameters.

Returns: (none declared) — int

getTotalRequests()

public function getTotalRequests()

lines 173–176 (4)

Get total requests count

Takes no parameters.

Returns: (none declared) — int

updateRequestStatus()

public function updateRequestStatus($requestId, $status, $note = null)

lines 186–212 (27)

Update request status

Parameter Type Default Description
$requestId (untyped) required none
$status (untyped) required none
$note (untyped) null none

Returns: (none declared) — bool

exportUserData()

public function exportUserData($email, $options = [])

lines 221–275 (55)

Export user data

Parameter Type Default Description
$email (untyped) required none
$options (untyped) [] none

Returns: (none declared) — array

deleteUserData()

public function deleteUserData($email)

lines 287–318 (32)

Delete user data (anonymize)

Delegates to UserService::removeUserWithAnonymization() so the erasure machinery (comment anonymization, post reassignment, account removal) is actually executed instead of only logging.

Parameter Type Default Description
$email (untyped) required none

Returns: (none declared) — bool

getUserService()

private function getUserService()

lines 326–333 (8)

Lazy-access the injected UserService, falling back to a fresh instance

when none was provided (backward compatibility with existing callers).

Takes no parameters.

Returns: (none declared) — UserService

getUserDao()

private function getUserDao()

lines 341–348 (8)

Lazy-access the injected UserDao, falling back to a fresh instance

when none was provided (backward compatibility with existing callers).

Takes no parameters.

Returns: (none declared) — UserDao

getCommentDao()

private function getCommentDao()

lines 356–363 (8)

Lazy-access the injected CommentDao, falling back to a fresh instance

when none was provided (backward compatibility with existing callers).

Takes no parameters.

Returns: (none declared) — CommentDao

getPostDao()

private function getPostDao()

lines 371–378 (8)

Lazy-access the injected PostDao, falling back to a fresh instance

when none was provided (backward compatibility with existing callers).

Takes no parameters.

Returns: (none declared) — PostDao

validateEmail()

private function validateEmail($email)

lines 386–389 (4)

Validate email address

Parameter Type Default Description
$email (untyped) required none

Returns: (none declared) — bool

Imports


This page is generated from source by 'tools/gendoc'. Edits will be overwritten.