Package org.eclipse.handly.util

# Class SerialPerObjectRule

java.lang.Object
org.eclipse.handly.util.SerialPerObjectRule

All Implemented Interfaces:
  `org.eclipse.core.runtime.jobs.ISchedulingRule`

public final class SerialPerObjectRule extends Object implements org.eclipse.core.runtime.jobs.ISchedulingRule
A scheduling rule that does not allow nesting and conflicts only with a `SerialPerObjectRule` pertaining to the same (i.e., equal) lock object.

Since:
  1.1

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SerialPerObjectRule(Object lock)`
  Creates a new `SerialPerObjectRule` for the given lock object.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `contains(org.eclipse.core.runtime.jobs.ISchedulingRule rule)`
  `boolean`
  `isConflicting(org.eclipse.core.runtime.jobs.ISchedulingRule rule)`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### SerialPerObjectRule

    public SerialPerObjectRule(Object lock)
    Creates a new `SerialPerObjectRule` for the given lock object.
    Parameters:
      `lock` - a lock object (not `null`)

- ## Method Details

  - ### contains

    public boolean contains(org.eclipse.core.runtime.jobs.ISchedulingRule rule)
    Specified by:
      `contains` in interface `org.eclipse.core.runtime.jobs.ISchedulingRule`

  - ### isConflicting

    public boolean isConflicting(org.eclipse.core.runtime.jobs.ISchedulingRule rule)
    Specified by:
      `isConflicting` in interface `org.eclipse.core.runtime.jobs.ISchedulingRule`