package jetbrains.mps.debugger.java.runtime.state.customViewers; /*Generated by MPS */ import com.intellij.openapi.components.ApplicationComponent; import jetbrains.mps.debugger.java.api.state.customViewers.CustomViewersManager; import java.util.Set; import jetbrains.mps.debugger.java.api.state.proxy.ValueWrapperFactory; import jetbrains.mps.internal.collections.runtime.SetSequence; import java.util.HashSet; import jetbrains.mps.internal.collections.runtime.IVisitor; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; public class BaseLanguageCustomViewers implements ApplicationComponent { private final CustomViewersManager myCustomViewerManager; private final Set<ValueWrapperFactory> myFactories = SetSequence.fromSet(new HashSet<ValueWrapperFactory>()); public BaseLanguageCustomViewers(CustomViewersManager manager) { myCustomViewerManager = manager; } public void initComponent() { SetSequence.fromSet(myFactories).addElement(new ObjectWrapperFactory()); SetSequence.fromSet(myFactories).addElement(new ArrayWrapperFactory()); SetSequence.fromSet(myFactories).addElement(new PrimitiveWrapperFactory()); SetSequence.fromSet(myFactories).addElement(new StringWrapperFactory()); SetSequence.fromSet(myFactories).visitAll(new IVisitor<ValueWrapperFactory>() { public void visit(ValueWrapperFactory it) { myCustomViewerManager.addFactory(it); } }); } public void disposeComponent() { SetSequence.fromSet(myFactories).visitAll(new IVisitor<ValueWrapperFactory>() { public void visit(ValueWrapperFactory it) { myCustomViewerManager.removeFactory(it); } }); } @NonNls @NotNull public String getComponentName() { return "Base Language Custom Viewers"; } }