Package org.eclipse.emf.compare.ide.ui.logical

# Class CompoundModelMinimizer

java.lang.Object
org.eclipse.emf.compare.ide.ui.logical.CompoundModelMinimizer

All Implemented Interfaces:
  `IModelMinimizer`

public class CompoundModelMinimizer extends Object implements IModelMinimizer
This class encapsulates a list of model minimizers and propagates any calls to each element in the list.

Since:
  4.4

## Nested Class Summary

## Nested classes/interfaces inherited from interface org.eclipse.emf.compare.ide.ui.logical.IModelMinimizer

`IModelMinimizer.Registry`

## Field Summary

Fields
Modifier and Type
Field
Description
`protected List<IModelMinimizer>`
`minimizers`
The list of model minimizers.

## Constructor Summary

Constructors
Constructor
Description
`CompoundModelMinimizer(List<IModelMinimizer> minimizers)`
Creates a new compound model minimizer with the given minimizers.
`CompoundModelMinimizer(IModelMinimizer... minimizers)`
Creates a new compound model minimizer with the given minimizers.

## Method Summary

Modifier and Type
Method
Description
`void`
`minimize(org.eclipse.core.resources.IFile file, SynchronizationModel syncModel, org.eclipse.core.runtime.IProgressMonitor monitor)`
This will be called to reduce the number of resources in this model's traversals based on the given starting point of the left logical model.
`void`
`minimize(SynchronizationModel syncModel, org.eclipse.core.runtime.IProgressMonitor monitor)`
This will be called to reduce the number of resources in this model's traversals.

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

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

## Field Details

### minimizers

protected List<IModelMinimizer> minimizers
The list of model minimizers.

## Constructor Details

### CompoundModelMinimizer

public CompoundModelMinimizer(IModelMinimizer... minimizers)
Creates a new compound model minimizer with the given minimizers.

Parameters:
  `minimizers` - model minimizers

### CompoundModelMinimizer

public CompoundModelMinimizer(List<IModelMinimizer> minimizers)
Creates a new compound model minimizer with the given minimizers.

Parameters:
  `minimizers` - model minimizers

## Method Details

### minimize

public void minimize(SynchronizationModel syncModel, org.eclipse.core.runtime.IProgressMonitor monitor)
This will be called to reduce the number of resources in this model's traversals. Specifically, this minimizers propagates the call to all encapsulated minimizers.

Specified by:
  `minimize` in interface `IModelMinimizer`
Parameters:
  `syncModel` - The synchronization model to be minimized.
  `monitor` - Monitor on which to report progress to the user.

### minimize

public void minimize(org.eclipse.core.resources.IFile file, SynchronizationModel syncModel, org.eclipse.core.runtime.IProgressMonitor monitor)
This will be called to reduce the number of resources in this model's traversals based on the given starting point of the left logical model. Specifically, this minimizers propagates the call to all encapsulated minimizers.

Specified by:
  `minimize` in interface `IModelMinimizer`
Parameters:
  `file` - The file that has been used as the starting point to resolve the left logical model.
  `syncModel` - The synchronization model to be minimized.
  `monitor` - Monitor on which to report progress to the user.