Package org.eclipse.app4mc.amalthea.model.util

## Class ConstraintsUtil

- Object
- - ConstraintsUtil

    public class ConstraintsUtil
    extends Object

### Method Summary

All Methods
`static void` `addNewDeadlineRequirement​(@NonNull ConstraintsModel container, @NonNull AbstractProcess process, @NonNull Time deadline)`
`static void` `addNewDeadlineRequirement​(@NonNull ConstraintsModel container, @NonNull Runnable runnable, @NonNull Time deadline)`
`static List<AbstractEventChain>` `getAllAbstractEventChains​(@NonNull ConstraintsModel constModel)` Retrieve all abstract event chains from the constraints model.
`static @Nullable Time` `getDeadline​(@NonNull AbstractProcess process)`
`static @Nullable Time` `getDeadline​(@NonNull AbstractProcess process, @NonNull ConstraintsModel constModel)`
`static @Nullable Time` `getDeadline​(@NonNull Runnable runnable)`
`static @Nullable Time` `getDeadline​(@NonNull Runnable runnable, @NonNull ConstraintsModel constModel)`
`static List<ProcessRequirement>` `getDeadlineRequirements​(@NonNull AbstractProcess process, @NonNull ConstraintsModel constModel)`
`static List<RunnableRequirement>` `getDeadlineRequirements​(@NonNull Runnable runnable, @NonNull ConstraintsModel constModel)`
`static void` `updateDeadlineRequirement​(@NonNull Runnable runnable, @NonNull Time deadline)`
`static void` `updateDeadlineRequirement​(@NonNull Runnable runnable, @NonNull Time deadline, @NonNull ConstraintsModel constModel)`
`static void` `updateDeadlineRequirement​(@NonNull Task task, @NonNull Time deadline)`
`static void` `updateDeadlineRequirement​(@NonNull Task task, @NonNull Time deadline, @NonNull ConstraintsModel constModel)`

### Methods inherited from class Object

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

### Method Detail

#### getDeadline

    public static @Nullable Time getDeadline​(@NonNull AbstractProcess process)

Parameters:
  `process` -
Returns:

#### getDeadline

    public static @Nullable Time getDeadline​(@NonNull AbstractProcess process,
                                             @NonNull ConstraintsModel constModel)

Parameters:
  `process` -
  `constModel` -
Returns:

#### getDeadline

    public static @Nullable Time getDeadline​(@NonNull Runnable runnable)

Parameters:
  `runnable` -
Returns:

#### getDeadline

    public static @Nullable Time getDeadline​(@NonNull Runnable runnable,
                                             @NonNull ConstraintsModel constModel)

Parameters:
  `runnable` -
  `constModel` -
Returns:

#### addNewDeadlineRequirement

    public static void addNewDeadlineRequirement​(@NonNull ConstraintsModel container,
                                                 @NonNull AbstractProcess process,
                                                 @NonNull Time deadline)

Parameters:
  `container` -
  `process` -
  `deadline` -

#### addNewDeadlineRequirement

    public static void addNewDeadlineRequirement​(@NonNull ConstraintsModel container,
                                                 @NonNull Runnable runnable,
                                                 @NonNull Time deadline)

Parameters:
  `container` -
  `runnable` -
  `deadline` -

#### updateDeadlineRequirement

    public static void updateDeadlineRequirement​(@NonNull Task task,
                                                 @NonNull Time deadline)

Parameters:
  `task` -
  `deadline` -

#### updateDeadlineRequirement

    public static void updateDeadlineRequirement​(@NonNull Task task,
                                                 @NonNull Time deadline,
                                                 @NonNull ConstraintsModel constModel)

Parameters:
  `task` -
  `deadline` -
  `constModel` -

#### updateDeadlineRequirement

    public static void updateDeadlineRequirement​(@NonNull Runnable runnable,
                                                 @NonNull Time deadline)

Parameters:
  `runnable` -
  `deadline` -

#### updateDeadlineRequirement

    public static void updateDeadlineRequirement​(@NonNull Runnable runnable,
                                                 @NonNull Time deadline,
                                                 @NonNull ConstraintsModel constModel)

Parameters:
  `runnable` -
  `deadline` -
  `constModel` -

#### getDeadlineRequirements

    public static List<RunnableRequirement> getDeadlineRequirements​(@NonNull Runnable runnable,
                                                                    @NonNull ConstraintsModel constModel)

Parameters:
  `runnable` -
  `constModel` -
Returns:

#### getDeadlineRequirements

    public static List<ProcessRequirement> getDeadlineRequirements​(@NonNull AbstractProcess process,
                                                                   @NonNull ConstraintsModel constModel)

Parameters:
  `process` -
  `constModel` -
Returns:

#### getAllAbstractEventChains

    public static List<AbstractEventChain> getAllAbstractEventChains​(@NonNull ConstraintsModel constModel)

Retrieve all abstract event chains from the constraints model. This includes event chains and sub event chains (contained as items).

Parameters:
  `constModel` - The constraints model from which we want to have all abstract event chains.
Returns:
  All abstract event chains.