@Override
public List<ProcessorFactory> filter(List<ProcessorFactory> factories,
ParameterBlock parameter) {
Partition partition = parameter.getSubBlockValue(PARTITION);
// System.out.println("the part " + partition);
// System.out.println("the model " + partition.getModel());
// If model could not be instantiated, it cannot be simulated
if (partition.getModel() == null) {
SimSystem.report(Level.SEVERE, "ModelNull", "The model is null!");
factories.clear();
return factories;
}
// get the interfaces supported by this modeling formalism
List<Class<?>> modelInterfaces =
getMostSpecializedInterfaces(partition.getModel().getClass(),
new ArrayList<Class<?>>());
// iterate over all available factories
Iterator<ProcessorFactory> iPF = factories.iterator();