public class OCLinEcoreGenModelGeneratorAdapter
extends org.eclipse.emf.codegen.ecore.genmodel.generator.GenBaseGeneratorAdapter
org.eclipse.emf.codegen.ecore.generator.AbstractGeneratorAdapter.AttributeData, org.eclipse.emf.codegen.ecore.generator.AbstractGeneratorAdapter.ExtensionData, org.eclipse.emf.codegen.ecore.generator.AbstractGeneratorAdapter.JETEmitterDescriptor
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
OCL_GENMODEL_URI |
static java.lang.String |
USE_DELEGATES_KEY |
static java.lang.String |
USE_NULL_ANNOTATIONS_KEY |
EDIT_PROJECT_TYPE, EDITOR_PROJECT_TYPE, MODEL_PROJECT_TYPE, TESTS_PROJECT_TYPE
adapterFactory, BLANK_LINES_PATTERN, CONTINUATION_PATTERN, EXTENSION_POINT_PATTERN, GENERATED_PATTERN, generatingObject, gifEmitters, HEADER_PATTERN, importManager, jetEmitters, lineDelimiter, MANIFEST_ENCODING, message, OBJECT_ARGUMENT, PLUGIN_END_TAG_PATTERN, PROPERTIES_ENCODING, uriConverter, VERSION_PATTERN
Constructor and Description |
---|
OCLinEcoreGenModelGeneratorAdapter(OCLinEcoreGeneratorAdapterFactory generatorAdapterFactory) |
Modifier and Type | Method and Description |
---|---|
protected void |
convertConstraintsToOperations(MetaModelManager metaModelManager,
org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel) |
protected void |
convertConstraintToOperation(Ecore2Pivot ecore2pivot,
org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel,
org.eclipse.emf.ecore.EClassifier eClassifier,
java.lang.String key,
java.lang.String body,
java.lang.String message) |
protected void |
createDispatchTables(org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel,
org.eclipse.emf.common.util.Monitor monitor) |
protected java.util.Map<java.lang.String,java.lang.String> |
createFeatureBodies(org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
Create a Map of feature identification to body to be embedded in the EMF model.
|
protected org.eclipse.emf.common.util.Diagnostic |
doPreGenerate(java.lang.Object object,
java.lang.Object projectType) |
protected org.eclipse.emf.common.util.Diagnostic |
generateModel(java.lang.Object object,
org.eclipse.emf.common.util.Monitor monitor) |
protected java.lang.String |
getLineDelimiter(org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
Deduce the required line delimiter from the usage in the .project file.
|
protected java.io.File |
getProjectFolder(org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel) |
protected boolean |
hasConstraints(Class pivotClass) |
protected boolean |
hasDelegates(org.eclipse.emf.ecore.EPackage ePackage) |
protected boolean |
hasDelegates(org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
Return true if any local GenPackage is for an EPackage that has OCL validation/setting/invocation delegates.
|
protected void |
installJavaBodies(MetaModelManager metaModelManager,
org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel,
java.util.Map<java.lang.String,java.lang.String> results) |
protected void |
installOperation(Ecore2Pivot ecore2pivot,
org.eclipse.emf.ecore.EOperation eOperation,
java.util.Map<java.lang.String,java.lang.String> results) |
protected void |
installProperty(Ecore2Pivot ecore2pivot,
org.eclipse.emf.ecore.EStructuralFeature eFeature,
java.util.Map<java.lang.String,java.lang.String> results) |
protected void |
pruneDelegates(org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
Eliminate all OCL validation/setting/invocation delegates.
|
protected java.util.List<java.lang.String> |
pruneDelegates(java.util.List<java.lang.String> oldDelegates) |
static boolean |
useDelegates(org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
Return true if the genModel has a
OCL_GENMODEL_URI GenAnnotation with a
USE_DELEGATES_KEY detail set to true, or if there is no such GenAnnotation and the
global preference CommonOptions.CODE_GENERATION_MODE
has been set to CodeGenerationMode.DELEGATED |
static boolean |
useNullAnnotations(org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
Return true if the genModel has a
OCL_GENMODEL_URI GenAnnotation with a
USE_NULL_ANNOTATIONS_KEY detail set to true. |
addBaseTemplatePathEntries, addClasspathEntries, canGenerate, canGenerateEdit, canGenerateEditor, canGenerateModel, canGenerateTests, clearImportManager, createImportManager, doGenerate, ensureProjectExists, generateEdit, generateEditor, generateTests, getGenerateChildren, getGenerateEditChildren, getGenerateEditorChildren, getGenerateModelChildren, getGenerateTestsChildren, getParent, getUserTemplatePath, setLineDelimiter
createCodeFormatter, createGIFEmitter, createInputStream, createJETEmitter, createMonitor, createOutputStream, doPostGenerate, ensureContainerExists, exists, formatCode, formatCode, generate, generateGIF, generateJava, generateProperties, generateText, getAdapterFactory, getAttributeData, getCanGenerateChildren, getCanGenerateParent, getContents, getEncoding, getExtensionData, getGenerateParent, getGenerator, getGIFEmitter, getImportManager, getJETEmitter, getLineDelimiter, getLineDelimiter, getURIConverter, isAdapterForType, isReadOnly, mergeManifest, mergePluginXML, organizeImports, postGenerate, preGenerate, setAdapterFactory, setStaticTemplateClass, setStaticTemplateClass, setWriteable, shouldMerge, toDiagnostic, toPlatformResourceURI, toURI, validateEdit
dispose, getTarget, notifyChanged, setTarget, unsetTarget
@NonNull public static final java.lang.String OCL_GENMODEL_URI
@NonNull public static final java.lang.String USE_DELEGATES_KEY
@NonNull public static final java.lang.String USE_NULL_ANNOTATIONS_KEY
public OCLinEcoreGenModelGeneratorAdapter(@NonNull OCLinEcoreGeneratorAdapterFactory generatorAdapterFactory)
public static boolean useDelegates(@NonNull org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
OCL_GENMODEL_URI
GenAnnotation with a
USE_DELEGATES_KEY
detail set to true, or if there is no such GenAnnotation and the
global preference CommonOptions.CODE_GENERATION_MODE
has been set to CodeGenerationMode.DELEGATED
public static boolean useNullAnnotations(@NonNull org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
OCL_GENMODEL_URI
GenAnnotation with a
USE_NULL_ANNOTATIONS_KEY
detail set to true.protected void convertConstraintToOperation(@NonNull Ecore2Pivot ecore2pivot, @NonNull org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel, @NonNull org.eclipse.emf.ecore.EClassifier eClassifier, @NonNull java.lang.String key, @NonNull java.lang.String body, @Nullable java.lang.String message)
protected void convertConstraintsToOperations(@NonNull MetaModelManager metaModelManager, @NonNull org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
protected void createDispatchTables(@NonNull org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel, @NonNull org.eclipse.emf.common.util.Monitor monitor) throws java.io.IOException
java.io.IOException
@NonNull protected java.util.Map<java.lang.String,java.lang.String> createFeatureBodies(@NonNull org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel) throws java.io.IOException
java.io.IOException
protected org.eclipse.emf.common.util.Diagnostic doPreGenerate(java.lang.Object object, java.lang.Object projectType)
doPreGenerate
in class org.eclipse.emf.codegen.ecore.generator.AbstractGeneratorAdapter
protected org.eclipse.emf.common.util.Diagnostic generateModel(java.lang.Object object, org.eclipse.emf.common.util.Monitor monitor)
generateModel
in class org.eclipse.emf.codegen.ecore.genmodel.generator.GenBaseGeneratorAdapter
protected java.lang.String getLineDelimiter(org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
@NonNull protected java.io.File getProjectFolder(@NonNull org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
protected boolean hasConstraints(Class pivotClass)
protected boolean hasDelegates(@NonNull org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
protected boolean hasDelegates(@NonNull org.eclipse.emf.ecore.EPackage ePackage)
protected void installJavaBodies(@NonNull MetaModelManager metaModelManager, @NonNull org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel, @NonNull java.util.Map<java.lang.String,java.lang.String> results)
protected void installOperation(@NonNull Ecore2Pivot ecore2pivot, @NonNull org.eclipse.emf.ecore.EOperation eOperation, @NonNull java.util.Map<java.lang.String,java.lang.String> results)
protected void installProperty(@NonNull Ecore2Pivot ecore2pivot, @NonNull org.eclipse.emf.ecore.EStructuralFeature eFeature, @NonNull java.util.Map<java.lang.String,java.lang.String> results)
protected void pruneDelegates(@NonNull org.eclipse.emf.codegen.ecore.genmodel.GenModel genModel)
protected java.util.List<java.lang.String> pruneDelegates(@Nullable java.util.List<java.lang.String> oldDelegates)