class ApplyLargoSession extends Job implements ShouldQueue

Traits

InteractsWithQueue
Queueable
Dispatchable

Properties

string $queue

The queue to push this job to.

int $tries

Number of times to retry this job.

string $id

The job ID.

User $user

The user who submitted the Largo session.

array $dismissedImageAnnotations

Array of all dismissed image annotation IDs for each label.

array $changedImageAnnotations

Array of all changed image annotation IDs for each label.

array $dismissedVideoAnnotations

Array of all dismissed video annotation IDs for each label.

array $changedVideoAnnotations

Array of all changed video annotation IDs for each label.

bool $force

Whether to dismiss labels even if they were created by other users.

Methods

void
__construct(string $id, User $user, array $dismissedImageAnnotations, array $changedImageAnnotations, array $dismissedVideoAnnotations, array $changedVideoAnnotations, bool $force)

Create a new job instance.

void
handle()

Execute the job.

handleImageAnnotations()

Process the image annotations.

handleVideoAnnotations()

Process the video annotations.

array
ignoreDeletedLabels(array $dismissed, array $changed)

Removes changes to annotations that should get a new label which no longer exists.

array
ignoreNullChanges(array $dismissed, array $changed)

Removes changes to annotations where the same label was dismissed than should be attached again later.

applyDismissedLabels(User $user, array $dismissed, bool $force, string $labelModel)

Detach annotation labels that were dismissed in a Largo session.

applyChangedLabels(User $user, array $changed, string $annotationModel, string $labelModel)

Attach annotation labels that were chosen in a Largo session.

deleteDanglingAnnotations(array $dismissed, array $changed, string $annotationModel)

Delete annotations that now have no more labels attached.

Details

at line 104
void __construct(string $id, User $user, array $dismissedImageAnnotations, array $changedImageAnnotations, array $dismissedVideoAnnotations, array $changedVideoAnnotations, bool $force)

Create a new job instance.

Parameters

string $id
User $user
array $dismissedImageAnnotations
array $changedImageAnnotations
array $dismissedVideoAnnotations
array $changedVideoAnnotations
bool $force

Return Value

void

at line 121
void handle()

Execute the job.

Return Value

void

at line 145
protected handleImageAnnotations()

Process the image annotations.

at line 165
protected handleVideoAnnotations()

Process the video annotations.

at line 190
protected array ignoreDeletedLabels(array $dismissed, array $changed)

Removes changes to annotations that should get a new label which no longer exists.

Parameters

array $dismissed
array $changed

Return Value

array

Containing 'dismissed' and 'changed'

at line 224
protected array ignoreNullChanges(array $dismissed, array $changed)

Removes changes to annotations where the same label was dismissed than should be attached again later.

Parameters

array $dismissed
array $changed

Return Value

array

at line 257
protected applyDismissedLabels(User $user, array $dismissed, bool $force, string $labelModel)

Detach annotation labels that were dismissed in a Largo session.

Parameters

User $user
array $dismissed
bool $force
string $labelModel

The annotation label model class.

at line 277
protected applyChangedLabels(User $user, array $changed, string $annotationModel, string $labelModel)

Attach annotation labels that were chosen in a Largo session.

Parameters

User $user
array $changed
string $annotationModel

The annotation model class.

string $labelModel

The annotation label model class.

at line 376
protected deleteDanglingAnnotations(array $dismissed, array $changed, string $annotationModel)

Delete annotations that now have no more labels attached.

Parameters

array $dismissed
array $changed
string $annotationModel

The annotation model class.