DefaultManagedSlotMappingConfiguration managedConfiguration = new DefaultManagedSlotMappingConfiguration(
resolverFactoryProvider, slotMappingInitializer,
visualizationModel, visualizationModel);
/**
* Visual Mappings Control is what sets up the side panel section that
* handles mapping the slot to its resolvers.
*
*/
final VisualMappingsControl visualMappingsControl = createVisualMappingsControl(
visualizationModel, managedConfiguration, contentType);
assert visualMappingsControl != null : "createVisualMappingsControl must not return null";
LightweightList<ViewPart> viewParts = createViewParts(contentType);
LightweightList<SidePanelSection> sidePanelSections = createSidePanelSections(
contentType, contentDisplay, visualMappingsControl,
resourceModel, visualizationModel);
for (ViewPart viewPart : viewParts) {
viewPart.addSidePanelSections(sidePanelSections);
}
String label = contentDisplay.getName();
managedConfiguration
.addManagedSlotMappingConfigurationChangedEventHandler(new ManagedSlotMappingConfigurationChangedEventHandler() {
@Override
public void onSlotMappingStateChanged(
ManagedSlotMappingConfigurationChangedEvent event) {
visualMappingsControl
.updateConfigurationForSlotMappingChangedEvent(event);
}
});