package jetbrains.mps.ide.httpsupport.structure;

/*Generated by MPS */

import jetbrains.mps.smodel.runtime.BaseStructureAspectDescriptor;
import jetbrains.mps.smodel.runtime.ConceptDescriptor;
import jetbrains.mps.smodel.runtime.ConstrainedStringDatatypeDescriptor;
import jetbrains.mps.smodel.runtime.ConstrainedStringDatatypeDescriptorImpl;
import java.util.Collection;
import java.util.Arrays;
import org.jetbrains.annotations.Nullable;
import jetbrains.mps.smodel.adapter.ids.SConceptId;
import jetbrains.mps.smodel.runtime.DataTypeDescriptor;
import org.jetbrains.mps.openapi.language.SAbstractConcept;
import jetbrains.mps.smodel.runtime.impl.ConceptDescriptorBuilder2;
import jetbrains.mps.smodel.runtime.ConceptKind;
import jetbrains.mps.smodel.runtime.StaticScope;
import jetbrains.mps.smodel.adapter.ids.PrimitiveTypeId;
import jetbrains.mps.smodel.adapter.ids.MetaIdFactory;

public class StructureAspectDescriptor extends BaseStructureAspectDescriptor {
  /*package*/ final ConceptDescriptor myConceptCanHandleRequestFunction = createDescriptorForCanHandleRequestFunction();
  /*package*/ final ConceptDescriptor myConceptDefaultParameterConverter = createDescriptorForDefaultParameterConverter();
  /*package*/ final ConceptDescriptor myConceptDefaultValueFunction = createDescriptorForDefaultValueFunction();
  /*package*/ final ConceptDescriptor myConceptDeserializeFunction = createDescriptorForDeserializeFunction();
  /*package*/ final ConceptDescriptor myConceptHandleRequestFunction = createDescriptorForHandleRequestFunction();
  /*package*/ final ConceptDescriptor myConceptHttpMethod = createDescriptorForHttpMethod();
  /*package*/ final ConceptDescriptor myConceptHttpMethod_ANY = createDescriptorForHttpMethod_ANY();
  /*package*/ final ConceptDescriptor myConceptHttpMethod_Connect = createDescriptorForHttpMethod_Connect();
  /*package*/ final ConceptDescriptor myConceptHttpMethod_Delete = createDescriptorForHttpMethod_Delete();
  /*package*/ final ConceptDescriptor myConceptHttpMethod_Get = createDescriptorForHttpMethod_Get();
  /*package*/ final ConceptDescriptor myConceptHttpMethod_Head = createDescriptorForHttpMethod_Head();
  /*package*/ final ConceptDescriptor myConceptHttpMethod_Options = createDescriptorForHttpMethod_Options();
  /*package*/ final ConceptDescriptor myConceptHttpMethod_Patch = createDescriptorForHttpMethod_Patch();
  /*package*/ final ConceptDescriptor myConceptHttpMethod_Post = createDescriptorForHttpMethod_Post();
  /*package*/ final ConceptDescriptor myConceptHttpMethod_Put = createDescriptorForHttpMethod_Put();
  /*package*/ final ConceptDescriptor myConceptHttpMethod_Trace = createDescriptorForHttpMethod_Trace();
  /*package*/ final ConceptDescriptor myConceptHttpRequestOperation = createDescriptorForHttpRequestOperation();
  /*package*/ final ConceptDescriptor myConceptHttpRequestParameter = createDescriptorForHttpRequestParameter();
  /*package*/ final ConceptDescriptor myConceptIDEAPlatformPortProvider = createDescriptorForIDEAPlatformPortProvider();
  /*package*/ final ConceptDescriptor myConceptIParameterConverter = createDescriptorForIParameterConverter();
  /*package*/ final ConceptDescriptor myConceptMPSIntegrationPortProvider = createDescriptorForMPSIntegrationPortProvider();
  /*package*/ final ConceptDescriptor myConceptMPSInternalPortProvider = createDescriptorForMPSInternalPortProvider();
  /*package*/ final ConceptDescriptor myConceptNode_getURLOperation = createDescriptorForNode_getURLOperation();
  /*package*/ final ConceptDescriptor myConceptParameterConverterDeclaration = createDescriptorForParameterConverterDeclaration();
  /*package*/ final ConceptDescriptor myConceptParameterConverterReference = createDescriptorForParameterConverterReference();
  /*package*/ final ConceptDescriptor myConceptParameterInitializer = createDescriptorForParameterInitializer();
  /*package*/ final ConceptDescriptor myConceptPort = createDescriptorForPort();
  /*package*/ final ConceptDescriptor myConceptPortProvider = createDescriptorForPortProvider();
  /*package*/ final ConceptDescriptor myConceptQueryParameter = createDescriptorForQueryParameter();
  /*package*/ final ConceptDescriptor myConceptQueryParameterReference = createDescriptorForQueryParameterReference();
  /*package*/ final ConceptDescriptor myConceptQueryPath = createDescriptorForQueryPath();
  /*package*/ final ConceptDescriptor myConceptQuerySegment = createDescriptorForQuerySegment();
  /*package*/ final ConceptDescriptor myConceptRequestHandler = createDescriptorForRequestHandler();
  /*package*/ final ConceptDescriptor myConceptRequestType = createDescriptorForRequestType();
  /*package*/ final ConceptDescriptor myConceptRequestURLBuilderExpression = createDescriptorForRequestURLBuilderExpression();
  /*package*/ final ConceptDescriptor myConceptResponseSendOperation = createDescriptorForResponseSendOperation();
  /*package*/ final ConceptDescriptor myConceptSerializeFunction = createDescriptorForSerializeFunction();
  /*package*/ final ConceptDescriptor myConceptSerializedValueParameter = createDescriptorForSerializedValueParameter();
  /*package*/ final ConceptDescriptor myConceptValueToSerializeParameter = createDescriptorForValueToSerializeParameter();
  /*package*/ final ConstrainedStringDatatypeDescriptor myCSDatatypeSegmentName = new ConstrainedStringDatatypeDescriptorImpl(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x53d29f104face451L, "SegmentName", "r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/6040064942662280273", "[a-zA-Z0-9.\\-_~:@!$&'()*+,;=%]*");
  private final LanguageConceptSwitch myIndexSwitch;

  public StructureAspectDescriptor() {
    myIndexSwitch = new LanguageConceptSwitch();
  }


  @Override
  public void reportDependencies(jetbrains.mps.smodel.runtime.StructureAspectDescriptor.Dependencies deps) {
    deps.extendedLanguage(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, "jetbrains.mps.baseLanguage");
    deps.extendedLanguage(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, "jetbrains.mps.lang.core");
    deps.extendedLanguage(0x7866978ea0f04cc7L, 0x81bc4d213d9375e1L, "jetbrains.mps.lang.smodel");
    deps.aggregatedLanguage(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, "jetbrains.mps.baseLanguage");
  }

  @Override
  public Collection<ConceptDescriptor> getDescriptors() {
    return Arrays.asList(myConceptCanHandleRequestFunction, myConceptDefaultParameterConverter, myConceptDefaultValueFunction, myConceptDeserializeFunction, myConceptHandleRequestFunction, myConceptHttpMethod, myConceptHttpMethod_ANY, myConceptHttpMethod_Connect, myConceptHttpMethod_Delete, myConceptHttpMethod_Get, myConceptHttpMethod_Head, myConceptHttpMethod_Options, myConceptHttpMethod_Patch, myConceptHttpMethod_Post, myConceptHttpMethod_Put, myConceptHttpMethod_Trace, myConceptHttpRequestOperation, myConceptHttpRequestParameter, myConceptIDEAPlatformPortProvider, myConceptIParameterConverter, myConceptMPSIntegrationPortProvider, myConceptMPSInternalPortProvider, myConceptNode_getURLOperation, myConceptParameterConverterDeclaration, myConceptParameterConverterReference, myConceptParameterInitializer, myConceptPort, myConceptPortProvider, myConceptQueryParameter, myConceptQueryParameterReference, myConceptQueryPath, myConceptQuerySegment, myConceptRequestHandler, myConceptRequestType, myConceptRequestURLBuilderExpression, myConceptResponseSendOperation, myConceptSerializeFunction, myConceptSerializedValueParameter, myConceptValueToSerializeParameter);
  }

  @Override
  @Nullable
  public ConceptDescriptor getDescriptor(SConceptId id) {
    switch (myIndexSwitch.index(id)) {
      case LanguageConceptSwitch.CanHandleRequestFunction:
        return myConceptCanHandleRequestFunction;
      case LanguageConceptSwitch.DefaultParameterConverter:
        return myConceptDefaultParameterConverter;
      case LanguageConceptSwitch.DefaultValueFunction:
        return myConceptDefaultValueFunction;
      case LanguageConceptSwitch.DeserializeFunction:
        return myConceptDeserializeFunction;
      case LanguageConceptSwitch.HandleRequestFunction:
        return myConceptHandleRequestFunction;
      case LanguageConceptSwitch.HttpMethod:
        return myConceptHttpMethod;
      case LanguageConceptSwitch.HttpMethod_ANY:
        return myConceptHttpMethod_ANY;
      case LanguageConceptSwitch.HttpMethod_Connect:
        return myConceptHttpMethod_Connect;
      case LanguageConceptSwitch.HttpMethod_Delete:
        return myConceptHttpMethod_Delete;
      case LanguageConceptSwitch.HttpMethod_Get:
        return myConceptHttpMethod_Get;
      case LanguageConceptSwitch.HttpMethod_Head:
        return myConceptHttpMethod_Head;
      case LanguageConceptSwitch.HttpMethod_Options:
        return myConceptHttpMethod_Options;
      case LanguageConceptSwitch.HttpMethod_Patch:
        return myConceptHttpMethod_Patch;
      case LanguageConceptSwitch.HttpMethod_Post:
        return myConceptHttpMethod_Post;
      case LanguageConceptSwitch.HttpMethod_Put:
        return myConceptHttpMethod_Put;
      case LanguageConceptSwitch.HttpMethod_Trace:
        return myConceptHttpMethod_Trace;
      case LanguageConceptSwitch.HttpRequestOperation:
        return myConceptHttpRequestOperation;
      case LanguageConceptSwitch.HttpRequestParameter:
        return myConceptHttpRequestParameter;
      case LanguageConceptSwitch.IDEAPlatformPortProvider:
        return myConceptIDEAPlatformPortProvider;
      case LanguageConceptSwitch.IParameterConverter:
        return myConceptIParameterConverter;
      case LanguageConceptSwitch.MPSIntegrationPortProvider:
        return myConceptMPSIntegrationPortProvider;
      case LanguageConceptSwitch.MPSInternalPortProvider:
        return myConceptMPSInternalPortProvider;
      case LanguageConceptSwitch.Node_getURLOperation:
        return myConceptNode_getURLOperation;
      case LanguageConceptSwitch.ParameterConverterDeclaration:
        return myConceptParameterConverterDeclaration;
      case LanguageConceptSwitch.ParameterConverterReference:
        return myConceptParameterConverterReference;
      case LanguageConceptSwitch.ParameterInitializer:
        return myConceptParameterInitializer;
      case LanguageConceptSwitch.Port:
        return myConceptPort;
      case LanguageConceptSwitch.PortProvider:
        return myConceptPortProvider;
      case LanguageConceptSwitch.QueryParameter:
        return myConceptQueryParameter;
      case LanguageConceptSwitch.QueryParameterReference:
        return myConceptQueryParameterReference;
      case LanguageConceptSwitch.QueryPath:
        return myConceptQueryPath;
      case LanguageConceptSwitch.QuerySegment:
        return myConceptQuerySegment;
      case LanguageConceptSwitch.RequestHandler:
        return myConceptRequestHandler;
      case LanguageConceptSwitch.RequestType:
        return myConceptRequestType;
      case LanguageConceptSwitch.RequestURLBuilderExpression:
        return myConceptRequestURLBuilderExpression;
      case LanguageConceptSwitch.ResponseSendOperation:
        return myConceptResponseSendOperation;
      case LanguageConceptSwitch.SerializeFunction:
        return myConceptSerializeFunction;
      case LanguageConceptSwitch.SerializedValueParameter:
        return myConceptSerializedValueParameter;
      case LanguageConceptSwitch.ValueToSerializeParameter:
        return myConceptValueToSerializeParameter;
      default:
        return null;
    }
  }

  @Override
  public Collection<DataTypeDescriptor> getDataTypeDescriptors() {
    return Arrays.asList(myCSDatatypeSegmentName);
  }

  /*package*/ int internalIndex(SAbstractConcept c) {
    return myIndexSwitch.index(c);
  }

  private static ConceptDescriptor createDescriptorForCanHandleRequestFunction() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "CanHandleRequestFunction", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x5354a94149f37316L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.baseLanguage.structure.ConceptFunction
    b.super_(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x108bbca0f48L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/6004610301070373654");
    b.version(3);
    b.kind(ConceptKind.INTERFACE, StaticScope.GLOBAL);
    b.alias("canHandle");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForDefaultParameterConverter() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "DefaultParameterConverter", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x46f064803fbdcb2eL);
    b.class_(false, false, false);
    b.parent(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x46f064803fbdb3f3L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/5111696079053507374");
    b.version(3);
    b.aggregate("parameterType", 0x46f064803fbdcb48L).target(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c37f506dL).optional(false).ordered(true).multiple(false).origin("5111696079053507400").done();
    b.alias("default");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForDefaultValueFunction() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "DefaultValueFunction", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x2d9d5d4572ccaf5cL);
    b.class_(false, false, false);
    // extends: jetbrains.mps.baseLanguage.structure.ConceptFunction
    b.super_(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x108bbca0f48L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/3286885855910473564");
    b.version(3);
    b.kind(ConceptKind.INTERFACE, StaticScope.GLOBAL);
    b.alias("default");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForDeserializeFunction() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "DeserializeFunction", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x3d1bb14fe83a1b05L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.baseLanguage.structure.ConceptFunction
    b.super_(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x108bbca0f48L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/4403308017441446661");
    b.version(3);
    b.kind(ConceptKind.INTERFACE, StaticScope.GLOBAL);
    b.alias("deserialize");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHandleRequestFunction() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HandleRequestFunction", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x4d5ac72154f64136L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.baseLanguage.structure.ConceptFunction
    b.super_(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x108bbca0f48L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/5573986434797682998");
    b.version(3);
    b.kind(ConceptKind.INTERFACE, StaticScope.GLOBAL);
    b.alias("handle");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpMethod() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpMethod", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece894cL);
    b.class_(false, true, false);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/3520791039919950156");
    b.version(3);
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpMethod_ANY() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpMethod_ANY", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x3019ad6e5265f8c0L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.HttpMethod
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece894cL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/3465992077578729664");
    b.version(3);
    b.alias("ANY HTTP METHOD");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpMethod_Connect() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpMethod_Connect", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece8a1bL);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.HttpMethod
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece894cL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/3520791039919950363");
    b.version(3);
    b.alias("CONNECT");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpMethod_Delete() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpMethod_Delete", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece89edL);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.HttpMethod
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece894cL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/3520791039919950317");
    b.version(3);
    b.alias("DELETE");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpMethod_Get() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpMethod_Get", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece897aL);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.HttpMethod
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece894cL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/3520791039919950202");
    b.version(3);
    b.alias("GET");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpMethod_Head() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpMethod_Head", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece8991L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.HttpMethod
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece894cL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/3520791039919950225");
    b.version(3);
    b.alias("HEAD");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpMethod_Options() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpMethod_Options", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece8963L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.HttpMethod
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece894cL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/3520791039919950179");
    b.version(3);
    b.alias("OPTIONS");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpMethod_Patch() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpMethod_Patch", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece89d6L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.HttpMethod
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece894cL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/3520791039919950294");
    b.version(3);
    b.alias("PATCH");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpMethod_Post() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpMethod_Post", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece89a8L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.HttpMethod
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece894cL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/3520791039919950248");
    b.version(3);
    b.alias("POST");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpMethod_Put() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpMethod_Put", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece89bfL);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.HttpMethod
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece894cL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/3520791039919950271");
    b.version(3);
    b.alias("PUT");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpMethod_Trace() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpMethod_Trace", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece8a04L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.HttpMethod
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece894cL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/3520791039919950340");
    b.version(3);
    b.alias("TRACE");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpRequestOperation() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpRequestOperation", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x5f91294323b595d2L);
    b.class_(false, true, false);
    b.parent(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x116b46ac030L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/6886330673564849618");
    b.version(3);
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForHttpRequestParameter() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "HttpRequestParameter", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x4d5ac72154f781d2L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.baseLanguage.structure.ConceptFunctionParameter
    b.super_(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x101c66e2c0bL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/5573986434797765074");
    b.version(3);
    b.alias("request");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForIDEAPlatformPortProvider() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "IDEAPlatformPortProvider", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x6f2759b713980630L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.PortProvider
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x6f2759b713980586L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/8009469105144333872");
    b.version(3);
    b.alias("IDEA Platform port");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForIParameterConverter() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "IParameterConverter", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x46f064803fbdb3f3L);
    b.interface_();
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/5111696079053501427");
    b.version(3);
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForMPSIntegrationPortProvider() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "MPSIntegrationPortProvider", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x6f2759b71399ad9bL);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.PortProvider
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x6f2759b713980586L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/8009469105144442267");
    b.version(3);
    b.alias("MPS Integration port");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForMPSInternalPortProvider() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "MPSInternalPortProvider", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x3d72d05b47f59025L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.PortProvider
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x6f2759b713980586L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/4427830474126495781");
    b.version(3);
    b.alias("MPS Internal Port");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForNode_getURLOperation() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "Node_getURLOperation", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x1962d3cabd393132L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.lang.smodel.structure.SNodeOperation
    b.super_(0x7866978ea0f04cc7L, 0x81bc4d213d9375e1L, 0x1090ea2ebacL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/1829257266377339186");
    b.version(3);
    b.alias("getURL");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForParameterConverterDeclaration() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "ParameterConverterDeclaration", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x3d1bb14fe8385046L);
    b.class_(false, false, true);
    b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L);
    b.parent(0xc0080a477e374558L, 0xbee99ae18e690549L, 0x2b7651d49ee9d72L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/4403308017441329222");
    b.version(3);
    b.aggregate("parameterType", 0x3d1bb14fe83869abL).target(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c37f506dL).optional(false).ordered(true).multiple(false).origin("4403308017441335723").done();
    b.aggregate("serializeFunction", 0x3d1bb14fe83a1afeL).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x3d1bb14fe838a4f9L).optional(false).ordered(true).multiple(false).origin("4403308017441446654").done();
    b.aggregate("deserializeFunctinon", 0x3d1bb14fe83a1b01L).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x3d1bb14fe83a1b05L).optional(false).ordered(true).multiple(false).origin("4403308017441446657").done();
    b.aggregate("defaultValueFunction", 0x2d9d5d4572ccb260L).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x2d9d5d4572ccaf5cL).optional(true).ordered(true).multiple(false).origin("3286885855910474336").done();
    b.alias("Parameter Converter");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForParameterConverterReference() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "ParameterConverterReference", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x46f064803fbdb465L);
    b.class_(false, false, false);
    b.parent(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x46f064803fbdb3f3L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/5111696079053501541");
    b.version(3);
    b.associate("declaration", 0x46f064803fbdb466L).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x3d1bb14fe8385046L).optional(false).origin("5111696079053501542").done();
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForParameterInitializer() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "ParameterInitializer", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x4027f9073ff5cf17L);
    b.class_(false, false, false);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/4622937352052264727");
    b.version(3);
    b.associate("parameter", 0x4027f9073ff5cf18L).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x205f4376c585b439L).optional(false).origin("4622937352052264728").done();
    b.aggregate("value", 0x4027f9073ff5cf1aL).target(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c37f506fL).optional(false).ordered(true).multiple(false).origin("4622937352052264730").done();
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForPort() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "Port", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x6f2759b7139c32c2L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.PortProvider
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x6f2759b713980586L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/8009469105144607426");
    b.version(3);
    b.property("portNumber", 0x6f2759b7139c32c3L).type(PrimitiveTypeId.INTEGER).origin("8009469105144607427").done();
    b.alias("custom port");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForPortProvider() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "PortProvider", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x6f2759b713980586L);
    b.class_(false, true, false);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/8009469105144333702");
    b.version(3);
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForQueryParameter() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "QueryParameter", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x205f4376c585b439L);
    b.class_(false, false, false);
    b.parent(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x11a3afa8c0dL);
    b.parent(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x4b64b50fb2fc7720L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/2332657309400282169");
    b.version(3);
    b.property("required", 0x205f4376c585b43dL).type(PrimitiveTypeId.BOOLEAN).origin("2332657309400282173").done();
    b.aggregate("parameterConverter", 0x46f064803fbfba0fL).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x46f064803fbdb3f3L).optional(false).ordered(true).multiple(false).origin("5111696079053634063").done();
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForQueryParameterReference() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "QueryParameterReference", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x205f4376c5884e95L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.baseLanguage.structure.Expression
    b.super_(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c37f506fL);
    b.parent(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xe34de34746464f2L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/2332657309400452757");
    b.version(3);
    b.associate("queryParameter", 0x205f4376c5884e96L).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x205f4376c585b439L).optional(false).origin("2332657309400452758").done();
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForQueryPath() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "QueryPath", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x53d29f104fa64ed7L);
    b.class_(false, false, false);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/6040064942661848791");
    b.version(3);
    b.aggregate("segmetns", 0x53d29f104fa64ef2L).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x53d29f104fa64ed8L).optional(true).ordered(true).multiple(true).origin("6040064942661848818").done();
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForQuerySegment() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "QuerySegment", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x53d29f104fa64ed8L);
    b.class_(false, false, false);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/6040064942661848792");
    b.version(3);
    b.property("segment", 0x53d29f104face44fL).type(MetaIdFactory.dataTypeId(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x53d29f104face451L)).origin("6040064942662280271").done();
    b.alias("/");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForRequestHandler() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "RequestHandler", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x4d5ac72154f4d780L);
    b.class_(false, false, true);
    b.parent(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x11a3afa8c0dL);
    b.parent(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x33d23ee961a0cbf3L);
    b.parent(0xc0080a477e374558L, 0xbee99ae18e690549L, 0x2b7651d49ee9d72L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/5573986434797590400");
    b.version(3);
    b.aggregate("queryPrefix", 0x53d29f104fa64ef9L).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x53d29f104fa64ed7L).optional(false).ordered(true).multiple(false).origin("6040064942661848825").done();
    b.aggregate("queryParameters", 0x205f4376c585d782L).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x205f4376c585b439L).optional(true).ordered(true).multiple(true).origin("2332657309400291202").done();
    b.aggregate("handledMethods", 0x30dc5ccbfece8930L).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x30dc5ccbfece894cL).optional(true).ordered(false).multiple(true).origin("3520791039919950128").done();
    b.aggregate("canHandleFunction", 0x5354a94149f3cfcaL).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x5354a94149f37316L).optional(true).ordered(true).multiple(false).origin("6004610301070397386").done();
    b.aggregate("handleFunction", 0x4d5ac72154f835efL).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x4d5ac72154f64136L).optional(false).ordered(true).multiple(false).origin("5573986434797811183").done();
    b.alias("Request Handler");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForRequestType() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "RequestType", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x878f56dbf94c377L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.baseLanguage.structure.Type
    b.super_(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c37f506dL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/610507601223140215");
    b.version(3);
    b.kind(ConceptKind.INTERFACE, StaticScope.GLOBAL);
    b.alias("request");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForRequestURLBuilderExpression() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "RequestURLBuilderExpression", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x4027f9073ff5ce93L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.baseLanguage.structure.Expression
    b.super_(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c37f506fL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/4622937352052264595");
    b.version(3);
    b.associate("requestHandler", 0x4027f9073ff5cebeL).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x4d5ac72154f4d780L).optional(false).origin("4622937352052264638").done();
    b.aggregate("initializer", 0x4027f9073ff652f7L).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x4027f9073ff5cf17L).optional(true).ordered(true).multiple(true).origin("4622937352052298487").done();
    b.aggregate("port", 0x6f2759b71399b650L).target(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x6f2759b713980586L).optional(false).ordered(true).multiple(false).origin("8009469105144444496").done();
    b.alias("request URL");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForResponseSendOperation() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "ResponseSendOperation", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x5f91294323b64fc1L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.ide.httpsupport.structure.HttpRequestOperation
    b.super_(0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x5f91294323b595d2L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/6886330673564897217");
    b.version(3);
    b.property("type", 0x5f91294323b6503dL).type(PrimitiveTypeId.STRING).origin("6886330673564897341").done();
    b.aggregate("buffer", 0x5f91294323b6503fL).target(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0xf8c37f506fL).optional(false).ordered(true).multiple(false).origin("6886330673564897343").done();
    b.alias("send response");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForSerializeFunction() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "SerializeFunction", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x3d1bb14fe838a4f9L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.baseLanguage.structure.ConceptFunction
    b.super_(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x108bbca0f48L);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/4403308017441350905");
    b.version(3);
    b.kind(ConceptKind.INTERFACE, StaticScope.GLOBAL);
    b.alias("serialize");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForSerializedValueParameter() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "SerializedValueParameter", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x3d1bb14fe838c5e4L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.baseLanguage.structure.ConceptFunctionParameter
    b.super_(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x101c66e2c0bL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/4403308017441359332");
    b.version(3);
    b.alias("string");
    return b.create();
  }
  private static ConceptDescriptor createDescriptorForValueToSerializeParameter() {
    ConceptDescriptorBuilder2 b = new ConceptDescriptorBuilder2("jetbrains.mps.ide.httpsupport", "ValueToSerializeParameter", 0x817e4e70961e4a95L, 0x98a115e9f32231f1L, 0x3d1bb14fe8393f24L);
    b.class_(false, false, false);
    // extends: jetbrains.mps.baseLanguage.structure.ConceptFunctionParameter
    b.super_(0xf3061a5392264cc5L, 0xa443f952ceaf5816L, 0x101c66e2c0bL);
    b.origin("r:3c30b5c5-2f86-4daf-bab8-b406cfefcb4f(jetbrains.mps.ide.httpsupport.structure)/4403308017441390372");
    b.version(3);
    b.alias("value");
    return b.create();
  }
}
