## Uses of Interface
org.optaplanner.core.impl.domain.variable.supply.Demand

- Packages that use Demand
  Package | Description
  --- | ---
  org.optaplanner.core.impl.domain.variable.anchor |
  org.optaplanner.core.impl.domain.variable.custom |
  org.optaplanner.core.impl.domain.variable.descriptor |
  org.optaplanner.core.impl.domain.variable.inverserelation |
  org.optaplanner.core.impl.domain.variable.listener.support |
  org.optaplanner.core.impl.domain.variable.supply |

- - ### Uses of Demand in org.optaplanner.core.impl.domain.variable.anchor

    Classes in org.optaplanner.core.impl.domain.variable.anchor that implement Demand
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AnchorVariableDemand<Solution_>` |

    Methods in org.optaplanner.core.impl.domain.variable.anchor that return Demand
    Modifier and Type | Method | Description
    --- | --- | ---
    `Demand<Solution_,​?>` | AnchorShadowVariableDescriptor.`getProvidedDemand()` |

  - ### Uses of Demand in org.optaplanner.core.impl.domain.variable.custom

    Classes in org.optaplanner.core.impl.domain.variable.custom that implement Demand
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `CustomShadowVariableDemand<Solution_>` | Unlike other `Demand`s, a custom demand isn't equalized based on its sources, but based on its target.

    Methods in org.optaplanner.core.impl.domain.variable.custom that return Demand
    Modifier and Type | Method | Description
    --- | --- | ---
    `Demand<Solution_,​?>` | CustomShadowVariableDescriptor.`getProvidedDemand()` |

  - ### Uses of Demand in org.optaplanner.core.impl.domain.variable.descriptor

    Methods in org.optaplanner.core.impl.domain.variable.descriptor that return Demand
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract Demand<Solution_,​?>` | ShadowVariableDescriptor.`getProvidedDemand()` |

  - ### Uses of Demand in org.optaplanner.core.impl.domain.variable.inverserelation

    Classes in org.optaplanner.core.impl.domain.variable.inverserelation that implement Demand
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `CollectionInverseVariableDemand<Solution_>` | To get an instance, demand a `CollectionInverseVariableDemand` from `InnerScoreDirector.getSupplyManager()`.
    `class` | `SingletonInverseVariableDemand<Solution_>` |

    Methods in org.optaplanner.core.impl.domain.variable.inverserelation that return Demand
    Modifier and Type | Method | Description
    --- | --- | ---
    `Demand<Solution_,​?>` | InverseRelationShadowVariableDescriptor.`getProvidedDemand()` |

  - ### Uses of Demand in org.optaplanner.core.impl.domain.variable.listener.support

    Fields in org.optaplanner.core.impl.domain.variable.listener.support with type parameters of type Demand
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Map<Demand<Solution_,​?>,​Supply>` | VariableListenerSupport.`supplyMap` |

    Methods in org.optaplanner.core.impl.domain.variable.listener.support with parameters of type Demand
    Modifier and Type | Method | Description
    --- | --- | ---
    `<Supply_ extends Supply> Supply_` | VariableListenerSupport.`demand​(Demand<Solution_,​Supply_> demand)` |

  - ### Uses of Demand in org.optaplanner.core.impl.domain.variable.supply

    Methods in org.optaplanner.core.impl.domain.variable.supply with parameters of type Demand
    Modifier and Type | Method | Description
    --- | --- | ---
    `<Supply_ extends Supply> Supply_` | SupplyManager.`demand​(Demand<Solution_,​Supply_> demand)` | Returns the `Supply` for a `Demand`, preferably an existing one.