Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
}
],
"require": {
"php": "^7.3|^8.0"
"php": "^7.4|^8.0"
},
"scripts": {
"lint": "find . -name \\*.php -not -path './vendor/*' -print0 | xargs -0 -n1 php -l",
Expand Down
16 changes: 8 additions & 8 deletions composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions lib/Command/ResetDocument.php
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,10 @@
use Symfony\Component\Console\Output\OutputInterface;

class ResetDocument extends Command {
protected $documentService;
protected $documentMapper;
protected $stepMapper;
protected $sessionMapper;
protected DocumentService $documentService;
protected DocumentMapper $documentMapper;
protected StepMapper $stepMapper;
protected SessionMapper $sessionMapper;

public function __construct(DocumentService $documentService, DocumentMapper $documentMapper, StepMapper $stepMapper, SessionMapper $sessionMapper) {
parent::__construct();
Expand Down
18 changes: 4 additions & 14 deletions lib/Controller/DirectSessionController.php
Original file line number Diff line number Diff line change
Expand Up @@ -51,27 +51,17 @@
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http\Response;
use OCP\DirectEditing\IManager;
use OCP\Share\IManager as ShareManager;
use OCP\AppFramework\Http\DataResponse;
use OCP\IRequest;
use OCP\Share\IShare;

class DirectSessionController extends Controller {
private IShare $share;
private ApiService $apiService;
private IManager $directManager;

/** @var ShareManager */
private $shareManager;

/** @var IShare */
private $share;

/** @var ApiService */
private $apiService;
/** @var IManager */
private $directManager;

public function __construct(string $appName, IRequest $request, ShareManager $shareManager, ApiService $apiService, IManager $directManager) {
public function __construct(string $appName, IRequest $request, ApiService $apiService, IManager $directManager) {
parent::__construct($appName, $request);
$this->shareManager = $shareManager;
$this->apiService = $apiService;
$this->directManager = $directManager;
}
Expand Down
30 changes: 6 additions & 24 deletions lib/Controller/ImageController.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@

use Exception;
use OCA\Text\Service\SessionService;
use OCA\Text\UploadException;
use OCA\Text\Exception\UploadException;
use OCP\AppFramework\Http;
use OCA\Text\Service\ImageService;
use OCP\AppFramework\Controller;
Expand All @@ -52,26 +52,11 @@ class ImageController extends Controller {
'image/webp',
];

/**
* @var ImageService
*/
private $imageService;
/**
* @var LoggerInterface
*/
private $logger;
/**
* @var SessionService
*/
private $sessionService;
/**
* @var IL10N
*/
private $l10n;
/**
* @var IMimeTypeDetector
*/
private $mimeTypeDetector;
private ImageService $imageService;
private LoggerInterface $logger;
private SessionService $sessionService;
private IL10N $l10n;
private IMimeTypeDetector $mimeTypeDetector;

public function __construct(string $appName,
IRequest $request,
Expand Down Expand Up @@ -163,9 +148,6 @@ public function uploadImage(int $documentId, int $sessionId, string $sessionToke
}
}

/**
* @return array
*/
private function getUploadedFile(string $key): array {
$file = $this->request->getUploadedFile($key);
$error = null;
Expand Down
12 changes: 3 additions & 9 deletions lib/Controller/PublicSessionController.php
Original file line number Diff line number Diff line change
Expand Up @@ -36,15 +36,9 @@
use OCP\Share\IShare;

class PublicSessionController extends PublicShareController {

/** @var ShareManager */
private $shareManager;

/** @var IShare */
private $share;

/** @var ApiService */
private $apiService;
private ShareManager $shareManager;
private ?IShare $share;
private ApiService $apiService;

public function __construct(string $appName, IRequest $request, ISession $session, ShareManager $shareManager, ApiService $apiService) {
parent::__construct($appName, $request, $session);
Expand Down
6 changes: 1 addition & 5 deletions lib/Controller/SessionController.php
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,7 @@
use OCP\IRequest;

class SessionController extends Controller {

/**
* @var ApiService
*/
private $apiService;
private ApiService $apiService;

public function __construct(string $appName, IRequest $request, ApiService $apiService) {
parent::__construct($appName, $request);
Expand Down
7 changes: 2 additions & 5 deletions lib/Controller/SettingsController.php
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,8 @@
use OCP\IRequest;

class SettingsController extends Controller {

/**
* @var IConfig
*/
private $config;
private IConfig $config;
private ?string $userId;

public const ACCEPTED_KEYS = [
'workspace_enabled'
Expand Down
24 changes: 6 additions & 18 deletions lib/Controller/WorkspaceController.php
Original file line number Diff line number Diff line change
Expand Up @@ -69,24 +69,12 @@
use Psr\Log\LoggerInterface;

class WorkspaceController extends OCSController {

/** @var IRootFolder */
private $rootFolder;

/** @var IManager */
private $shareManager;

/** @var WorkspaceService */
private $workspaceService;

/** @var string|null */
private $userId;

/** @var IDirectEditingManager */
private $directEditingManager;

/** @var IURLGenerator */
private $urlGenerator;
private IRootFolder $rootFolder;
private IManager $shareManager;
private WorkspaceService $workspaceService;
private ?string $userId;
private IDirectEditingManager $directEditingManager;
private IURLGenerator $urlGenerator;

/** @var IEventDispatcher */
private $eventDispatcher;
Expand Down
22 changes: 9 additions & 13 deletions lib/Cron/Cleanup.php
Original file line number Diff line number Diff line change
Expand Up @@ -29,31 +29,25 @@
namespace OCA\Text\Cron;

use OCA\Text\Db\Session;
use OCA\Text\DocumentHasUnsavedChangesException;
use OCA\Text\Exception\DocumentHasUnsavedChangesException;
use OCA\Text\Service\DocumentService;
use OCA\Text\Service\ImageService;
use OCA\Text\Service\SessionService;
use OCP\AppFramework\Utility\ITimeFactory;
use OCP\BackgroundJob\TimedJob;
use OCP\ILogger;
use Psr\Log\LoggerInterface;

/**
* Class Cache
*
* @package OCA\Social\Cron
*/
class Cleanup extends TimedJob {
private $sessionService;
private $documentService;
private $logger;
private $imageService;

private SessionService $sessionService;
private DocumentService $documentService;
private LoggerInterface $logger;
private ImageService $imageService;

public function __construct(ITimeFactory $time,
SessionService $sessionService,
DocumentService $documentService,
ImageService $imageService,
ILogger $logger) {
LoggerInterface $logger) {
parent::__construct($time);
$this->sessionService = $sessionService;
$this->documentService = $documentService;
Expand Down Expand Up @@ -81,6 +75,8 @@ protected function run($argument) {
$this->logger->debug('Resetting document ' . $session->getDocumentId() . '');
} catch (DocumentHasUnsavedChangesException $e) {
$this->logger->info('Document ' . $session->getDocumentId() . ' has not been reset, as it has unsaved changes');
} catch (\Throwable $e) {
$this->logger->error('Document ' . $session->getDocumentId() . ' has not been reset, as an error occured', ['exception' => $e]);
}
}
$removedSessions = $this->sessionService->removeInactiveSessions(null);
Expand Down
27 changes: 21 additions & 6 deletions lib/Db/Document.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,29 @@

use OCP\AppFramework\Db\Entity;

/**
* @method getId(): int
* @method getCurrentVersion(): int
* @method setCurrentVersion(int $version): void
* @method getLastSavedVersion(): int
* @method setLastSavedVersion(int $version): void
* @method getInitialVersion(): int
* @method setInitialVersion(int $version): void
* @method getLastSavedVersionTime(): int
* @method setLastSavedVersionTime(int $time): void
* @method getLastSavedVersionEtag(): string
* @method setLastSavedVersionEtag(string $etag): void
* @method getBaseVersionEtag(): string
* @method setBaseVersionEtag(string $etag): void
*/
class Document extends Entity implements \JsonSerializable {
public $id;
protected $currentVersion = 0;
protected $lastSavedVersion = 0;
protected $initialVersion = 0;
protected $lastSavedVersionTime = 0;
protected $lastSavedVersionEtag = '';
protected $baseVersionEtag = '';
protected int $currentVersion = 0;
protected int $lastSavedVersion = 0;
protected int $initialVersion = 0;
protected int $lastSavedVersionTime = 0;
protected string $lastSavedVersionEtag = '';
protected string $baseVersionEtag = '';

public function __construct() {
$this->addType('id', 'integer');
Expand Down
30 changes: 19 additions & 11 deletions lib/Db/Session.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,23 +23,31 @@

namespace OCA\Text\Db;

use JsonSerializable;
use OCP\AppFramework\Db\Entity;

/**
* @method int getLastContact()
* @method setLastContact(int $getTime)
* @method getDocumentId()
* @method getUserId()
* @method string getUserId()
* @method void setUserId(?string $userId)
* @method string getToken()
* @method void setToken(string $token)
* @method string getColor()
* @method void setColor(string $color)
* @method string|null getGuestName()
* @method void setGuestName(string $guestName)
* @method int getLastContact()
* @method void setLastContact(int $getTime)
* @method int getDocumentId()
* @method void setDocumentId(int $documentId)
*/
class Session extends Entity implements \JsonSerializable {
class Session extends Entity implements JsonSerializable {
public $id;
protected $userId;
protected $token;
protected $color;
protected $guestName;
protected $lastContact;
protected $documentId;
protected ?string $userId = null;
protected string $token = '';
protected string $color = '';
protected ?string $guestName = null;
protected int $lastContact = 0;
protected int $documentId = 0;

public function __construct() {
$this->addType('id', 'integer');
Expand Down
22 changes: 16 additions & 6 deletions lib/Db/Step.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,24 @@

namespace OCA\Text\Db;

use JsonSerializable;
use OCP\AppFramework\Db\Entity;

class Step extends Entity implements \JsonSerializable {
public $id;
protected $data;
protected $version;
protected $sessionId;
protected $documentId;
/**
* @method getData(): string
* @method setData(string $data): void
* @method getVersion(): int
* @method setVersion(int $version): void
* @method getSessionId(): int
* @method setSessionId(int $sessionId): void
* @method getDocumentId(): int
* @method setDocumentId(int $documentId): void
*/
class Step extends Entity implements JsonSerializable {
protected string $data = '';
protected int $version = 0;
protected int $sessionId = 0;
protected int $documentId = 0;

public function __construct() {
$this->addType('id', 'integer');
Expand Down
Loading