Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
crazyfactory/jobs / src / IJobLockProvider.php
Size: Mime:
<?php

namespace CrazyFactory\Jobs;

interface IJobLockProvider
{
    /**
     * @param JobConfig $jobConfig
     *
     * @return bool
     */
    public function acquire(JobConfig $jobConfig);

    /**
     * @param JobConfig $jobConfig
     *
     * @return void
     */
    public function release(JobConfig $jobConfig);

    /**
     * Get locked duration (minutes) or null if cant determine.
     *
     * @return int|null
     */
    public function getDuration();
}