Invalid connection possible in inherited structure diagram
In an inherited diagram, it is possible to create an invalid connection between the port of a contained ActorRef (either inherited or local) and an inherited external end port. Normally, external end ports cannot be further connected inside the actor. This invalid connection cannot be serialized in the textual model and causes an error (see screenshot).
Room example:
ProtocolClass pc {
incoming {
Message msg
}
}
ActorClass PortBindingActorExample {
Interface {
Port p_ext: pc
}
Structure {
external Port p_ext
ActorRef aref: InnerActor
}
}
ActorClass SubclassActor extends PortBindingActorExample {
Structure {
ActorRef aref_sub: InnerActor
}
}
ActorClass InnerActor {
Interface {
conjugated Port p: pc
}
Structure {
external Port p
}
}