Coder Social home page Coder Social logo

osate / osate2 Goto Github PK

View Code? Open in Web Editor NEW
35.0 35.0 8.0 573.29 MB

Open Source AADL2 Tool Environment

Home Page: http://osate.org

License: Eclipse Public License 2.0

Java 77.10% HTML 10.59% Xtend 4.47% CSS 0.07% JavaScript 0.10% GAP 7.66% D 0.01% Makefile 0.01% Batchfile 0.01% Shell 0.01% Lua 0.01% Python 0.01%

osate2's People

Contributors

aarongreenhouse avatar agacek avatar asazonova avatar dblouin avatar diffence avatar dionisiodeniz avatar dvanbrug avatar etienne13 avatar facad avatar fletchwsf avatar gitnrg avatar iamundson avatar jjhugues avatar joeseibel avatar juli1 avatar keh181 avatar klreamsei avatar lwrage avatar mikekonrad avatar neilernst avatar paolo-crisafulli avatar philip-alldredge avatar reteprelief avatar rinsley avatar ryanmcilnay avatar schwerdf avatar sei-dsvoboda avatar sei-mnam avatar sprocter avatar weklieber avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

osate2's Issues

Property Set resolution without import

Property Sets can currently be referenced without including them in a with clause. This seems to be similar to the package resolution issue that was recently fixed.

Cyclic resolution error

Under certain circumstances, I am receiving a "Cyclic resolution of lazy links : NumberType.unitsType->NumberType.unitsType" exception when calling GetProperties::lookupPropertyDefinition().

The property being looked up is a enumeration property in a custom property set.

To trigger the issue, I run a plugin that uses a AadlProcessingSwitch to update the connections contained in certain Concept Implementations. This triggers a rebuilding workspace. After that, I activate a custom plugin that tries to call the GetProperties::lookupPropertyDefinition on a InstanceObject.

After the first exception I can try to run my plugin again and it will not trigger the exception a second time. Stacktrace below.

java.lang.AssertionError: Cyclic resolution of lazy links : NumberType.unitsType->NumberType.unitsType
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.handleCyclicResolution(LazyLinkingResource.java:222)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.getEObject(LazyLinkingResource.java:165)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:219)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1483)
at org.osate.aadl2.impl.NumberTypeImpl.getUnitsTypeGen(NumberTypeImpl.java:191)
at org.osate.aadl2.impl.NumberTypeImpl.getUnitsType(NumberTypeImpl.java:210)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findUnitLiteral(PropertiesLinkingService.java:793)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findUnitLiteralAsList(PropertiesLinkingService.java:714)
at org.osate.xtext.aadl2.linking.Aadl2LinkingService.getLinkedObjects(Aadl2LinkingService.java:387)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.getEObject(LazyLinkingResource.java:175)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:219)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1483)
at org.osate.aadl2.impl.NumberValueImpl.getUnit(NumberValueImpl.java:98)
at org.osate.aadl2.impl.NumberValueImpl.eGet(NumberValueImpl.java:139)
at org.osate.aadl2.impl.IntegerLiteralImpl.eGet(IntegerLiteralImpl.java:177)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1021)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1013)
at org.eclipse.emf.ecore.util.EContentsEList$FeatureIteratorImpl.hasNext(EContentsEList.java:409)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveCrossReferences(EcoreUtil.java:308)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:302)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:287)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.doLoad(LazyLinkingResource.java:72)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1511)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1290)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoad(ResourceSetImpl.java:255)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:270)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getResource(ResourceSetImpl.java:397)
at org.eclipse.xtext.resource.SynchronizedXtextResourceSet.getResource(SynchronizedXtextResourceSet.java:23)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:216)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.getIndexedObject(PropertiesLinkingService.java:151)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findNamedElementInPredeclaredPropertySets(PropertiesLinkingService.java:1667)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findPropertySetElement(PropertiesLinkingService.java:615)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findPropertyType(PropertiesLinkingService.java:657)
at org.osate.xtext.aadl2.linking.Aadl2LinkingService.getLinkedObjects(Aadl2LinkingService.java:378)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.getEObject(LazyLinkingResource.java:175)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:219)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1483)
at org.osate.aadl2.impl.BasicPropertyImpl.getPropertyTypeGen(BasicPropertyImpl.java:112)
at org.osate.aadl2.impl.BasicPropertyImpl.getPropertyType(BasicPropertyImpl.java:131)
at org.osate.aadl2.impl.BasicPropertyImpl.eGet(BasicPropertyImpl.java:325)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1021)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1013)
at org.eclipse.emf.ecore.util.EContentsEList$FeatureIteratorImpl.hasNext(EContentsEList.java:409)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveCrossReferences(EcoreUtil.java:308)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:302)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:287)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.doLoad(LazyLinkingResource.java:72)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1511)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1290)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoad(ResourceSetImpl.java:255)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:270)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getResource(ResourceSetImpl.java:397)
at org.eclipse.xtext.resource.SynchronizedXtextResourceSet.getResource(SynchronizedXtextResourceSet.java:23)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:216)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.getIndexedObject(PropertiesLinkingService.java:151)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findNamedElementInPredeclaredPropertySets(PropertiesLinkingService.java:1667)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findPropertySetElement(PropertiesLinkingService.java:615)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findPropertyType(PropertiesLinkingService.java:657)
at org.osate.xtext.aadl2.linking.Aadl2LinkingService.getLinkedObjects(Aadl2LinkingService.java:378)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.getEObject(LazyLinkingResource.java:175)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:219)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1483)
at org.osate.aadl2.impl.PropertyConstantImpl.getPropertyTypeGen(PropertyConstantImpl.java:127)
at org.osate.aadl2.impl.PropertyConstantImpl.getPropertyType(PropertyConstantImpl.java:146)
at org.osate.aadl2.impl.PropertyConstantImpl.eGet(PropertyConstantImpl.java:403)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1021)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1013)
at org.eclipse.emf.ecore.util.EContentsEList$FeatureIteratorImpl.hasNext(EContentsEList.java:409)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveCrossReferences(EcoreUtil.java:308)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:302)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:287)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.doLoad(LazyLinkingResource.java:72)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1511)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1290)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoad(ResourceSetImpl.java:255)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:270)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getResource(ResourceSetImpl.java:397)
at org.eclipse.xtext.resource.SynchronizedXtextResourceSet.getResource(SynchronizedXtextResourceSet.java:23)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:216)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.getIndexedObject(PropertiesLinkingService.java:151)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findNamedElementInPredeclaredPropertySets(PropertiesLinkingService.java:1667)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findPropertySetElement(PropertiesLinkingService.java:615)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findPropertyType(PropertiesLinkingService.java:657)
at org.osate.xtext.aadl2.linking.Aadl2LinkingService.getLinkedObjects(Aadl2LinkingService.java:378)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.getEObject(LazyLinkingResource.java:175)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:219)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1483)
at org.osate.aadl2.impl.NumberTypeImpl.getUnitsTypeGen(NumberTypeImpl.java:191)
at org.osate.aadl2.impl.NumberTypeImpl.getUnitsType(NumberTypeImpl.java:210)
at org.osate.aadl2.impl.NumberTypeImpl.eGet(NumberTypeImpl.java:333)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1021)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1013)
at org.eclipse.emf.ecore.util.EContentsEList$FeatureIteratorImpl.hasNext(EContentsEList.java:409)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveCrossReferences(EcoreUtil.java:308)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:302)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:287)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.doLoad(LazyLinkingResource.java:72)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1511)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1290)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoad(ResourceSetImpl.java:255)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:270)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getResource(ResourceSetImpl.java:397)
at org.eclipse.xtext.resource.SynchronizedXtextResourceSet.getResource(SynchronizedXtextResourceSet.java:23)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:216)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.getIndexedObject(PropertiesLinkingService.java:151)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findNamedElementInPredeclaredPropertySets(PropertiesLinkingService.java:1667)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findPropertySetElement(PropertiesLinkingService.java:615)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.findPropertyType(PropertiesLinkingService.java:657)
at org.osate.xtext.aadl2.linking.Aadl2LinkingService.getLinkedObjects(Aadl2LinkingService.java:378)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.getEObject(LazyLinkingResource.java:175)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:219)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1483)
at org.osate.aadl2.impl.BasicPropertyImpl.getPropertyTypeGen(BasicPropertyImpl.java:112)
at org.osate.aadl2.impl.BasicPropertyImpl.getPropertyType(BasicPropertyImpl.java:131)
at org.osate.aadl2.impl.BasicPropertyImpl.eGet(BasicPropertyImpl.java:325)
at org.osate.aadl2.impl.PropertyImpl.eGet(PropertyImpl.java:380)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1021)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:1013)
at org.eclipse.emf.ecore.util.EContentsEList$FeatureIteratorImpl.hasNext(EContentsEList.java:409)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveCrossReferences(EcoreUtil.java:308)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:302)
at org.eclipse.emf.ecore.util.EcoreUtil.resolveAll(EcoreUtil.java:287)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.doLoad(LazyLinkingResource.java:72)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1511)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1290)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoad(ResourceSetImpl.java:255)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:270)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getResource(ResourceSetImpl.java:397)
at org.eclipse.xtext.resource.SynchronizedXtextResourceSet.getResource(SynchronizedXtextResourceSet.java:23)
at org.osate.aadl2.modelsupport.resources.OsateResourceUtil.getResource(OsateResourceUtil.java:269)
at org.osate.xtext.aadl2.properties.linking.PropertiesLinkingService.getPropertiesLinkingService(PropertiesLinkingService.java:120)
at org.osate.xtext.aadl2.properties.util.GetProperties.lookupPropertyDefinition(GetProperties.java:73)
...

problem with feature group prototypes

From Brian Larson:

package ICE
public

device ICE_Interface
prototypes
alarms : feature group;
status : feature group;
parameters : feature group;
features
alrm: feature group alarms;
stat: feature group status;
pmtr: feature group parameters;

end ICE_Interface;

end ICE;

(OSATE2 complains about the references to the prototypes in the feature declarations: Couldn't resolve reference to FeatureType 'alarms'. I think it's a properly-formed feature_group_spec but OSATE2 doesn't recognize 'alarms' as a prototype_identifier. )

Error when renaming component

Given the following AADL source:

package A
public
    system B
    end B

    system implementation B.impl
    end B.impl;
end A;

If the user attempts to rename system B by first changing the system B to system C or another name, an error window occurs while typing. After dismissing the error and changing the remainder of the code to match the new name, the error window stops appearing.

The window contains the following message:

An internal error occurred during: "Xtext validation".
Cyclic resolution of lazy links : Realization.implemented->Realization.implemented

Tested on Mac OS X 10.6.8 using the snapshot: osate2-2.0.0-SNAPSHOT-201112161721-macosx.cocoa.x86_64.

Develop branch relies on guava libraries which are not included

Summary

The develop branch seems to rely on Google's guava libraries, which are not included. I tried adding the current version of the library to the build path, which lets it compile but I still cannot open an editor for a .aadl file. Instead, I am given the following error:

Could not open the editor: The editor class could not be instantiated. This usually indicates a missing no-arg constructor or > that the editor's class name was mistyped in plugin.xml.

The full stack trace is:

org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter$TerminatingClassNotFoundException: An error occurred while automatically activating bundle org.osate.xtext.aadl2.ui (510).
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:122)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:462)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:476)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:345)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1207)
at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174)
at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:268)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:264)
at org.eclipse.ui.internal.registry.EditorDescriptor.createEditor(EditorDescriptor.java:235)
at org.eclipse.ui.internal.EditorManager.createPart(EditorManager.java:875)
at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:609)
at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:465)
at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
at org.eclipse.ui.internal.EditorAreaHelper.setVisibleEditor(EditorAreaHelper.java:271)
at org.eclipse.ui.internal.EditorManager.setVisibleEditor(EditorManager.java:1459)
at org.eclipse.ui.internal.EditorManager$5.runWithException(EditorManager.java:972)
at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:31)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3563)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3212)
at org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:803)
at org.eclipse.ui.internal.Workbench$33.runWithException(Workbench.java:1595)
at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:31)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:180)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:150)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:4330)
at org.eclipse.ui.internal.StartupThreading.runWithoutExceptions(StartupThreading.java:94)
at org.eclipse.ui.internal.Workbench.init(Workbench.java:1590)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2623)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
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(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Caused by: org.osgi.framework.BundleException: The activator org.osate.xtext.aadl2.ui.MyAadl2Activator for bundle org.osate.xtext.aadl2.ui is invalid
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:171)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:679)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440)
at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
... 59 more
Caused by: java.lang.NoSuchMethodError: com.google.common.base.Objects.firstNonNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
at com.google.common.cache.CacheBuilder.getKeyStrength(CacheBuilder.java:472)
at com.google.common.cache.LocalCache.(LocalCache.java:236)
at com.google.common.cache.LocalCache$LocalManualCache.(LocalCache.java:4750)
at com.google.common.cache.LocalCache$LocalLoadingCache.(LocalCache.java:4858)
at com.google.common.cache.CacheBuilder.build(CacheBuilder.java:739)
at org.osate.xtext.aadl2.ui.internal.Aadl2Activator.(Aadl2Activator.java:32)
at org.osate.xtext.aadl2.ui.MyAadl2Activator.(MyAadl2Activator.java:14)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
at java.lang.Class.newInstance0(Class.java:372)
at java.lang.Class.newInstance(Class.java:325)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:166)
... 65 more

Reproduction steps:

  1. Install OSATE from the development branch
  2. Resolve compilation errors with guava-11.0.1.jar in org.osate.xtext.aadl2.properties.ui, org.osate.xtext.aadl2.propertyset.ui, and org.osate.xtext.aadl2.ui.
  3. Launch OSATE, open an .aadl file for editing via the navigator.

Expected result:

The .aadl file is opened for editing.

Actual result:

The above error is generated.

PermGen space issues with OSATE2 on MacOS X when testing plugins

Hi,

I'm experimenting some errors bound to PermGen space with OSATE2 (march snapshot) on MacOS X
To trigger it, I do the following

  • create a plugin for Eclipse, drag in dependencies from OSATE2, e.g. one from one of the analysis plugin from osate repository
  • then, do complete the plug-in, and
  • launch it

then create an AADL project, create a file, edit it, then rename it with a ".aadl2" extension to see the crash
the stack trace shows

ENTRY org.eclipse.osgi 4 0 2012-04-12 17:00:53.981
!MESSAGE An error occurred while automatically activating bundle org.osate.xtext.aadl2.ui (367).
!STACK 0
org.osgi.framework.BundleException: Exception in org.osate.xtext.aadl2.ui.MyAadl2Activator.start() of bundle org.osate.xtext.aadl2.ui.
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:734)
[...]
Caused by: java.lang.OutOfMemoryError: PermGen space
at java.lang.ClassLoader.defineClass1(Native Method)

I increased MaxPermsize to 1024m in osate.ini, so I suspect the issue is elsewhere
It looks like the system enters an infinte loop and eats up the whole memory

Note that I can create AADL projects from OSATE2 directly, but not from the OSATE2 launched from my plug-in dev env

Did I miss something obvious in the process?

Bad extension in plugin.xml prevents use of EMF generator

In the plugin.xml for org.osate.xtext.aadl2.properties, there is an extension for org.eclipse.emf.ecore.generated_package that references a genmodel called org/osate/aadl2/properties/Properties.genmodel. However, this genmodel does not exist.

As a result, if this plugin is used as a dependency, it is impossible to reload annotated Java in the EMF generator because it causes a FileNotFoundException.

LogFilter.isLoggable threw a non-fatal unchecked exception

This does not appear to impede execution of OSATE2 w/ RDALTE from sources, but it does dump several stack traces to the Console upon NullPointerException(s):

!SESSION LogFilter.isLoggable threw a non-fatal unchecked exception as follows:
2011-11-23 08:48:15.140 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.6.0_29
java.vendor=Apple Inc.
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
Framework arguments: -product org.osate.branding.product
Command-line arguments: -product org.osate.branding.product -data /Users/brl/Work/OSATEv2/../runtime-osate2 -dev file:/Users/brl/Work/OSATEv2/.metadata/.plugins/org.eclipse.pde.core/Osate 2 product/dev.properties -os macosx -ws cocoa -arch x86_64 -consoleLog

!ENTRY org.eclipse.jface 2 0 2011-11-23 08:48:26.075
!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation.
!SUBENTRY 1 org.eclipse.jface 2 0 2011-11-23 08:48:26.075
!MESSAGE A conflict occurred for ALT+COMMAND+C:
Binding(ALT+COMMAND+C,
ParameterizedCommand(Command(org.eclipse.egit.ui.team.Commit,Commit,
,
Category(org.eclipse.egit.ui.commandCategory,Git,null,true),
,
,,true),null),
org.eclipse.ui.defaultAcceleratorConfiguration,
org.eclipse.ui.contexts.window,,,system)
Binding(ALT+COMMAND+C,
ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.modify.method.parameters,Change Method Signature,
Change method signature includes parameter names and parameter order,
Category(org.eclipse.jdt.ui.category.refactoring,Refactor - Java,Java Refactoring Actions,true),
,
,,true),null),
org.eclipse.ui.defaultAcceleratorConfiguration,
org.eclipse.ui.contexts.window,,cocoa,system)
!SUBENTRY 1 org.eclipse.jface 2 0 2011-11-23 08:48:26.075
!MESSAGE A conflict occurred for ALT+COMMAND+M:
Binding(ALT+COMMAND+M,
ParameterizedCommand(Command(org.eclipse.egit.ui.team.Merge,Merge,
,
Category(org.eclipse.egit.ui.commandCategory,Git,null,true),
,
,,true),null),
org.eclipse.ui.defaultAcceleratorConfiguration,
org.eclipse.ui.contexts.window,,,system)
Binding(ALT+COMMAND+M,
ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.extract.method,Extract Method,
Extract a set of statements or an expression into a new method and use the new method,
Category(org.eclipse.jdt.ui.category.refactoring,Refactor - Java,Java Refactoring Actions,true),
,
,,true),null),
org.eclipse.ui.defaultAcceleratorConfiguration,
org.eclipse.ui.contexts.window,,cocoa,system)
!SUBENTRY 1 org.eclipse.jface 2 0 2011-11-23 08:48:26.075
!MESSAGE A conflict occurred for ALT+COMMAND+I:
Binding(ALT+COMMAND+I,
ParameterizedCommand(Command(org.eclipse.egit.ui.team.Ignore,Ignore,
,
Category(org.eclipse.egit.ui.commandCategory,Git,null,true),
org.eclipse.egit.ui.internal.actions.IgnoreActionHandler,
,,true),null),
org.eclipse.ui.defaultAcceleratorConfiguration,
org.eclipse.ui.contexts.window,,,system)
Binding(ALT+COMMAND+I,
ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.inline,Inline,
Inline a constant, local variable or method,
Category(org.eclipse.jdt.ui.category.refactoring,Refactor - Java,Java Refactoring Actions,true),
,
,,true),null),
org.eclipse.ui.defaultAcceleratorConfiguration,
org.eclipse.ui.contexts.window,,cocoa,system)
!SUBENTRY 1 org.eclipse.jface 2 0 2011-11-23 08:48:26.076
!MESSAGE A conflict occurred for ALT+COMMAND+F:
Binding(ALT+COMMAND+F,
ParameterizedCommand(Command(org.eclipse.egf.core.ui.fcore.actionSet.open.fcore.action.definition,Open EGF Fcore,
Open an EGF Fcore in the Workbench,
Category(org.eclipse.ui.category.file,File,null,true),
,
,,true),null),
org.eclipse.ui.defaultAcceleratorConfiguration,
org.eclipse.ui.contexts.window,,,system)
Binding(ALT+COMMAND+F,
ParameterizedCommand(Command(org.eclipse.jdt.debug.ui.commands.ForceReturn,Force Return,
Forces return from method with value of selected expression ,
Category(org.eclipse.debug.ui.category.run,Run/Debug,Run/Debug command category,true),
,
,,true),null),
org.eclipse.ui.defaultAcceleratorConfiguration,
org.eclipse.ui.contexts.window,,cocoa,system)
java.lang.NullPointerException
at org.eclipse.core.internal.runtime.Log.isLoggable(Log.java:101)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.safeIsLoggable(ExtendedLogReaderServiceFactory.java:57)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.logPrivileged(ExtendedLogReaderServiceFactory.java:158)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.log(ExtendedLogReaderServiceFactory.java:146)
at org.eclipse.equinox.log.internal.ExtendedLogServiceFactory.log(ExtendedLogServiceFactory.java:65)
at org.eclipse.equinox.log.internal.ExtendedLogServiceImpl.log(ExtendedLogServiceImpl.java:87)
at org.eclipse.equinox.log.internal.LoggerImpl.log(LoggerImpl.java:54)
at org.eclipse.core.internal.runtime.Log.log(Log.java:60)
at org.eclipse.ui.statushandlers.WorkbenchErrorHandler.handle(WorkbenchErrorHandler.java:80)
at org.eclipse.ui.internal.ide.IDEWorkbenchErrorHandler.handle(IDEWorkbenchErrorHandler.java:108)
at org.eclipse.ui.internal.WorkbenchErrorHandlerProxy.handle(WorkbenchErrorHandlerProxy.java:36)
at org.eclipse.ui.statushandlers.StatusManager.handle(StatusManager.java:189)
at org.eclipse.ui.statushandlers.StatusManager.handle(StatusManager.java:231)
at org.eclipse.ui.statushandlers.StatusManager.handle(StatusManager.java:242)
at org.eclipse.ui.internal.JFaceUtil$2.log(JFaceUtil.java:59)
at org.eclipse.jface.bindings.BindingManager.computeBindings(BindingManager.java:672)
at org.eclipse.jface.bindings.BindingManager.recomputeBindings(BindingManager.java:1757)
at org.eclipse.jface.bindings.BindingManager.contextManagerChanged(BindingManager.java:689)
at org.eclipse.core.commands.contexts.ContextManager.fireContextManagerChanged(ContextManager.java:165)
at org.eclipse.core.commands.contexts.ContextManager.setEventCaching(ContextManager.java:324)
at org.eclipse.core.commands.contexts.ContextManager.deferUpdates(ContextManager.java:83)
at org.eclipse.ui.internal.contexts.ContextAuthority.sourceChanged(ContextAuthority.java:673)
at org.eclipse.ui.internal.services.ExpressionAuthority.sourceChanged(ExpressionAuthority.java:310)
at org.eclipse.ui.internal.services.ExpressionAuthority.sourceChanged(ExpressionAuthority.java:290)
at org.eclipse.ui.AbstractSourceProvider.fireSourceChanged(AbstractSourceProvider.java:99)
at org.eclipse.ui.internal.services.WorkbenchSourceProvider.access$14(WorkbenchSourceProvider.java:1)
at org.eclipse.ui.internal.services.WorkbenchSourceProvider$6.handleEvent(WorkbenchSourceProvider.java:772)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1069)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4124)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1457)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1480)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1461)
at org.eclipse.swt.widgets.Shell.windowDidBecomeKey(Shell.java:2105)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:5516)
at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
at org.eclipse.swt.widgets.Widget.callSuper(Widget.java:213)
at org.eclipse.swt.widgets.Widget.becomeKeyWindow(Widget.java:361)
at org.eclipse.swt.widgets.Shell.becomeKeyWindow(Shell.java:532)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:5340)
at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method)
at org.eclipse.swt.internal.cocoa.NSWindow.makeKeyAndOrderFront(NSWindow.java:198)
at org.eclipse.swt.widgets.Shell.makeKeyAndOrderFront(Shell.java:1251)
at org.eclipse.swt.widgets.Shell.setWindowVisible(Shell.java:1937)
at org.eclipse.swt.widgets.Shell.open(Shell.java:1329)
at org.eclipse.jface.window.Window.open(Window.java:797)
at org.eclipse.ui.internal.WorkbenchWindow.open(WorkbenchWindow.java:818)
at org.eclipse.ui.internal.Workbench$70.runWithException(Workbench.java:3719)
at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:31)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3935)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3612)
at org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:803)
at org.eclipse.ui.internal.Workbench$33.runWithException(Workbench.java:1595)
at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:31)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3935)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3612)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
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(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)

!ENTRY org.eclipse.core.net 1 0 2011-11-23 08:48:26.431
!MESSAGE System property http.nonProxyHosts has been set to local|.local|169.254/16|.169.254/16 by an external source. This value will be overwritten using the values from the preferences
LogFilter.isLoggable threw a non-fatal unchecked exception as follows:
java.lang.NullPointerException
at org.eclipse.core.internal.runtime.Log.isLoggable(Log.java:101)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.safeIsLoggable(ExtendedLogReaderServiceFactory.java:57)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.logPrivileged(ExtendedLogReaderServiceFactory.java:158)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.log(ExtendedLogReaderServiceFactory.java:146)
at org.eclipse.equinox.log.internal.ExtendedLogServiceFactory.log(ExtendedLogServiceFactory.java:65)
at org.eclipse.equinox.log.internal.ExtendedLogServiceImpl.log(ExtendedLogServiceImpl.java:87)
at org.eclipse.equinox.log.internal.LoggerImpl.log(LoggerImpl.java:54)
at org.eclipse.core.runtime.internal.adaptor.EclipseLogFactory$1.log(EclipseLogFactory.java:53)
at org.eclipse.core.internal.net.Activator.log(Activator.java:106)
at org.eclipse.core.internal.net.Activator.logInfo(Activator.java:91)
at org.eclipse.core.internal.net.ProxyType.verifyIsNotSet(ProxyType.java:361)
at org.eclipse.core.internal.net.ProxyType.verifyHttpSystemPropertiesEmpty(ProxyType.java:351)
at org.eclipse.core.internal.net.ProxyType.verifySystemPropertiesEmpty(ProxyType.java:334)
at org.eclipse.core.internal.net.ProxyType.createProxyData(ProxyType.java:141)
at org.eclipse.core.internal.net.ProxyType.getProxyData(ProxyType.java:127)
at org.eclipse.core.internal.net.ProxyType.initialize(ProxyType.java:517)
at org.eclipse.core.internal.net.ProxyManager.initialize(ProxyManager.java:274)
at org.eclipse.core.internal.net.Activator.start(Activator.java:181)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440)
at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:462)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)
at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:35)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:473)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at org.eclipse.ui.internal.ide.application.IDEWorkbenchAdvisor.activateProxyService(IDEWorkbenchAdvisor.java:290)
at org.eclipse.ui.internal.ide.application.IDEWorkbenchAdvisor.postStartup(IDEWorkbenchAdvisor.java:270)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2631)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
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(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)

!ENTRY fr.openpeople.rdal.model.diagram 1 0 2011-11-23 08:48:26.682
!MESSAGE fr.openpeople.rdal.model.diagram starting...
LogFilter.isLoggable threw a non-fatal unchecked exception as follows:
java.lang.NullPointerException
at org.eclipse.core.internal.runtime.Log.isLoggable(Log.java:101)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.safeIsLoggable(ExtendedLogReaderServiceFactory.java:57)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.logPrivileged(ExtendedLogReaderServiceFactory.java:158)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.log(ExtendedLogReaderServiceFactory.java:146)
at org.eclipse.equinox.log.internal.ExtendedLogServiceFactory.log(ExtendedLogServiceFactory.java:65)
at org.eclipse.equinox.log.internal.ExtendedLogServiceImpl.log(ExtendedLogServiceImpl.java:87)
at org.eclipse.equinox.log.internal.LoggerImpl.log(LoggerImpl.java:54)
at org.eclipse.core.internal.runtime.Log.log(Log.java:60)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.logInfo(RdalDiagramEditorPlugin.java:358)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.logInfo(RdalDiagramEditorPlugin.java:348)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.start(RdalDiagramEditorPlugin.java:108)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440)
at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:462)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:476)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:345)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1207)
at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174)
at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:268)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:264)
at org.eclipse.ui.internal.registry.EditorDescriptor.getEditorMatchingStrategy(EditorDescriptor.java:628)
at org.eclipse.ui.internal.EditorManager.findEditors(EditorManager.java:506)
at org.eclipse.ui.internal.EditorManager.findEditors(EditorManager.java:457)
at org.eclipse.ui.internal.EditorManager.findEditor(EditorManager.java:420)
at org.eclipse.ui.internal.EditorManager.findEditor(EditorManager.java:402)
at org.eclipse.ui.internal.WorkbenchPage.findEditor(WorkbenchPage.java:2178)
at org.eclipse.ui.NavigationLocation.getEditorPart(NavigationLocation.java:44)
at org.eclipse.ui.NavigationLocation.getText(NavigationLocation.java:60)
at org.eclipse.ui.internal.NavigationHistoryEntry.(NavigationHistoryEntry.java:49)
at org.eclipse.ui.internal.NavigationHistory.createEntry(NavigationHistory.java:657)
at org.eclipse.ui.internal.NavigationHistory.addEntry(NavigationHistory.java:374)
at org.eclipse.ui.internal.NavigationHistory.access$10(NavigationHistory.java:355)
at org.eclipse.ui.internal.NavigationHistory$2.run(NavigationHistory.java:202)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3935)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3612)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
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(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
fr.openpeople.rdal.model.diagram starting...

!ENTRY fr.openpeople.rdal.model.diagram 1 0 2011-11-23 08:48:26.753
!MESSAGE Adding adapter org.osate.aadl2.provider.Aadl2ItemProviderAdapterFactory
LogFilter.isLoggable threw a non-fatal unchecked exception as follows:
java.lang.NullPointerException
at org.eclipse.core.internal.runtime.Log.isLoggable(Log.java:101)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.safeIsLoggable(ExtendedLogReaderServiceFactory.java:57)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.logPrivileged(ExtendedLogReaderServiceFactory.java:158)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.log(ExtendedLogReaderServiceFactory.java:146)
at org.eclipse.equinox.log.internal.ExtendedLogServiceFactory.log(ExtendedLogServiceFactory.java:65)
at org.eclipse.equinox.log.internal.ExtendedLogServiceImpl.log(ExtendedLogServiceImpl.java:87)
at org.eclipse.equinox.log.internal.LoggerImpl.log(LoggerImpl.java:54)
at org.eclipse.core.internal.runtime.Log.log(Log.java:60)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.logInfo(RdalDiagramEditorPlugin.java:358)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.logInfo(RdalDiagramEditorPlugin.java:348)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.getExternalAdapterFactories(RdalDiagramEditorPlugin.java:182)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.fillItemProviderFactories(RdalDiagramEditorPlugin.java:151)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.createAdapterFactory(RdalDiagramEditorPlugin.java:137)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.start(RdalDiagramEditorPlugin.java:109)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440)
at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:462)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:476)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:345)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1207)
at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174)
at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:268)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:264)
at org.eclipse.ui.internal.registry.EditorDescriptor.getEditorMatchingStrategy(EditorDescriptor.java:628)
at org.eclipse.ui.internal.EditorManager.findEditors(EditorManager.java:506)
at org.eclipse.ui.internal.EditorManager.findEditors(EditorManager.java:457)
at org.eclipse.ui.internal.EditorManager.findEditor(EditorManager.java:420)
at org.eclipse.ui.internal.EditorManager.findEditor(EditorManager.java:402)
at org.eclipse.ui.internal.WorkbenchPage.findEditor(WorkbenchPage.java:2178)
at org.eclipse.ui.NavigationLocation.getEditorPart(NavigationLocation.java:44)
at org.eclipse.ui.NavigationLocation.getText(NavigationLocation.java:60)
at org.eclipse.ui.internal.NavigationHistoryEntry.(NavigationHistoryEntry.java:49)
at org.eclipse.ui.internal.NavigationHistory.createEntry(NavigationHistory.java:657)
at org.eclipse.ui.internal.NavigationHistory.addEntry(NavigationHistory.java:374)
at org.eclipse.ui.internal.NavigationHistory.access$10(NavigationHistory.java:355)
at org.eclipse.ui.internal.NavigationHistory$2.run(NavigationHistory.java:202)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3935)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3612)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
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(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Adding adapter org.osate.aadl2.provider.Aadl2ItemProviderAdapterFactory

!ENTRY fr.openpeople.rdal.model.diagram 1 0 2011-11-23 08:48:26.784
!MESSAGE Adding adapter org.osate.aadl2.instance.provider.InstanceItemProviderAdapterFactory
LogFilter.isLoggable threw a non-fatal unchecked exception as follows:
java.lang.NullPointerException
at org.eclipse.core.internal.runtime.Log.isLoggable(Log.java:101)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.safeIsLoggable(ExtendedLogReaderServiceFactory.java:57)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.logPrivileged(ExtendedLogReaderServiceFactory.java:158)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.log(ExtendedLogReaderServiceFactory.java:146)
at org.eclipse.equinox.log.internal.ExtendedLogServiceFactory.log(ExtendedLogServiceFactory.java:65)
at org.eclipse.equinox.log.internal.ExtendedLogServiceImpl.log(ExtendedLogServiceImpl.java:87)
at org.eclipse.equinox.log.internal.LoggerImpl.log(LoggerImpl.java:54)
at org.eclipse.core.internal.runtime.Log.log(Log.java:60)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.logInfo(RdalDiagramEditorPlugin.java:358)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.logInfo(RdalDiagramEditorPlugin.java:348)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.getExternalAdapterFactories(RdalDiagramEditorPlugin.java:182)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.fillItemProviderFactories(RdalDiagramEditorPlugin.java:151)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.createAdapterFactory(RdalDiagramEditorPlugin.java:137)
at fr.openpeople.rdal.model.core.diagram.part.RdalDiagramEditorPlugin.start(RdalDiagramEditorPlugin.java:109)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440)
at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:462)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:476)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:345)
at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1207)
at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174)
at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:268)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:264)
at org.eclipse.ui.internal.registry.EditorDescriptor.getEditorMatchingStrategy(EditorDescriptor.java:628)
at org.eclipse.ui.internal.EditorManager.findEditors(EditorManager.java:506)
at org.eclipse.ui.internal.EditorManager.findEditors(EditorManager.java:457)
at org.eclipse.ui.internal.EditorManager.findEditor(EditorManager.java:420)
at org.eclipse.ui.internal.EditorManager.findEditor(EditorManager.java:402)
at org.eclipse.ui.internal.WorkbenchPage.findEditor(WorkbenchPage.java:2178)
at org.eclipse.ui.NavigationLocation.getEditorPart(NavigationLocation.java:44)
at org.eclipse.ui.NavigationLocation.getText(NavigationLocation.java:60)
at org.eclipse.ui.internal.NavigationHistoryEntry.(NavigationHistoryEntry.java:49)
at org.eclipse.ui.internal.NavigationHistory.createEntry(NavigationHistory.java:657)
at org.eclipse.ui.internal.NavigationHistory.addEntry(NavigationHistory.java:374)
at org.eclipse.ui.internal.NavigationHistory.access$10(NavigationHistory.java:355)
at org.eclipse.ui.internal.NavigationHistory$2.run(NavigationHistory.java:202)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3935)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3612)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
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(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Adding adapter org.osate.aadl2.instance.provider.InstanceItemProviderAdapterFactory

xtext-builder crash when resolving bad identifier after 'extends' keyword

Incomplete or wrong identifier oafter 'extends' keyword causes a non-catched exception of Xtext (xtext-validation, see trace), then crashed the xtext-builder.


Short example test_extends.aadl :

package test_extends
public

abstract test
end test;

abstract implementation test.impl
end test.impl;

abstract implementation test.impl2 extends test.imp
end test.impl2;

end test_extends;


Error trace on eclipse console:

!ENTRY org.eclipse.core.jobs 4 2 2012-05-07 18:12:50.955
!MESSAGE An internal error occurred during: "Xtext validation".
!STACK 0
java.lang.AssertionError: Cyclic resolution of lazy links : ImplementationExtension.extended->ImplementationExtension.extended
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.handleCyclicResolution(LazyLinkingResource.java:222)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.getEObject(LazyLinkingResource.java:165)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getEObject(ResourceSetImpl.java:219)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:203)
at org.eclipse.emf.ecore.util.EcoreUtil.resolve(EcoreUtil.java:263)
at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eResolveProxy(BasicEObjectImpl.java:1483)
at org.osate.aadl2.impl.ImplementationExtensionImpl.getGeneral(ImplementationExtensionImpl.java:100)
at org.osate.aadl2.impl.ClassifierImpl.getInheritedMembers(ClassifierImpl.java:350)
at org.osate.aadl2.impl.ClassifierImpl.eIsSet(ClassifierImpl.java:788)
at org.osate.aadl2.impl.ComponentClassifierImpl.eIsSet(ComponentClassifierImpl.java:421)
at org.osate.aadl2.impl.ComponentImplementationImpl.eIsSet(ComponentImplementationImpl.java:1223)
at org.osate.aadl2.impl.BusImplementationImpl.eIsSet(BusImplementationImpl.java:274)
at org.eclipse.uml2.common.util.DerivedEObjectEList.size(DerivedEObjectEList.java:373)
at org.eclipse.emf.common.util.BasicEList.(BasicEList.java:79)
at org.osate.aadl2.impl.ClassifierImpl.getMembers(ClassifierImpl.java:254)
at org.osate.aadl2.impl.NamespaceImpl.findNamedElement(NamespaceImpl.java:272)
at org.osate.aadl2.impl.ComponentImplementationImpl.findNamedElement(ComponentImplementationImpl.java:1674)
at org.osate.xtext.aadl2.linking.Aadl2LinkingService.getLinkedObjects(Aadl2LinkingService.java:124)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.getEObject(LazyLinkingResource.java:175)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.resolveLazyCrossReference(LazyLinkingResource.java:143)
at org.eclipse.xtext.linking.lazy.LazyLinkingResource.resolveLazyCrossReferences(LazyLinkingResource.java:104)
at org.eclipse.xtext.EcoreUtil2.resolveLazyCrossReferences(EcoreUtil2.java:491)
at org.eclipse.xtext.validation.ResourceValidatorImpl.resolveProxies(ResourceValidatorImpl.java:127)
at org.eclipse.xtext.validation.ResourceValidatorImpl.validate(ResourceValidatorImpl.java:62)
at org.eclipse.xtext.ui.editor.validation.ValidationJob$1.exec(ValidationJob.java:79)
at org.eclipse.xtext.ui.editor.validation.ValidationJob$1.exec(ValidationJob.java:1)
at org.eclipse.xtext.util.concurrent.AbstractReadWriteAcces.readOnly(AbstractReadWriteAcces.java:32)
at org.eclipse.xtext.ui.editor.model.XtextDocument.readOnly(XtextDocument.java:78)
at org.eclipse.xtext.ui.editor.validation.ValidationJob.createIssues(ValidationJob.java:75)
at org.eclipse.xtext.ui.editor.validation.ValidationJob.run(ValidationJob.java:64)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
LogFilter.isLoggable threw a non-fatal unchecked exception as follows:
java.lang.NullPointerException
at org.eclipse.core.internal.runtime.Log.isLoggable(Log.java:101)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.safeIsLoggable(ExtendedLogReaderServiceFactory.java:59)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.logPrivileged(ExtendedLogReaderServiceFactory.java:164)
at org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory.log(ExtendedLogReaderServiceFactory.java:150)
at org.eclipse.equinox.log.internal.ExtendedLogServiceFactory.log(ExtendedLogServiceFactory.java:65)
at org.eclipse.equinox.log.internal.ExtendedLogServiceImpl.log(ExtendedLogServiceImpl.java:87)
at org.eclipse.equinox.log.internal.LoggerImpl.log(LoggerImpl.java:54)
at org.eclipse.core.internal.runtime.PlatformLogWriter.logging(PlatformLogWriter.java:43)
at org.eclipse.core.internal.runtime.RuntimeLog.log(RuntimeLog.java:96)
at org.eclipse.core.internal.jobs.JobManager.endJob(JobManager.java:653)
at org.eclipse.core.internal.jobs.WorkerPool.endJob(WorkerPool.java:105)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:71)

Integer literal required for property value

Parser won't allow references to aadlinteger-valued propertes, instead requiring integer literals:

data HeartRateSamples
properties
Data_Model::Data_Representation => Array;
Data_Model::Base_Type => (classifier(Heart_Rate)); --one byte for 0-255 beats per minute
Data_Model::Integer_Range => 0 .. 255;
Data_Model::Dimension => (30); --(ICE_Properties::Num_Trending_Samples);
end HeartRateSamples;

(This problem has been fixed and issue submitted for tracking purposes only.)

Ability to create AADL files/packages

When I start OSATE2 and start a new AADL project, I am not able to either create an AADL file or even create a new package. Then,if I create the AADL file by myself (using the resources perspective), the AADL perspective
does not recognize the syntax and I cannot generate any AAXL file (unavailable option).

Local path in target definition

The current target definition for Indigo Eclipse platform (org.osate.build.target/indigo.target) contains a local path

Thus, it can not be loaded when the sources are checked out on another computer.
If this item is really needed and can not be found on an update site, I suggest the following changes:

1ยฐ Replace the full absolute path by an environment variable that refers to a directory containing the local target platforms (e.g., OSATE_TARGETS):

path="${env_var:OSATE_TARGETS}/platform-3.7"

Thus, the developer can set this environment variable as he want.

2ยฐ We also need to have the contents of this local target platform elements. A new (pseudo-)Eclipse project could contain it. The developer has just to checkout this project somewhere and set the environment variable accordingly.

Reference on private items not forbidden

With respect to ยง4.2 (N9) of the standard, writing two packages:

package Package1
  private
    system S1
    end S1;
end Package1;

and

package Package2
  private
    with Package1;
    system S2 extends Package1::S1
    end S2;  
end Package2;

should not work, because S1 is in the private section of Package1.
Osate does not claim and resolves the reference.

Parsing errors

Hello,

The following AADL code does not report any error when parsing while it obviously has an error : the last "end riu.i" would be "end riu_current.i";

package test2

public

system riu
end riu;

system implementation riu.i
end riu.i;

system riu_current extends riu
end riu_current;

system implementation riu_current.i extends riu.i

end riu.i;

end test2;

Failed to parse properties

Hello,

When trying OSATE2 and defining my own properties, I get compilation errors. However, these property set compile fine with Ocarina. There are the property definition (see below).

Any idea on why this is not working in OSATE2 ?

Thanks for any comment/suggestion,

Best regards,

property set Processor_Properties is

Frequency : type aadlinteger 0 Hz .. Max_Aadlinteger units
(Hz,
KHz => Hz * 1000,
MHz => KHz * 1000,
GHz => MHz * 1000);

CPU_Speed : Frequency applies to (processor);

MIPS : aadlinteger 0 .. Max_Aadlinteger applies to (processor, abstract);

end Processor_Properties;

property set Physical_Properties is


-- Power units --


Power_Units: type units
(W,
KW => W * 1000,
MW => KW * 1000,
GW => MW * 1000,
TW => GW * 1000);

Max_Power: constant Physical_Properties::Power_Units => 2#1#e32 W;
Power : type aadlreal 0 W .. Max_Power units Physical_Properties::Power_Units;
Power_Consume : Power applies to (processor, device, memory, system);
Power_Provide : Power applies to (device);
Total_Power : Power applies to (system);


-- EMC --


Ionizing_Dose_Units : type units (
rad,
Krad => rad * 1000,
Mrad => Krad * 1000,
Grad => Mrad * 1000,
Trad => Grad * 1000);

Max_Ionizing_Dose: constant Ionizing_Dose_Units => 2#1#e32 rad;

Ionizing_Type : type aadlinteger
0 rad .. Max_Ionizing_Dose units Ionizing_Dose_Units;

TID : Ionizing_Type applies to (processor, device, memory);

Mass_Units: type units (
g,
Kg => g * 1000,
T => Kg * 1000);

Maximum_Mass: constant Mass_Units => 2#1#e32 g;

Mass_Type : type aadlreal 0 g .. Maximum_Mass units Mass_Units;

Mass : Mass_Type applies to (processor, device, memory, system);

Max_Mass : Mass_Type applies to (processor, device, memory, system);

end Physical_Properties;

AadlUnparser - 'provides' access print 2x

The 'provides' token is printed 2x by the AadlUnparser when you use the function "Do Save (aaxl2) as Text (aadl)" on an xmi file.

Example of bug:
processor The_Processor
features
ETH: providesprovides bus access Ethernet_Bus;
end The_Processor;

It seems to be a wrong copy/paste in the construction of the string 'd' located in caseXXxAccess methods.
(See the class org.osate.xtext.aadl2.util.AadlUnparser.java and the caseBusAccess method for example).

AccessType not properly set

The access type for data access, bus access is not set correctly.
The outline view shows it as "provided".

OsateResourceUtil bug?

Quick question in the OSATE code.

Is the OsateResourceUtil suppose to be fully working?

When I use a defaultTraversalAllDeclarativeModels() on one of my switches

it eventually calls the visitWorkspaceDeclarativeModels() in AbstractSimpleTraversal and the problem is that

When it does

final EList resources = OsateResourceUtil.getResourceSet().getResources();

it gets a zero list always.

Am I suppose to do something in the OSATE environment to load up OsateResourceUtil?

Only code that uses this is the architecture ModelStatisticsAnalysis plug in and you can see that

it also shows 0 for component type declarations, 0 component implementation declarations, and so on

for any model because of this problem.

Thanks.
Sincerely,
Min Young Nam

Package resolution without import

With respect to ยง4.2 (N5) of the standard, writing two packages:

package Package1
  public
    system S1
    end S1;
end Package1;

and

package Package2
  public
    system S2 extends Package1::S1
    end S2;  
end Package2;

should not work, because Package1 is not declared in a with close in Package2.
Osate does not claim.

OSATE no longer compiles

Hi,

I clone the updated sources and since this update, OSATE no longer build within Eclipse.
I am using Eclipse Indigo, build id 20110916-0149. It seems that my Eclipse distribution is up to date (no new update to be installed).

Especially, I got errors related to packages org.osate.xtext.* and generated code. After some investigation, it seems that the version of xtext changed from the old to the new version.

Can you tell me if the build requirements changed and if the xtext version really matters ? If notm removing the required version shall remove potential warning/error, no ?

Cannot call subprogram implementation

When a subprogram implementation classifier is specified as the subprogram to be called in a call sequence, an error is displayed.

It seems that the subprogram type is confused with a data instance - or at least a feature providing a subprogram access (it is labeled as "CallContext" in the error message).

Note that removing the implementation suffix remove the error.

(failing) example :


subprogram computation_routine
end computation_routine;

subprogram implementation computation_routine.slot1
properties
    Timing_Properties::Compute_Execution_Time => 1 ms .. 2 ms;
end computation_routine.slot1;

thread Computing_Blade1_thread
end Computing_Blade1_thread;

thread implementation Computing_Blade1_thread.slot1
calls 
    main : {
        routine_call : subprogram computation_routine.slot1;   --  error happens here
    };
end Computing_Blade1_thread.slot1;

error message :

Couldn't resolve reference to CallContext 'computation_routine'.

Standard properties cannot be used

Hello,

When defining my own properties with the standard properties, OSATE reports error.

For example, in the following property set, the Data_Volume is not correctly parsed by OSATE and it reports an error telling me that the Data_Volume type does not exist. However, I add the Xtext nature to the project and I have the properties added to my workspace, so it should be parsed correctly.

property set Bus_Properties is

Required_Bandwidth : Data_Volume applies to
(abstract, system, device, bus access, connection);

end Bus_Properties;

Erroneous Closing Parenthesis Upon end-of-line Return

Upon entering a return at the end of a line, Xtext inserts an extra line with a closing parenthesis on it. In the example below, I entered a CR after "Second_Count;" to insert a comment. Xtext responded by inserting the next two lines:

SpO2MovingAvgWindowSamples : out data port PulseOx_Types::Second_Count;

)
SpO2Avg : in data port PulseOx_Types::Percent;

Xtext then marks almost every following line as error.

OSATE contextual menus

The OSATE2 snapshot released in august has two contextual menus with the same name but with different options. In addition, when trying to invoke them, nothing happens or the action cannot be used (the system report "The current operation is not currently available). So, due to this bug, OSATE functions cannot be used at this time.

Let me know how I can help you to solve this bug,

Best,

Missing action classes

The file "org.osate.ui/plugin.xml" refers to several action classes that do not exist:

  • org.osate.ui.actions.ParseAction
  • org.osate.ui.actions.InstantiateAadl

I suggest to remove these reference until the will be created.

Inconsistent literals for properties

In AadlProject.java, the string literals that are defined for time units do not correspond to the ones used in the predeclared properties file AadlProject.aadl. For example, AadlProject.NS_LITERAL = "Ns" but in the AADL file, the units for nanoseconds is "ns" (all lowercase).

Also, some the other files like TimingProperties.java and ThreadProperties.java are missing literals for a lot of the predeclared properties in those sets.

Unable to bind a connection declared in a subprogram implementation used in a subprogram call.

See the following example, where the second connection binding property in the system causes an error.

SUBPROGRAM Subprogram_1
    FEATURES
        feature_1: IN PARAMETER Data_1.impl;
END Subprogram_1;

SUBPROGRAM IMPLEMENTATION Subprogram_1.impl
END Subprogram_1.impl;

SUBPROGRAM Subprogram_2
    FEATURES
        feature_1: IN PARAMETER Data_1.impl;
END Subprogram_2;

SUBPROGRAM IMPLEMENTATION Subprogram_2.impl
    CALLS
        call_seq_1: {
            call_1: SUBPROGRAM Subprogram_1.impl;
        };
    CONNECTIONS
        feature_1_conn: PARAMETER feature_1 -> call_1.feature_1;
END Subprogram_2.impl;

THREAD Thread_1
    FEATURES
        feature_1: IN DATA PORT Data_1.impl;
END Thread_1;

THREAD IMPLEMENTATION Thread_1.impl
    CALLS
        call_seq_1: {
            call_1: SUBPROGRAM Subprogram_2.impl;
        };
    CONNECTIONS
        feature_1_conn: PARAMETER feature_1 -> call_1.feature_1;
END Thread_1.impl;

PROCESS Process_1
END Process_1;

PROCESS IMPLEMENTATION Process_1.impl
    SUBCOMPONENTS
        thread_1: THREAD Thread_1.impl;
END Process_1.impl;

SYSTEM System_1
END System_1;

SYSTEM IMPLEMENTATION System_1.impl
    SUBCOMPONENTS
        bus_1: BUS;
        bus_2: BUS;
        process_1: PROCESS Process_1.impl;
    PROPERTIES
        Actual_Connection_Binding => (REFERENCE (bus_1)) APPLIES TO process_1.thread_1.feature_1_conn;
        Actual_Connection_Binding => (REFERENCE (bus_2)) APPLIES TO process_1.thread_1.call_1.feature_1_conn;
END System_1.impl;

Duplication in property instanciation

Dear all,

When instantiating my model, properties from the root component are duplicated in subcomponents. For example, lets consider the model below with the declared ARAM_Properties. Then, when instanciating the platform_evolved.i component, the property association Realizes will be copied in the subcomponents.

In consequence, when trying to browse the component hierarchy, plugin will report errors.

Hope that would help to solve this issue.

property set ARAM_Properties is

  Realizes : inherit list of classifier (abstract, system) applies to 
    (processor, bus, device, abstract, memory, process, system);

end ARAM_Properties;
package test
public
with ARAM_Properties;

bus spacewire
end spacewire;

bus bus1553
end bus1553;

bus generic
end generic;

system obc
features
   link_payload  : requires bus access;
   link1553_platform : requires bus access bus1553;
end obc;

system implementation obc.i
end obc.i;

system obc_current extends obc
features
   link_payload  : refined to requires bus access bus1553;
end obc_current;

system implementation obc_current.i
end obc_current.i;

system obc_evolved extends obc
features
   link_payload  : refined to requires bus access spacewire;
   link_aocs     : requires bus access spacewire;
end obc_evolved;

system implementation obc_evolved.i extends obc.i
end obc_evolved.i;

system aocs
features
   link1553 : requires bus access bus1553;
   link     : requires bus access generic;
end aocs;

system implementation aocs.i
end aocs.i;

system aocs_current extends aocs
end aocs_current;

system implementation aocs_current.i extends aocs.i
end aocs_current.i;

system aocs_evolved extends aocs
features
   linkspw     : requires bus access spacewire;
end aocs_evolved;

system implementation aocs_evolved.i extends aocs.i
end aocs_evolved.i;

system riu
features
   link1553 : requires bus access bus1553;
   bus_aocs       : requires bus access generic;
   bus_propulsion : requires bus access generic;
   bus_thermal    : requires bus access generic;
end riu;

system implementation riu.i
end riu.i;

system riu_current extends riu
features
   bus_power    : requires bus access generic;
end riu_current;

system implementation riu_current.i extends riu.i
end riu_current.i;

system riu_evolved extends riu
features
   link_spw : requires bus access spacewire;
end riu_evolved;

system implementation riu_evolved.i extends riu.i
end riu_evolved.i;

system platform
features
   payloadlink : requires bus access;
end platform;

system platform_current extends platform
features
   payloadlink : refined to requires bus access bus1553;
end platform_current;

system implementation platform.i
subcomponents
   riu         : system riu.i;
   aocs     : system aocs.i;
   obc      : system obc.i;
end platform.i;

system implementation platform_current.i extends platform.i
subcomponents
    riu     : refined to system riu_current.i;
    aocs       : refined to system aocs_current.i;
    powerbus    : bus generic;
end platform_current.i;

system platform_evolved extends platform
features
   payloadlink : refined to requires bus access spacewire;
end platform_evolved;

system implementation platform_evolved.i extends platform.i
subcomponents
  obc         : refined to system obc_evolved.i;
  aocs          : refined to system aocs_evolved.i;
  spw_bus_aocs    : bus spacewire; 
connections
   obc_aocs        : bus access spw_bus_aocs -> aocs.linkspw;
   aocs_obc        : bus access spw_bus_aocs -> obc.link_aocs;
properties
   ARAM_Properties::Realizes => (classifier (test::platform.i));
end platform_evolved.i;

end test;

Semantic check missing for wrongful connection statement compared to port direction

I just found this while making a mistake and the OSATE editor didn't give a semantic error.
Thought it would be worthwhile to leave a record.
In the below example, the testinport is wrongfully declared as out port while
the connection c4 in process implementation AP_PROCESS.impl is using it
as an in data port. It looks like the instantiation process is not catching this
and does generated a connection instance.

Or is this suppose to be allowed?

Thanks.
Sincerely,
Min Young

process AP_PROCESS
features
outport: out data port ;
inport: in data port ;
testoutport: out data port testData;
testinport: out data port testData;
end AP_PROCESS;

process implementation AP_PROCESS.impl
subcomponents
Pitch_Rate_Thread: thread Generate_Elevator_Pitch_Rate.impl;
connections
c1: port inport -> Pitch_Rate_Thread.inport;
c2: port Pitch_Rate_Thread.outport -> outport;
c3: port Pitch_Rate_Thread.testoutport -> testoutport;
c4: port testinport -> Pitch_Rate_Thread.testinport;
end AP_PROCESS.impl;

thread Generate_Elevator_Pitch_Rate
features
outport: out data port ;
inport: in data port ;
testoutport: out data port testData;
testinport: out data port testData;
end Generate_Elevator_Pitch_Rate;

thread implementation Generate_Elevator_Pitch_Rate.impl
end Generate_Elevator_Pitch_Rate.impl;

Cannot add a subprogram subcomponent to a subprogram.

There is an error when a subprogram is added as a subcomponent of a subprogram. It works fine for DATA and ABSTRACT categories.

SUBPROGRAM Subprogram1
END Subprogram1;

SUBPROGRAM IMPLEMENTATION Subprogram1.impl
    SUBCOMPONENTS
        subpr: SUBPROGRAM;
END Subprogram1.impl;

Connection_Pattern

This may be a known issue or a standard issue.

The AADL standard defines the standard property, Connection_Pattern as
Connection_Pattern: list of Supported_Connection_Patterns

OSATE 2 uses the definition:
Connection_Pattern: list of list of Supported_Connection_Patterns applies to (connection);

I assume this is because the standard also specifies Connection_Pattern as a multi-values list. I just came across it due to using the standard property files with a tool that doesn't support the list of list of syntax.

port direction not recorded in model

From Yue Ma:

Regarding the in/out issue:
I retried my example, and found out that:
when I write in capital letters, for example, "e1: IN EVENT PORT;", the direction in aaxl is set to be "in out" (a default value, I think), while if I write in lowercase, for example, "e2: out event port", no problem for the direction.

Bug in instantiation of in out ports

Hello everyone,

I believe there is a bug in the instantiation of "in out ports."
Hope this is where I'm suppose to post this.

For example, a connection of
EventDataConnection2: port PR_AP_L.otherAP -> PR_AP_R.otherAP;
is creating a connection instance that has the source and destination as PR_AP_L.

I've also made a test model which consists of two packages (A_Model and AP)
A duplicate of the component types defined in AP is also inside A_Model.
This is because I accidently found that it made a difference.
In A_Model, there are two systems S1 and S2. Each with connections that are commented.
S2 uses the local name space of A_Model.
You can go through the different 12 cases of connections. Among all the cases, I only saw one case
that works as expected. I've placed comments about what shows up.

I believe that name of ports is making a difference. If the names are identical in the source and destination
It is causing a lot of problems. Even if they are different, in the same name space it gives null errors when
trying to expand or see the connection references of the connection instance from the Instance Model Editor.

If instantiation of in out ports are not suppose to be complete in the current developement version of OSATE 2
then I believe this model will serve as a good testing model.
Also I have seen this problem in OSATE 1.5.8 so back then I just did not use in out ports.

Thanks.
Sincerely,
Min-Young Nam

package A_Model
public
  system S1
  end S1;

  system implementation S1.impl
    subcomponents
      PR_AP_L: process AP::AP_PROCESS.impl;
      PR_AP_R: process AP::AP_PROCESS.impl;
      PR_AP_C: process AP::AP_PROCESS.impl;
      --among different type
      PR_AP_D: process AP::AP_PROCESS2.impl;
      PR_NAV_RADIO_2: process NAV_PROCESS.impl;
      PR_NAV_RADIO_1: process NAV_PROCESS.impl;
    connections
      EventDataConnection1: port PR_AP_R.otherAP <-> PR_AP_L.otherAP;    --Creates 2 ConnectionInstance L -> R, R -> R
      --EventDataConnection2: port PR_AP_L.otherAP -> PR_AP_R.otherAP;       --Creates 1 ConnectionInstance L -> L

      --EventDataConnection3: port PR_AP_C.otherAP <-> PR_AP_D.otherAP;      --Creates 2 ConnectionInstance C -> D, D -> C but with Null pointer errors when ConnectionInstance is expanded
      --EventDataConnection4: port PR_AP_D.otherAP -> PR_AP_C.otherAP;         --Creates 1 ConnectionInstance D -> C but with Null pointer errors when ConnectionInstance is expanded

      --EventDataConnection5: port PR_AP_R.otherAP <-> PR_AP_L.otherAP2;    --Creates 4 ConnectionInstance L -> R, L -> L, R -> L, R -> R  port names seems correct meaning L.otherAP -> L.otherAP2
      --EventDataConnection6: port PR_AP_L.otherAP -> PR_AP_R.otherAP2;    --Creates 1 ConnectionInstance L -> R   CORRECT

      --EventDataConnection0: port PR_NAV_RADIO_1.other_NAV_Radio <-> PR_NAV_RADIO_2.other_NAV_Radio;
  end S1.impl;


  system S2
  end S2;

  system implementation S2.impl
    subcomponents
      PR_AP_L: process AP_PROCESS.impl;
      PR_AP_R: process AP_PROCESS.impl;
      PR_AP_C: process AP_PROCESS.impl;
      PR_AP_D: process AP_PROCESS2.impl;
      PR_NAV_RADIO_2: process NAV_PROCESS.impl;
      PR_NAV_RADIO_1: process NAV_PROCESS.impl;
    connections
      --EventDataConnection1: port PR_AP_R.otherAP <-> PR_AP_L.otherAP;    --Creates 2 ConnectionInstance L -> R, R -> R with Null pointer errors when ConnectionInstance is expanded
      --EventDataConnection2: port PR_AP_L.otherAP -> PR_AP_R.otherAP;       --Creates 1 ConnectionInstance L -> L with Null pointer errors when ConnectionInstance is expanded
      --EventDataConnection3: port PR_AP_C.otherAP <-> PR_AP_D.otherAP;      --Creates 2 ConnectionInstance C -> D, D -> C but with Null pointer errors when ConnectionInstance is expanded
      --EventDataConnection4: port PR_AP_D.otherAP -> PR_AP_C.otherAP;         --Creates 1 ConnectionInstance D -> C but with Null pointer errors when ConnectionInstance is expanded

      --EventDataConnection5: port PR_AP_R.otherAP <-> PR_AP_L.otherAP2;    --Creates 4 ConnectionInstance L -> R, L -> L, R -> L, R -> R with Null pointer errors when ConnectionInstance is expanded
      EventDataConnection6: port PR_AP_L.otherAP -> PR_AP_R.otherAP2;    --Creates 1 ConnectionInstance L -> R   with Null pointer errors when ConnectionInstance is expanded

      --EventDataConnection0: port PR_NAV_RADIO_1.other_NAV_Radio <-> PR_NAV_RADIO_2.other_NAV_Radio;
  end S2.impl;

process AP_PROCESS
    features
       otherAP: in out data port;
       otherAP2: in out data port;
  end AP_PROCESS;


  process implementation AP_PROCESS.impl
    subcomponents
      Pitch_Rate_Thread: thread Generate_Elevator_Pitch_Rate.impl;
    connections
      c1: port otherAP -> Pitch_Rate_Thread.otherAP;
      c2: port Pitch_Rate_Thread.otherAP -> otherAP;
      c3: port otherAP2 -> Pitch_Rate_Thread.otherAP2;
      c4: port Pitch_Rate_Thread.otherAP2 -> otherAP2;
  end AP_PROCESS.impl;

  thread Generate_Elevator_Pitch_Rate
    features
      otherAP: in out data port;
      otherAP2: in out data port;
  end Generate_Elevator_Pitch_Rate;

  thread implementation Generate_Elevator_Pitch_Rate.impl
  end Generate_Elevator_Pitch_Rate.impl;

  process AP_PROCESS2
    features
      otherAP: in out data port;
  end AP_PROCESS2;


  process implementation AP_PROCESS2.impl
    subcomponents
      Pitch_Rate_Thread: thread Generate_Elevator_Pitch_Rate2.impl;
    connections
      c6: port otherAP -> Pitch_Rate_Thread.otherAP;
      c7: port Pitch_Rate_Thread.otherAP -> otherAP;
  end AP_PROCESS2.impl;

  thread Generate_Elevator_Pitch_Rate2
    features
      otherAP: in out data port;
  end Generate_Elevator_Pitch_Rate2;

  thread implementation Generate_Elevator_Pitch_Rate2.impl
  end Generate_Elevator_Pitch_Rate2.impl;

  process NAV_PROCESS
    features
      FG: out data port;
      -- NEED CHECKING
      other_NAV_Radio: in out data port;
    flows none ;
  end NAV_PROCESS;

  process implementation NAV_PROCESS.impl
  end NAV_PROCESS.impl;
end A_Model;
package AP
public


  process AP_PROCESS
    features
       otherAP: in out data port;
       otherAP2: in out data port;
  end AP_PROCESS;


  process implementation AP_PROCESS.impl
    subcomponents
      Pitch_Rate_Thread: thread Generate_Elevator_Pitch_Rate.impl;
    connections
      c1: port otherAP -> Pitch_Rate_Thread.otherAP;
      c2: port Pitch_Rate_Thread.otherAP -> otherAP;
      c3: port otherAP2 -> Pitch_Rate_Thread.otherAP2;
      c4: port Pitch_Rate_Thread.otherAP2 -> otherAP2;
  end AP_PROCESS.impl;

  thread Generate_Elevator_Pitch_Rate
    features
      otherAP: in out data port;
      otherAP2: in out data port;
  end Generate_Elevator_Pitch_Rate;

  thread implementation Generate_Elevator_Pitch_Rate.impl
  end Generate_Elevator_Pitch_Rate.impl;

  process AP_PROCESS2
    features
      otherAP: in out data port;
  end AP_PROCESS2;


  process implementation AP_PROCESS2.impl
    subcomponents
      Pitch_Rate_Thread: thread Generate_Elevator_Pitch_Rate2.impl;
    connections
      c6: port otherAP -> Pitch_Rate_Thread.otherAP;
      c7: port Pitch_Rate_Thread.otherAP -> otherAP;
  end AP_PROCESS2.impl;

  thread Generate_Elevator_Pitch_Rate2
    features
      otherAP: in out data port;
  end Generate_Elevator_Pitch_Rate2;

  thread implementation Generate_Elevator_Pitch_Rate2.impl
  end Generate_Elevator_Pitch_Rate2.impl;
end AP;

property_owner not accept unique_component_classifier_reference

on page 215 of as5506-draft1.2-09222011.pdf defines property_owner as
property_owner ::=
-- AADL or Annex meta model named element
named_element_qualified_meta_model_identifier | unique_classifier_reference

unique_classifier_reference ::=
unqiue_component_classifier_reference | unqiue_feature_group_type_refererence

fix misspellings in document BNF:
unique_classifier_reference ::=
unique_component_classifier_reference | unique_feature_group_type_reference

this source:

property set PulseOx_Properties is
with Timing_Properties;
with PO;
--time between SpO2 measurments by pulse oximeter, default 1 second
SpO2_Sampling_Period : Timing_Properties::Time => 1 sec applies to (all);
--how long must bad SpO2 measuements persist before alaming
Motion_Artifact_Duration_Limit : Timing_Properties::Time => 10 sec applies to (all);
--number of trending samples displayed to clinician, default 30
Num_Trending_Samples : aadlinteger => 30 applies to (all);
--time between trending samples, default 1 minute
Time_Between_Trending_Samples : Timing_Properties::Time => 1 min applies to (PO::SpO2TrendThread, PO::HeartRateTrendThread);
end PulseOx_Properties;

causes these Xtext errors:

mismatched input ',' expecting ';' PulseOx_Properties.aadl /pulse-ox/aadl/propertysets line: 14 /pulse-ox/aadl/propertysets/PulseOx_Properties.aadl Xtext Check (fast)

mismatched input '::' expecting ')' PulseOx_Properties.aadl /pulse-ox/aadl/propertysets line: 14 /pulse-ox/aadl/propertysets/PulseOx_Properties.aadl Xtext Check (fast)

missing 'end' at 'SpO2TrendThread' PulseOx_Properties.aadl /pulse-ox/aadl/propertysets line: 14 /pulse-ox/aadl/propertysets/PulseOx_Properties.aadl Xtext Check (fast)

Analysis error for additional features with inherited components

The following code report some errors about the latest connections sections, indicating that linkspw and link_aocs are not found. However, this piece of code seems to be valid and is successfully analyzed with other AADL compilers.

package test

public

bus spacewire
end spacewire;

bus bus1553
end bus1553;

bus generic
end generic;

system obc
features
link_payload : requires bus access;
link1553_platform : requires bus access bus1553;
end obc;

system implementation obc.i

end obc.i;

system obc_current extends obc
features
link_payload : refined to requires bus access bus1553;
end obc_current;

system implementation obc_current.i

end obc_current.i;

system obc_evolved extends obc
features
link_payload : refined to requires bus access spacewire;
link_aocs : requires bus access spacewire;
end obc_evolved;

system implementation obc_evolved.i extends obc.i

end obc_evolved.i;

system aocs
features
link1553 : requires bus access bus1553;
link : requires bus access generic;
end aocs;

system implementation aocs.i
end aocs.i;

system aocs_current extends aocs
end aocs_current;

system implementation aocs_current.i extends aocs.i
end aocs_current.i;

system aocs_evolved extends aocs
features
linkspw : requires bus access spacewire;
end aocs_evolved;

system implementation aocs_evolved.i extends aocs.i
end aocs_evolved.i;

system riu
features
link1553 : requires bus access bus1553;
bus_aocs : requires bus access generic;
bus_propulsion : requires bus access generic;
bus_thermal : requires bus access generic;
end riu;

system implementation riu.i
end riu.i;

system riu_current extends riu
features
bus_power : requires bus access generic;
end riu_current;

system implementation riu_current.i extends riu.i

end riu_current.i;

system riu_evolved extends riu
features
link_spw : requires bus access spacewire;
end riu_evolved;

system implementation riu_evolved.i extends riu.i
end riu_evolved.i;

system platform
features
payloadlink : requires bus access;
end platform;

system platform_current extends platform
features
payloadlink : refined to requires bus access bus1553;
end platform_current;

system implementation platform.i
subcomponents
riu : system riu.i;
aocs : system aocs.i;
obc : system obc.i;
end platform.i;

system implementation platform_current.i extends platform.i
subcomponents
riu : refined to system riu_current.i;
aocs : refined to system aocs_current.i;
powerbus : bus generic;
end platform_current.i;

system platform_evolved extends platform
features
payloadlink : refined to requires bus access spacewire;
end platform_evolved;

system implementation platform_evolved.i extends platform.i
subcomponents
obc : refined to system obc_evolved.i;
aocs : refined to system aocs_evolved.i;
spw_bus_aocs : bus spacewire;
connections
obc_aocs : bus access spw_bus_aocs -> aocs.linkspw;
aocs_obc : bus access spw_bus_aocs -> obc.link_aocs;
end platform_evolved.i;

end test;

Prototypes are not supported for some component categories

Osate 2 seems to not support the prototypes in the type declaration of for some categories of components (at least processor, device, data).
With the following example I get an error on the prototypes word.

device generic_device
  prototypes
    generic_bus : bus;
  features
    link : requires bus access generic_bus;
end generic_device;

Useless target platform for Eclipse 3.6

The "org.osate.build.target" project contains the definition of a target platform for the Helios release of Eclipse (3.6). Considering that this file is about empty and that many things require at least Eclipse 3.7, I suggest to completely remove this file.

Parsing error of calls referencing subprogram implementations.

In the following AADL code, I get a parsing error when the call references a subprogram implementation (it works fine when it is a type). The error message are:
Couldn't resolve reference to CalledSubprogram..
Couldn't resolve reference to CallContext...

SUBPROGRAM Test_Subprogram
END Test_Subprogram;

SUBPROGRAM IMPLEMENTATION Test_Subprogram.impl
END Test_Subprogram.impl;

THREAD Test_Thread
END Test_Thread;

THREAD IMPLEMENTATION Test_Thread.impl
    CALLS
        basic_call_sequence: {
            subpr_call_1: SUBPROGRAM Test_Subprogram.impl;
        };
END Test_Thread.impl;

Prototype referencing data unresolved

The data classifier referenced by a prototype is not resolved. Both component type and component implementation seem to be affected by this bug (subprogram, data, abstract...).

Model (prototypes.aadl):

abstract flowComponent
prototypes
dt: data;
incoming: in feature;
features
insignal: in feature incoming;
outsignal: out data port dt;
end flowComponent;

Ouput:
Description Resource Path Location Type
Couldn't resolve reference to DataSubcomponentType 'dt'. prototypes.aadl /aadl2-osate2-tests line: 53 /aadl2-osate2-tests/prototypes.aadl Xtext Check (fast)

Analysis error for inherited components

The following example does not report any error while the features would be refined in the obc_current component definition :

system obc
features
link_payload : requires bus access;
link1553_platform : requires bus access bus1553;
end obc;

system implementation obc.i

end obc.i;

system obc_current extends obc
features
link_payload : requires bus access bus1553;
end obc_current;

The exact definition would be :

system obc_current extends obc
features
link_payload : refined to requires bus access bus1553;
end obc_current;

Requiring a single property value to be a property list

In the following example, property values "classifier(Heart_Rate)" and "30" needed to be placed within parentheses to become property lists to be parsed.

data HeartRateSamples
properties
Data_Model::Data_Representation => Array;
Data_Model::Base_Type => (classifier(Heart_Rate)); --one byte for 0-255 beats per minute
Data_Model::Integer_Range => 0 .. 255;
Data_Model::Dimension => (30); --ICE_Properties::Num_Trending_Samples);
end HeartRateSamples;

I prefer that when either a property_value or property_list is allowed in the grammar, that single-valued lists be disallowed. Then property_list would require at least two elements (contain a comma). I believe this can be parsed unambiguously without semantic information and will eliminate some superfluous parentheses.

AadlUnparser does not handle "in bindings" correctly

The AadlUnparser does not correctly handle "in bindings" on property associations. In particular, rather than outputting the name of the classifiers in the "in bindings" list, it outputs the full structure of those classifiers.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.