first commit

This commit is contained in:
2023-09-12 21:41:04 +02:00
commit 3361a7f053
13284 changed files with 2116755 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
<?php
namespace WPML\TM\ATE\AutoTranslate\Endpoint;
use WPML\Ajax\IHandler;
use WPML\Collect\Support\Collection;
use WPML\FP\Either;
use WPML\Utilities\KeyedLock;
use function WPML\Container\make;
class SyncLock implements IHandler {
public function run( Collection $data ) {
$lock = make( \WPML\TM\ATE\SyncLock::class );
$action = $data->get( 'action', 'acquire' );
if ( $action === 'release' ) {
$lockKey = $lock->create( $data->get( 'lockKey' ) );
if ( $lockKey ) {
$lock->release();
}
return Either::of( [ 'action' => 'release', 'result' => (bool) $lockKey ] );
} else {
return Either::of( [ 'action' => 'acquire', 'result' => $lock->create( null ) ] );
}
}
}