77
88namespace OCA \Richdocuments \Backgroundjobs ;
99
10- use OCA \Richdocuments \Db \WopiMapper ;
1110use OCP \AppFramework \Utility \ITimeFactory ;
1211use OCP \BackgroundJob \TimedJob ;
1312use OCP \DB \QueryBuilder \IQueryBuilder ;
1413use OCP \IDBConnection ;
1514
1615class Cleanup extends TimedJob {
16+ private const EXPIRY_GRACE_PERIOD_SECONDS = 60 ;
17+
1718 public function __construct (
1819 ITimeFactory $ time ,
1920 private IDBConnection $ db ,
20- private WopiMapper $ wopiMapper ,
2121 ) {
2222 parent ::__construct ($ time );
2323
@@ -29,18 +29,17 @@ protected function run($argument) {
2929 // Expire template mappings for file creation
3030 $ query = $ this ->db ->getQueryBuilder ();
3131 $ query ->delete ('richdocuments_template ' )
32- ->where ($ query ->expr ()->lte ('timestamp ' , $ query ->createNamedParameter (time () - 60 , IQueryBuilder::PARAM_INT )));
32+ ->where ($ query ->expr ()->lte ('timestamp ' , $ query ->createNamedParameter (time () - self :: EXPIRY_GRACE_PERIOD_SECONDS , IQueryBuilder::PARAM_INT )));
3333 $ query ->executeStatement ();
3434
3535 // Expired WOPI access tokens
3636 $ this ->cleanUpWopiTokens ();
3737 }
3838
3939 private function cleanUpWopiTokens () {
40- $ tokenIds = $ this ->wopiMapper ->getExpiredTokenIds (1000 );
4140 $ query = $ this ->db ->getQueryBuilder ();
4241 $ query ->delete ('richdocuments_wopi ' )
43- ->where ($ query ->expr ()->in ( ' id ' , $ query ->createNamedParameter ($ tokenIds , IQueryBuilder::PARAM_INT_ARRAY )));
42+ ->where ($ query ->expr ()->lt ( ' expiry ' , $ query ->createNamedParameter (time () - self :: EXPIRY_GRACE_PERIOD_SECONDS , IQueryBuilder::PARAM_INT )));
4443 $ query ->executeStatement ();
4544 }
4645}
0 commit comments