package jetbrains.mps.samples.componentDependencies.structure; /*Generated by MPS */ import jetbrains.mps.smodel.runtime.BaseStructureAspectDescriptor; import jetbrains.mps.smodel.runtime.ConceptDescriptor; import java.util.Collection; import java.util.Arrays; import org.jetbrains.annotations.Nullable; import jetbrains.mps.smodel.adapter.ids.SConceptId; import org.jetbrains.mps.openapi.language.SAbstractConcept; import jetbrains.mps.smodel.runtime.impl.ConceptDescriptorBuilder2; public class StructureAspectDescriptor extends BaseStructureAspectDescriptor { /*package*/ final ConceptDescriptor myConceptComponent = createDescriptorForComponent(); /*package*/ final ConceptDescriptor myConceptComponentSet = createDescriptorForComponentSet(); /*package*/ final ConceptDescriptor myConceptDependency = createDescriptorForDependency(); /*package*/ final ConceptDescriptor myConceptInPort = createDescriptorForInPort(); /*package*/ final ConceptDescriptor myConceptOutPort = createDescriptorForOutPort(); private final LanguageConceptSwitch myConceptIndex; public StructureAspectDescriptor() { myConceptIndex = new LanguageConceptSwitch(); } @Override public Collection<ConceptDescriptor> getDescriptors() { return Arrays.asList(myConceptComponent, myConceptComponentSet, myConceptDependency, myConceptInPort, myConceptOutPort); } @Override @Nullable public ConceptDescriptor getDescriptor(SConceptId id) { switch (myConceptIndex.index(id)) { case LanguageConceptSwitch.Component: return myConceptComponent; case LanguageConceptSwitch.ComponentSet: return myConceptComponentSet; case LanguageConceptSwitch.Dependency: return myConceptDependency; case LanguageConceptSwitch.InPort: return myConceptInPort; case LanguageConceptSwitch.OutPort: return myConceptOutPort; default: return null; } } /*package*/ int internalIndex(SAbstractConcept c) { return myConceptIndex.index(c); } private static ConceptDescriptor createDescriptorForComponent() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.componentDependencies", "Component", 0x3066bc0924384300L, 0xa9365bd59917ae9bL, 0x565e19763814f144L); b.class_(false, false, false); b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L); b.origin("r:afaf73eb-94a1-4aae-902b-ed4d28124667(jetbrains.mps.samples.componentDependencies.structure)/6223439730610336068"); b.prop("x", 0x565e1976381bdb4dL, "6223439730610789197"); b.prop("y", 0x565e1976381bdb4fL, "6223439730610789199"); b.prop("width", 0x7128192564721b88L, "8153794773743967112"); b.prop("heigh", 0x7128192564721b8fL, "8153794773743967119"); b.prop("subsystem", 0x7128192564721babL, "8153794773743967147"); b.aggregate("dep", 0x565e19763814f147L).target(0x3066bc0924384300L, 0xa9365bd59917ae9bL, 0x565e1976381b71a0L).optional(true).ordered(true).multiple(true).origin("6223439730610336071").done(); b.aggregate("in", 0x565e1976381be142L).target(0x3066bc0924384300L, 0xa9365bd59917ae9bL, 0x565e1976381be166L).optional(true).ordered(true).multiple(true).origin("6223439730610790722").done(); b.aggregate("out", 0x565e1976381be146L).target(0x3066bc0924384300L, 0xa9365bd59917ae9bL, 0x565e1976381be145L).optional(true).ordered(true).multiple(true).origin("6223439730610790726").done(); return b.create(); } private static ConceptDescriptor createDescriptorForComponentSet() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.componentDependencies", "ComponentSet", 0x3066bc0924384300L, 0xa9365bd59917ae9bL, 0x565e19763814242bL); b.class_(false, false, true); b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L); b.origin("r:afaf73eb-94a1-4aae-902b-ed4d28124667(jetbrains.mps.samples.componentDependencies.structure)/6223439730610283563"); b.prop("query", 0x67281f6f60dc969eL, "7433225748201903774"); b.aggregate("component", 0x565e197638146fa8L).target(0x3066bc0924384300L, 0xa9365bd59917ae9bL, 0x565e19763814f144L).optional(false).ordered(true).multiple(true).origin("6223439730610302888").done(); return b.create(); } private static ConceptDescriptor createDescriptorForDependency() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.componentDependencies", "Dependency", 0x3066bc0924384300L, 0xa9365bd59917ae9bL, 0x565e1976381b71a0L); b.class_(false, false, false); b.origin("r:afaf73eb-94a1-4aae-902b-ed4d28124667(jetbrains.mps.samples.componentDependencies.structure)/6223439730610762144"); b.associate("to", 0x565e1976381b7654L).target(0x3066bc0924384300L, 0xa9365bd59917ae9bL, 0x565e19763814f144L).optional(false).origin("6223439730610763348").done(); b.alias("depends on"); return b.create(); } private static ConceptDescriptor createDescriptorForInPort() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.componentDependencies", "InPort", 0x3066bc0924384300L, 0xa9365bd59917ae9bL, 0x565e1976381be166L); b.class_(false, false, false); b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L); b.origin("r:afaf73eb-94a1-4aae-902b-ed4d28124667(jetbrains.mps.samples.componentDependencies.structure)/6223439730610790758"); return b.create(); } private static ConceptDescriptor createDescriptorForOutPort() { ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.samples.componentDependencies", "OutPort", 0x3066bc0924384300L, 0xa9365bd59917ae9bL, 0x565e1976381be145L); b.class_(false, false, false); b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L); b.origin("r:afaf73eb-94a1-4aae-902b-ed4d28124667(jetbrains.mps.samples.componentDependencies.structure)/6223439730610790725"); return b.create(); } }