Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » Epsilon » EWL and reserved word as metaclass name (Integer) and instanciation
EWL and reserved word as metaclass name (Integer) and instanciation [message #568780] Thu, 04 June 2009 01:15
St is currently offline StFriend
Messages: 77
Registered: July 2009
Member
Hi list,

I'm trying to get something like creating an Integer instance (which is an
EClass, part of my meta-model) working with a dynamic model which is
registered using right-click->Register EPackage, but I get an error.

Here is the ewl:

wizard addIdentifierAsPrimaryKeyToClass {

guard : self.isTypeOf(Class) and not
self.column.exists(c|c.name.matches('id'))

title : 'Add an Id column as primary key to ' + self.name

do {

self.column.add( self.generateIdPKUnikColumn() );
}
}

wizard addIdentifiersAsPrimaryKeyToClasses {

guard : self.isTypeOf(Class)

title : 'Add an Id column as primary key to classes (Model-wide)'

do {
for( class in Class.allInstances() )
{
if( not class.column.exists(c|c.name.matches('id') ) )
{
class.column.add( class.generateIdPKUnikColumn() );
}
}
}
}

operation Class generateIdPKUnikColumn () : Column {
var idcolumn : Column;
idcolumn := Column.createInstance();
idcolumn.name := 'id';
idcolumn.primary := true;
idcolumn.unique := true;
var idtype : sfdoctrine!Integer; <----------- problem here
idtype := sfdoctrine!Integer.createInstance();
idcolumn.type = idtype;
return idcolumn;
}

I have replaced sfdoctrine!Integer; by sfDoctrine and with Integer alone
but none does works.

Here is the emfatic head of my meta-model :

@namespace(uri=" http://stephaneerard.wordpress.com/meta-models/sfDoctrine/1. 2",
prefix="sfdoctrine")
package sfDoctrine;

And the error with sfDoctrine (same with sfdoctrine) :
Type 'sfdoctrine!Integer' not found
(D:\e_workspaces\modeling\sfDoctrine-1.2\tools\wizards\addIdentifierAsPrimaryKeyAndUniqueToClass.ewl@36:28)
at
org.eclipse.epsilon.eol.execute.TypeExecutor.execute(TypeExe cutor.java:90)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at
org.eclipse.epsilon.eol.execute.VarStatementExecutor.execute (VarStatementExecutor.java:48)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at
org.eclipse.epsilon.eol.execute.StatementBlockExecutor.execu te(StatementBlockExecutor.java:33)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at org.eclipse.epsilon.eol.EolOperation.executeBody(EolOperatio n.java:257)
at org.eclipse.epsilon.eol.EolOperation.execute(EolOperation.ja va:230)
at org.eclipse.epsilon.eol.EolOperation.execute(EolOperation.ja va:188)
at org.eclipse.epsilon.eol.EolOperations.execute(EolOperations. java:143)
at
org.eclipse.epsilon.eol.execute.PointExecutor.executeOperati on(PointExecutor.java:160)
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute(PointE xecutor.java:66)
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute(PointE xecutor.java:36)
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute(PointE xecutor.java:122)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at
org.eclipse.epsilon.eol.execute.ParametersExecutor.execute(P arametersExecutor.java:29)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at
org.eclipse.epsilon.eol.execute.PointExecutor.executeOperati on(PointExecutor.java:154)
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute(PointE xecutor.java:66)
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute(PointE xecutor.java:36)
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute(PointE xecutor.java:122)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at
org.eclipse.epsilon.eol.execute.StatementBlockExecutor.execu te(StatementBlockExecutor.java:33)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at org.eclipse.epsilon.ewl.EwlWizard.process(EwlWizard.java:78)
at
org.eclipse.epsilon.ewl.EwlWizardInstance.process(EwlWizardI nstance.java:66)
at
org.eclipse.epsilon.ewl.emf.ExecuteWizardInstanceCommand.exe cute(ExecuteWizardInstanceCommand.java:42)
at
org.eclipse.emf.common.command.BasicCommandStack.execute(Bas icCommandStack.java:84)
at
org.eclipse.epsilon.ewl.emf.AbstractContributeWizardsAction. execute(AbstractContributeWizardsAction.java:235)
at
org.eclipse.epsilon.ewl.emf.AbstractContributeWizardsAction$ 1.widgetSelected(AbstractContributeWizardsAction.java:223)
at
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:228)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3823)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3422)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2384)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2348)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:22 00)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:495)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:288)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:490)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
at
org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:113)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:193)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication(EclipseAppLauncher.java:110)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:79)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:386)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 549)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
at org.eclipse.equinox.launcher.Main.run(Main.java:1236)

And the error with Integer alone (which is not really surprising me,
anyway) :
Internal error: java.lang.ClassCastException: java.lang.Integer cannot be
cast to org.eclipse.emf.ecore.InternalEObject
at
org.eclipse.emf.ecore.impl.EStructuralFeatureImpl$InternalSe ttingDelegateSingleEObject.dynamicSet[EStructuralFeatureImpl .java:2413]
at
org.eclipse.emf.ecore.impl.BasicEObjectImpl.eDynamicSet[Basi cEObjectImpl.java:1126]
at
org.eclipse.emf.ecore.impl.BasicEObjectImpl.eSet[BasicEObjec tImpl.java:1100]
at
org.eclipse.emf.ecore.impl.BasicEObjectImpl.eSet[BasicEObjec tImpl.java:1071]
at
org.eclipse.epsilon.emc.emf.EmfPropertySetter.invoke[EmfProp ertySetter.java:53]
at
org.eclipse.epsilon.eol.execute.AssignExecutor.execute[Assig nExecutor.java:55]
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST[E xecutorFactory.java:184]
at
org.eclipse.epsilon.eol.execute.StatementBlockExecutor.execu te[StatementBlockExecutor.java:33]
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST[E xecutorFactory.java:184]
at org.eclipse.epsilon.eol.EolOperation.executeBody[EolOperatio n.java:257]
at org.eclipse.epsilon.eol.EolOperation.execute[EolOperation.ja va:230]
at org.eclipse.epsilon.eol.EolOperation.execute[EolOperation.ja va:188]
at org.eclipse.epsilon.eol.EolOperations.execute[EolOperations. java:143]
at
org.eclipse.epsilon.eol.execute.PointExecutor.executeOperati on[PointExecutor.java:160]
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute[PointE xecutor.java:66]
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute[PointE xecutor.java:36]
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute[PointE xecutor.java:122]
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST[E xecutorFactory.java:184]
at
org.eclipse.epsilon.eol.execute.ParametersExecutor.execute[P arametersExecutor.java:29]
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST[E xecutorFactory.java:184]
at
org.eclipse.epsilon.eol.execute.PointExecutor.executeOperati on[PointExecutor.java:154]
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute[PointE xecutor.java:66]
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute[PointE xecutor.java:36]
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute[PointE xecutor.java:122]
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST[E xecutorFactory.java:184]
at
org.eclipse.epsilon.eol.execute.StatementBlockExecutor.execu te[StatementBlockExecutor.java:33]
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST[E xecutorFactory.java:184]
at org.eclipse.epsilon.ewl.EwlWizard.process[EwlWizard.java:78]
at
org.eclipse.epsilon.ewl.EwlWizardInstance.process[EwlWizardI nstance.java:66]
at
org.eclipse.epsilon.ewl.emf.ExecuteWizardInstanceCommand.exe cute[ExecuteWizardInstanceCommand.java:42]
at
org.eclipse.emf.common.command.BasicCommandStack.execute[Bas icCommandStack.java:84]
at
org.eclipse.epsilon.ewl.emf.AbstractContributeWizardsAction. execute[AbstractContributeWizardsAction.java:235]
at
org.eclipse.epsilon.ewl.emf.AbstractContributeWizardsAction$ 1.widgetSelected[AbstractContributeWizardsAction.java:223]
at
org.eclipse.swt.widgets.TypedListener.handleEvent[TypedListe ner.java:228]
at org.eclipse.swt.widgets.EventTable.sendEvent[EventTable.java :84]
at org.eclipse.swt.widgets.Widget.sendEvent[Widget.java:1003]
at org.eclipse.swt.widgets.Display.runDeferredEvents[Display.ja va:3823]
at org.eclipse.swt.widgets.Display.readAndDispatch[Display.java :3422]
at org.eclipse.ui.internal.Workbench.runEventLoop[Workbench.jav a:2384]
at org.eclipse.ui.internal.Workbench.runUI[Workbench.java:2348]
at org.eclipse.ui.internal.Workbench.access$4[Workbench.java:22 00]
at org.eclipse.ui.internal.Workbench$5.run[Workbench.java:495]
at
org.eclipse.core.databinding.observable.Realm.runWithDefault [Realm.java:288]
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench[Work bench.java:490]
at org.eclipse.ui.PlatformUI.createAndRunWorkbench[PlatformUI.j ava:149]
at
org.eclipse.ui.internal.ide.application.IDEApplication.start [IDEApplication.java:113]
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run[Eclips eAppHandle.java:193]
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication[EclipseAppLauncher.java:110]
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start[EclipseAppLauncher.java:79]
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run[EclipseS tarter.java:386]
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run[EclipseS tarter.java:179]
at sun.reflect.NativeMethodAccessorImpl.invoke0[Native Method]
at sun.reflect.NativeMethodAccessorImpl.invoke[Unknown Source]
at sun.reflect.DelegatingMethodAccessorImpl.invoke[Unknown Source]
at java.lang.reflect.Method.invoke[Unknown Source]
at org.eclipse.equinox.launcher.Main.invokeFramework[Main.java: 549]
at org.eclipse.equinox.launcher.Main.basicRun[Main.java:504]
at org.eclipse.equinox.launcher.Main.run[Main.java:1236]
(D:\e_workspaces\modeling\sfDoctrine-1.2\tools\wizards\addIdentifierAsPrimaryKeyAndUniqueToClass.ewl@38:18)
at
org.eclipse.emf.ecore.impl.EStructuralFeatureImpl$InternalSe ttingDelegateSingleEObject.dynamicSet(EStructuralFeatureImpl .java:2413)
at
org.eclipse.emf.ecore.impl.BasicEObjectImpl.eDynamicSet(Basi cEObjectImpl.java:1126)
at
org.eclipse.emf.ecore.impl.BasicEObjectImpl.eSet(BasicEObjec tImpl.java:1100)
at
org.eclipse.emf.ecore.impl.BasicEObjectImpl.eSet(BasicEObjec tImpl.java:1071)
at
org.eclipse.epsilon.emc.emf.EmfPropertySetter.invoke(EmfProp ertySetter.java:53)
at
org.eclipse.epsilon.eol.execute.AssignExecutor.execute(Assig nExecutor.java:55)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at
org.eclipse.epsilon.eol.execute.StatementBlockExecutor.execu te(StatementBlockExecutor.java:33)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at org.eclipse.epsilon.eol.EolOperation.executeBody(EolOperatio n.java:257)
at org.eclipse.epsilon.eol.EolOperation.execute(EolOperation.ja va:230)
at org.eclipse.epsilon.eol.EolOperation.execute(EolOperation.ja va:188)
at org.eclipse.epsilon.eol.EolOperations.execute(EolOperations. java:143)
at
org.eclipse.epsilon.eol.execute.PointExecutor.executeOperati on(PointExecutor.java:160)
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute(PointE xecutor.java:66)
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute(PointE xecutor.java:36)
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute(PointE xecutor.java:122)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at
org.eclipse.epsilon.eol.execute.ParametersExecutor.execute(P arametersExecutor.java:29)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at
org.eclipse.epsilon.eol.execute.PointExecutor.executeOperati on(PointExecutor.java:154)
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute(PointE xecutor.java:66)
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute(PointE xecutor.java:36)
at
org.eclipse.epsilon.eol.execute.PointExecutor.execute(PointE xecutor.java:122)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at
org.eclipse.epsilon.eol.execute.StatementBlockExecutor.execu te(StatementBlockExecutor.java:33)
at
org.eclipse.epsilon.eol.execute.ExecutorFactory.executeAST(E xecutorFactory.java:184)
at org.eclipse.epsilon.ewl.EwlWizard.process(EwlWizard.java:78)
at
org.eclipse.epsilon.ewl.EwlWizardInstance.process(EwlWizardI nstance.java:66)
at
org.eclipse.epsilon.ewl.emf.ExecuteWizardInstanceCommand.exe cute(ExecuteWizardInstanceCommand.java:42)
at
org.eclipse.emf.common.command.BasicCommandStack.execute(Bas icCommandStack.java:84)
at
org.eclipse.epsilon.ewl.emf.AbstractContributeWizardsAction. execute(AbstractContributeWizardsAction.java:235)
at
org.eclipse.epsilon.ewl.emf.AbstractContributeWizardsAction$ 1.widgetSelected(AbstractContributeWizardsAction.java:223)
at
org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListe ner.java:228)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java :84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.ja va:3823)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java :3422)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a:2384)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2348)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:22 00)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:495)
at
org.eclipse.core.databinding.observable.Realm.runWithDefault (Realm.java:288)
at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Work bench.java:490)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.j ava:149)
at
org.eclipse.ui.internal.ide.application.IDEApplication.start (IDEApplication.java:113)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(Eclips eAppHandle.java:193)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .runApplication(EclipseAppLauncher.java:110)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher .start(EclipseAppLauncher.java:79)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:386)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java: 549)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
at org.eclipse.equinox.launcher.Main.run(Main.java:1236)


I have two other evl scripts running well (but still they dont make use of
such syntax-need).
Thanks for all guys !!
Previous Topic:EVL and EMF editor integration ?
Next Topic:EWL and reserved word as metaclass name (Integer) and instanciation
Goto Forum:
  


Current Time: Thu Apr 18 13:39:07 GMT 2024

Powered by FUDForum. Page generated in 0.01805 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top