diff options
Diffstat (limited to 'plugins/org.eclipse.etrice.generator.contractmonitor')
3 files changed, 4 insertions, 3 deletions
diff --git a/plugins/org.eclipse.etrice.generator.contractmonitor/src/org/eclipse/etrice/generator/contractmonitor/gen/MainGen.xtend b/plugins/org.eclipse.etrice.generator.contractmonitor/src/org/eclipse/etrice/generator/contractmonitor/gen/MainGen.xtend index 0ac6a3be2..f0d348a66 100644 --- a/plugins/org.eclipse.etrice.generator.contractmonitor/src/org/eclipse/etrice/generator/contractmonitor/gen/MainGen.xtend +++ b/plugins/org.eclipse.etrice.generator.contractmonitor/src/org/eclipse/etrice/generator/contractmonitor/gen/MainGen.xtend @@ -20,6 +20,7 @@ import org.eclipse.etrice.core.room.RoomModel import org.eclipse.etrice.generator.base.args.Arguments import org.eclipse.etrice.generator.base.io.IGeneratorFileIO import org.eclipse.etrice.generator.base.logging.ILogger +import org.eclipse.etrice.core.room.ActorClass class MainGen { @@ -29,7 +30,7 @@ class MainGen { val model = resource.contents.head if(model instanceof RoomModel) { val generatedModel = monitorGen.generateMonitors(model) - if(!generatedModel.actorClasses.empty) { + if(!generatedModel.roomClasses.filter(ActorClass).empty) { val serializedModel = monitorGen.serializeMonitors(generatedModel, resource.resourceSet) val path = generatedModel.name.replace('.', '/') + '.room' fileIO.generateFile("Saving generated contracts", path, serializedModel) diff --git a/plugins/org.eclipse.etrice.generator.contractmonitor/src/org/eclipse/etrice/generator/contractmonitor/gen/MonitorActorGen.xtend b/plugins/org.eclipse.etrice.generator.contractmonitor/src/org/eclipse/etrice/generator/contractmonitor/gen/MonitorActorGen.xtend index 653825a0f..662a23206 100644 --- a/plugins/org.eclipse.etrice.generator.contractmonitor/src/org/eclipse/etrice/generator/contractmonitor/gen/MonitorActorGen.xtend +++ b/plugins/org.eclipse.etrice.generator.contractmonitor/src/org/eclipse/etrice/generator/contractmonitor/gen/MonitorActorGen.xtend @@ -103,7 +103,7 @@ class MonitorActorGen { it.imports += baseFactory.createImport => [ it.importedNamespace = model.name + '.*' ] - it.actorClasses += model.actorClasses.filter(ActorClass).filter[helpers.isContract(it)].map[contract | + it.roomClasses += model.roomClasses.filter(ActorClass).filter[helpers.isContract(it)].map[contract | generateMonitor(contract, verifyNotNull(helpers.getContractProtocol(contract))) ] ] diff --git a/plugins/org.eclipse.etrice.generator.contractmonitor/src/org/eclipse/etrice/generator/contractmonitor/util/ContractModelValidator.xtend b/plugins/org.eclipse.etrice.generator.contractmonitor/src/org/eclipse/etrice/generator/contractmonitor/util/ContractModelValidator.xtend index 4d381c083..a16e7ae85 100644 --- a/plugins/org.eclipse.etrice.generator.contractmonitor/src/org/eclipse/etrice/generator/contractmonitor/util/ContractModelValidator.xtend +++ b/plugins/org.eclipse.etrice.generator.contractmonitor/src/org/eclipse/etrice/generator/contractmonitor/util/ContractModelValidator.xtend @@ -41,7 +41,7 @@ class ContractModelValidator extends ModelValidator { def private List<Resource> getRelevantResources(Iterable<Resource> resources) { val contractProtocols = resources.map[contents].flatten.filter(RoomModel).map[model | - model.protocolClasses.filter(ProtocolClass).filter[!annotations.empty].filter[ pc | + model.roomClasses.filter(ProtocolClass).filter[!annotations.empty].filter[ pc | // validate protocols with (unresolved) contract helpers.hasContract(pc) || !EcoreUtil.UnresolvedProxyCrossReferencer.find(pc.annotations).empty ] |