| /** |
| * |
| * Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany) |
| * |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * Christophe Loetz (Loetz GmbH&Co.KG) - initial implementation |
| * |
| */ |
| |
| package org.eclipse.osbp.xtext.entitymock; |
| |
| import java.util.Properties; |
| |
| import org.eclipse.xtext.Constants; |
| import org.eclipse.xtext.service.DefaultRuntimeModule; |
| |
| import com.google.inject.Binder; |
| import com.google.inject.name.Names; |
| |
| /** |
| * Manual modifications go to {org.eclipse.osbp.xtext.entitymock.EntityMockDSLRuntimeModule} |
| */ |
| @SuppressWarnings("all") |
| public abstract class AbstractEntityMockDSLRuntimeModule extends DefaultRuntimeModule { |
| |
| protected Properties properties = null; |
| |
| @Override |
| public void configure(Binder binder) { |
| properties = tryBindProperties(binder, "org/eclipse/osbp/xtext/entitymock/EntityMockDSL.properties"); |
| super.configure(binder); |
| } |
| |
| public void configureLanguageName(Binder binder) { |
| binder.bind(String.class).annotatedWith(Names.named(Constants.LANGUAGE_NAME)).toInstance("org.eclipse.osbp.xtext.entitymock.EntityMockDSL"); |
| } |
| |
| public void configureFileExtensions(Binder binder) { |
| if (properties == null || properties.getProperty(Constants.FILE_EXTENSIONS) == null) |
| binder.bind(String.class).annotatedWith(Names.named(Constants.FILE_EXTENSIONS)).toInstance("entitymock"); |
| } |
| |
| // contributed by org.eclipse.xtext.generator.serializer.SerializerFragment |
| public Class<? extends org.eclipse.xtext.serializer.sequencer.ISemanticSequencer> bindISemanticSequencer() { |
| return org.eclipse.osbp.xtext.entitymock.serializer.EntityMockDSLSemanticSequencer.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.serializer.SerializerFragment |
| public Class<? extends org.eclipse.xtext.serializer.sequencer.ISyntacticSequencer> bindISyntacticSequencer() { |
| return org.eclipse.osbp.xtext.entitymock.serializer.EntityMockDSLSyntacticSequencer.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.serializer.SerializerFragment |
| public Class<? extends org.eclipse.xtext.serializer.ISerializer> bindISerializer() { |
| return org.eclipse.xtext.serializer.impl.Serializer.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment |
| public Class<? extends org.eclipse.xtext.parser.IParser> bindIParser() { |
| return org.eclipse.osbp.xtext.entitymock.parser.antlr.EntityMockDSLParser.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment |
| public Class<? extends org.eclipse.xtext.parser.ITokenToStringConverter> bindITokenToStringConverter() { |
| return org.eclipse.xtext.parser.antlr.AntlrTokenToStringConverter.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment |
| public Class<? extends org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider> bindIAntlrTokenFileProvider() { |
| return org.eclipse.osbp.xtext.entitymock.parser.antlr.EntityMockDSLAntlrTokenFileProvider.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment |
| public Class<? extends org.eclipse.xtext.parser.antlr.Lexer> bindLexer() { |
| return org.eclipse.osbp.xtext.entitymock.parser.antlr.internal.InternalEntityMockDSLLexer.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment |
| public com.google.inject.Provider<org.eclipse.osbp.xtext.entitymock.parser.antlr.internal.InternalEntityMockDSLLexer> provideInternalEntityMockDSLLexer() { |
| return org.eclipse.xtext.parser.antlr.LexerProvider.create(org.eclipse.osbp.xtext.entitymock.parser.antlr.internal.InternalEntityMockDSLLexer.class); |
| } |
| |
| // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment |
| public void configureRuntimeLexer(com.google.inject.Binder binder) { |
| binder.bind(org.eclipse.xtext.parser.antlr.Lexer.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.parser.antlr.LexerBindings.RUNTIME)).to(org.eclipse.osbp.xtext.entitymock.parser.antlr.internal.InternalEntityMockDSLLexer.class); |
| } |
| |
| // contributed by org.eclipse.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment |
| public Class<? extends org.eclipse.xtext.parser.antlr.ITokenDefProvider> bindITokenDefProvider() { |
| return org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.validation.ValidatorFragment |
| @org.eclipse.xtext.service.SingletonBinding(eager=true) public Class<? extends org.eclipse.osbp.xtext.entitymock.validation.EntityMockDSLValidator> bindEntityMockDSLValidator() { |
| return org.eclipse.osbp.xtext.entitymock.validation.EntityMockDSLValidator.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.scoping.AbstractScopingFragment |
| public void configureIgnoreCaseLinking(com.google.inject.Binder binder) { |
| binder.bindConstant().annotatedWith(org.eclipse.xtext.scoping.IgnoreCaseLinking.class).to(false); |
| } |
| |
| // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment |
| public Class<? extends org.eclipse.xtext.resource.IContainer.Manager> bindIContainer$Manager() { |
| return org.eclipse.xtext.resource.containers.StateBasedContainerManager.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment |
| public Class<? extends org.eclipse.xtext.resource.containers.IAllContainersState.Provider> bindIAllContainersState$Provider() { |
| return org.eclipse.xtext.resource.containers.ResourceSetBasedAllContainersStateProvider.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment |
| public void configureIResourceDescriptions(com.google.inject.Binder binder) { |
| binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class); |
| } |
| |
| // contributed by org.eclipse.xtext.generator.builder.BuilderIntegrationFragment |
| public void configureIResourceDescriptionsPersisted(com.google.inject.Binder binder) { |
| binder.bind(org.eclipse.xtext.resource.IResourceDescriptions.class).annotatedWith(com.google.inject.name.Names.named(org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider.PERSISTED_DESCRIPTIONS)).to(org.eclipse.xtext.resource.impl.ResourceSetBasedResourceDescriptions.class); |
| } |
| |
| // contributed by org.eclipse.xtext.generator.formatting.FormatterFragment |
| public Class<? extends org.eclipse.xtext.formatting.IFormatter> bindIFormatter() { |
| return org.eclipse.osbp.xtext.entitymock.formatting.EntityMockDSLFormatter.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.types.TypesGeneratorFragment |
| public org.eclipse.xtext.common.types.TypesFactory bindTypesFactoryToInstance() { |
| return org.eclipse.xtext.common.types.TypesFactory.eINSTANCE; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.types.TypesGeneratorFragment |
| public Class<? extends org.eclipse.xtext.common.types.access.IJvmTypeProvider.Factory> bindIJvmTypeProvider$Factory() { |
| return org.eclipse.xtext.common.types.access.ClasspathTypeProviderFactory.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.types.TypesGeneratorFragment |
| public Class<? extends org.eclipse.xtext.common.types.xtext.AbstractTypeScopeProvider> bindAbstractTypeScopeProvider() { |
| return org.eclipse.xtext.common.types.xtext.ClasspathBasedTypeScopeProvider.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.xbase.interpreter.IEvaluationContext> bindIEvaluationContext() { |
| return org.eclipse.xtext.xbase.interpreter.impl.DefaultEvaluationContext.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.xbase.interpreter.IExpressionInterpreter> bindIExpressionInterpreter() { |
| return org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.naming.IQualifiedNameConverter> bindIQualifiedNameConverter() { |
| return org.eclipse.xtext.xbase.XbaseQualifiedNameConverter.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.naming.IQualifiedNameProvider> bindIQualifiedNameProvider() { |
| return org.eclipse.xtext.xbase.scoping.XbaseQualifiedNameProvider.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.conversion.IValueConverterService> bindIValueConverterService() { |
| return org.eclipse.xtext.xbase.conversion.XbaseValueConverterService.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.scoping.IScopeProvider> bindIScopeProvider() { |
| return org.eclipse.xtext.xbase.scoping.batch.IBatchScopeProvider.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public void configureLinkingIScopeProvider(com.google.inject.Binder binder) { |
| binder.bind(org.eclipse.xtext.scoping.IScopeProvider.class).annotatedWith(org.eclipse.xtext.linking.LinkingScopeProviderBinding.class).to(org.eclipse.xtext.xbase.scoping.batch.IBatchScopeProvider.class); |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public void configureSerializerIScopeProvider(com.google.inject.Binder binder) { |
| binder.bind(org.eclipse.xtext.scoping.IScopeProvider.class).annotatedWith(org.eclipse.xtext.serializer.tokens.SerializerScopeProviderBinding.class).to(org.eclipse.xtext.xbase.serializer.SerializerScopeProvider.class); |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public void configureIScopeProviderDelegate(com.google.inject.Binder binder) { |
| binder.bind(org.eclipse.xtext.scoping.IScopeProvider.class).annotatedWith(Names.named(org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider.NAMED_DELEGATE)).to(org.eclipse.xtext.xbase.scoping.XbaseImportedNamespaceScopeProvider.class); |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.linking.ILinker> bindILinker() { |
| return org.eclipse.xtext.xbase.linking.XbaseLazyLinker.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.resource.XtextResource> bindXtextResource() { |
| return org.eclipse.xtext.xbase.resource.BatchLinkableResource.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| @org.eclipse.xtext.service.SingletonBinding(eager=true) public Class<? extends org.eclipse.xtext.xbase.validation.JvmTypeReferencesValidator> bindJvmTypeReferencesValidator() { |
| return org.eclipse.xtext.xbase.validation.JvmTypeReferencesValidator.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.xbase.featurecalls.IdentifiableSimpleNameProvider> bindIdentifiableSimpleNameProvider() { |
| return org.eclipse.xtext.xbase.featurecalls.IdentifiableSimpleNameProvider.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.resource.IDerivedStateComputer> bindIDerivedStateComputer() { |
| return org.eclipse.xtext.xbase.jvmmodel.JvmModelAssociator.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.resource.IResourceDescription.Manager> bindIResourceDescription$Manager() { |
| return org.eclipse.xtext.resource.DerivedStateAwareResourceDescriptionManager.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.generator.IGenerator> bindIGenerator() { |
| return org.eclipse.xtext.xbase.compiler.JvmModelGenerator.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public org.eclipse.xtext.xtype.XtypeFactory bindXtypeFactoryToInstance() { |
| return org.eclipse.xtext.xtype.XtypeFactory.eINSTANCE; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.debug.IStratumBreakpointSupport> bindIStratumBreakpointSupport() { |
| return org.eclipse.xtext.xbase.debug.XbaseStratumBreakpointSupport.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.generator.LineSeparatorHarmonizer> bindLineSeparatorHarmonizer() { |
| return org.eclipse.xtext.xbase.compiler.output.TraceAwarePostProcessor.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.resource.IDefaultResourceDescriptionStrategy> bindIDefaultResourceDescriptionStrategy() { |
| return org.eclipse.xtext.xbase.resource.XbaseResourceDescriptionStrategy.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.validation.SeverityConverter> bindSeverityConverter() { |
| return org.eclipse.xtext.xbase.validation.XbaseSeverityConverter.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.validation.ConfigurableIssueCodesProvider> bindConfigurableIssueCodesProvider() { |
| return org.eclipse.xtext.xbase.validation.XbaseConfigurableIssueCodes.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.resource.EObjectAtOffsetHelper> bindEObjectAtOffsetHelper() { |
| return org.eclipse.xtext.xbase.linking.BrokenConstructorCallAwareEObjectAtOffsetHelper.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.validation.CancelableDiagnostician> bindCancelableDiagnostician() { |
| return org.eclipse.xtext.xbase.validation.XbaseDiagnostician.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.xbase.scoping.featurecalls.StaticImplicitMethodsFeatureForTypeProvider.ExtensionClassNameProvider> bindStaticImplicitMethodsFeatureForTypeProvider$ExtensionClassNameProvider() { |
| return org.eclipse.xtext.xbase.scoping.batch.ImplicitlyImportedTypesAdapter.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtend.lib.macro.file.MutableFileSystemSupport> bindMutableFileSystemSupport() { |
| return org.eclipse.xtext.xbase.file.JavaIOFileSystemSupport.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtend.lib.macro.file.FileLocations> bindFileLocations() { |
| return org.eclipse.xtext.xbase.file.FileLocationsImpl.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends com.google.inject.Provider<org.eclipse.xtext.xbase.file.WorkspaceConfig>> provideWorkspaceConfig() { |
| return org.eclipse.xtext.xbase.file.RuntimeWorkspaceConfigProvider.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.xbase.typesystem.computation.ITypeComputer> bindITypeComputer() { |
| return org.eclipse.xtext.xbase.annotations.typesystem.XbaseWithAnnotationsTypeComputer.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.xbase.scoping.batch.XbaseBatchScopeProvider> bindXbaseBatchScopeProvider() { |
| return org.eclipse.xtext.xbase.annotations.typesystem.XbaseWithAnnotationsBatchScopeProvider.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.linking.ILinkingDiagnosticMessageProvider> bindILinkingDiagnosticMessageProvider() { |
| return org.eclipse.xtext.xbase.annotations.validation.UnresolvedAnnotationTypeAwareMessageProducer.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.resource.ILocationInFileProvider> bindILocationInFileProvider() { |
| return org.eclipse.xtext.xbase.jvmmodel.JvmLocationInFileProvider.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.scoping.IGlobalScopeProvider> bindIGlobalScopeProvider() { |
| return org.eclipse.xtext.common.types.xtext.TypesAwareDefaultGlobalScopeProvider.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.xbase.validation.FeatureNameValidator> bindFeatureNameValidator() { |
| return org.eclipse.xtext.xbase.validation.LogicalContainerAwareFeatureNameValidator.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.xbase.typesystem.internal.DefaultBatchTypeResolver> bindDefaultBatchTypeResolver() { |
| return org.eclipse.xtext.xbase.typesystem.internal.LogicalContainerAwareBatchTypeResolver.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.xbase.typesystem.internal.DefaultReentrantTypeResolver> bindDefaultReentrantTypeResolver() { |
| return org.eclipse.xtext.xbase.typesystem.internal.LogicalContainerAwareReentrantTypeResolver.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.validation.IResourceValidator> bindIResourceValidator() { |
| return org.eclipse.xtext.xbase.annotations.validation.DerivedStateAwareResourceValidator.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.xbase.XbaseGeneratorFragment |
| public Class<? extends org.eclipse.xtext.xbase.jvmmodel.IJvmModelInferrer> bindIJvmModelInferrer() { |
| return org.eclipse.osbp.xtext.entitymock.jvmmodel.EntityMockDSLJvmModelInferrer.class; |
| } |
| |
| // contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment |
| public java.lang.ClassLoader bindClassLoaderToInstance() { |
| return getClass().getClassLoader(); |
| } |
| |
| // contributed by org.eclipse.xtext.generator.grammarAccess.GrammarAccessFragment |
| public Class<? extends org.eclipse.xtext.IGrammarAccess> bindIGrammarAccess() { |
| return org.eclipse.osbp.xtext.entitymock.services.EntityMockDSLGrammarAccess.class; |
| } |
| |
| } |