Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorptessier2015-01-27 11:11:09 +0000
committerptessier2015-01-27 11:11:09 +0000
commit251232ffffb1e0e5d81fcd5f397690856e8e979e (patch)
treeeb0c10b666716e99c9044ed2d2e23e54c84a75ee /plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus
parent1e7ffb45502814154445da61b7a54c38385baaf0 (diff)
downloadorg.eclipse.papyrus-251232ffffb1e0e5d81fcd5f397690856e8e979e.tar.gz
org.eclipse.papyrus-251232ffffb1e0e5d81fcd5f397690856e8e979e.tar.xz
org.eclipse.papyrus-251232ffffb1e0e5d81fcd5f397690856e8e979e.zip
Bug 440082 - [SysML] Support for SysML 1.4
move plugin sysml14 and sysml14.edit inside directory sysml14 Change-Id: I2c11ef90aab2a74003e6a02d45e0b77f0b7ad03b
Diffstat (limited to 'plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus')
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/ActivitiesFactory.java111
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/ActivitiesPackage.java883
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Continuous.java27
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/ControlOperator.java90
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Discrete.java27
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/NoBuffer.java62
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Optional.java62
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Overwrite.java62
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Probability.java119
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Rate.java146
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ActivitiesFactoryImpl.java178
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ActivitiesPackageImpl.java534
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ContinuousImpl.java45
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ControlOperatorImpl.java225
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/DiscreteImpl.java45
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/NoBufferImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/OptionalImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/OverwriteImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ProbabilityImpl.java286
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/RateImpl.java347
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/util/ActivitiesAdapterFactory.java252
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/util/ActivitiesSwitch.java265
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/Allocate.java81
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/AllocateActivityPartition.java62
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/AllocationsFactory.java57
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/AllocationsPackage.java345
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocateActivityPartitionImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocateImpl.java208
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocationsFactoryImpl.java112
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocationsPackageImpl.java325
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/util/AllocationsAdapterFactory.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/util/AllocationsSwitch.java155
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/AdjunctProperty.java89
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BindingConnector.java62
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/Block.java86
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BlocksFactory.java147
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BlocksPackage.java1593
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BoundReference.java103
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ClassifierBehaviorProperty.java62
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ConnectorProperty.java89
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/DirectedRelationshipPropertyPath.java204
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/DistributedProperty.java62
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ElementPropertyPath.java105
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/EndPathMultiplicity.java112
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/NestedConnectorEnd.java60
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ParticipantProperty.java88
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/PropertySpecificType.java62
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ValueType.java115
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/AdjunctPropertyImpl.java225
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BindingConnectorImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BlockImpl.java230
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BlocksFactoryImpl.java222
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BlocksPackageImpl.java840
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BoundReferenceImpl.java220
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ClassifierBehaviorPropertyImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ConnectorPropertyImpl.java225
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/DirectedRelationshipPropertyPathImpl.java416
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/DistributedPropertyImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ElementPropertyPathImpl.java234
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/EndPathMultiplicityImpl.java286
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/NestedConnectorEndImpl.java163
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ParticipantPropertyImpl.java224
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/PropertySpecificTypeImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ValueTypeImpl.java285
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/util/BlocksAdapterFactory.java360
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/util/BlocksSwitch.java391
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/ConstraintBlock.java28
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/ConstraintblocksFactory.java48
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/ConstraintblocksPackage.java158
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/internal/impl/ConstraintBlockImpl.java47
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/internal/impl/ConstraintblocksFactoryImpl.java101
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/internal/impl/ConstraintblocksPackageImpl.java251
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/util/ConstraintblocksAdapterFactory.java146
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/util/ConstraintblocksSwitch.java134
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/Allocated.java145
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/Deprecated.java252
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/DeprecatedelementsFactory.java84
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/DeprecatedelementsPackage.java892
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/FlowPort.java120
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/FlowSpecification.java62
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/RequirementRelated.java130
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/AllocatedImpl.java265
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/DeprecatedImpl.java596
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/DeprecatedelementsFactoryImpl.java150
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/DeprecatedelementsPackageImpl.java562
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/FlowPortImpl.java277
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/FlowSpecificationImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/RequirementRelatedImpl.java263
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/util/DeprecatedelementsAdapterFactory.java202
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/util/DeprecatedelementsSwitch.java204
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Conform.java90
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ElementGroup.java219
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Expose.java58
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ModelelementsFactory.java111
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ModelelementsPackage.java1313
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Problem.java62
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Rationale.java62
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Stakeholder.java105
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/View.java132
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ViewPoint.java214
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ConformImpl.java225
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ElementGroupImpl.java449
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ExposeImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ModelelementsFactoryImpl.java178
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ModelelementsPackageImpl.java740
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ProblemImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/RationaleImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/StakeholderImpl.java251
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ViewImpl.java297
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ViewPointImpl.java453
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/util/ModelelementsAdapterFactory.java252
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/util/ModelelementsSwitch.java263
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/AcceptChangeStructuralFeatureEventAction.java58
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/ChangeStructuralFeatureEvent.java86
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/DirectedFeature.java88
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FeatureDirection.java247
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FlowDirection.java247
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FlowProperty.java92
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FullPort.java58
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/InterfaceBlock.java24
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/InvocationOnNestedPortAction.java104
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/ItemFlow.java89
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/PortandflowsFactory.java129
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/PortandflowsPackage.java1109
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/ProxyPort.java58
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/TriggerOnNestedPort.java104
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/AcceptChangeStructuralFeatureEventActionImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/ChangeStructuralFeatureEventImpl.java225
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/DirectedFeatureImpl.java233
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/FlowPropertyImpl.java233
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/FullPortImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/InterfaceBlockImpl.java47
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/InvocationOnNestedPortActionImpl.java233
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/ItemFlowImpl.java225
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/PortandflowsFactoryImpl.java275
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/PortandflowsPackageImpl.java662
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/ProxyPortImpl.java164
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/TriggerOnNestedPortImpl.java233
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/util/PortandflowsAdapterFactory.java327
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/util/PortandflowsSwitch.java341
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Copy.java27
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/DeriveReqt.java27
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Refine.java36
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Requirement.java337
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/RequirementsFactory.java111
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/RequirementsPackage.java1283
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Satisfy.java38
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/TestCase.java90
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Trace.java36
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Verify.java38
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/CopyImpl.java45
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/DeriveReqtImpl.java45
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RefineImpl.java230
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RequirementImpl.java574
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RequirementsFactoryImpl.java178
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RequirementsPackageImpl.java599
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/SatisfyImpl.java77
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/TestCaseImpl.java225
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/TraceImpl.java230
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/VerifyImpl.java77
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/util/RequirementsAdapterFactory.java308
-rw-r--r--plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/util/RequirementsSwitch.java326
162 files changed, 36150 insertions, 0 deletions
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/ActivitiesFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/ActivitiesFactory.java
new file mode 100644
index 00000000000..543582d8d43
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/ActivitiesFactory.java
@@ -0,0 +1,111 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage
+ * @generated
+ */
+public interface ActivitiesFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ActivitiesFactory eINSTANCE = org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Overwrite</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Overwrite</em>'.
+ * @generated
+ */
+ Overwrite createOverwrite();
+
+ /**
+ * Returns a new object of class '<em>Control Operator</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Control Operator</em>'.
+ * @generated
+ */
+ ControlOperator createControlOperator();
+
+ /**
+ * Returns a new object of class '<em>Rate</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Rate</em>'.
+ * @generated
+ */
+ Rate createRate();
+
+ /**
+ * Returns a new object of class '<em>No Buffer</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>No Buffer</em>'.
+ * @generated
+ */
+ NoBuffer createNoBuffer();
+
+ /**
+ * Returns a new object of class '<em>Discrete</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Discrete</em>'.
+ * @generated
+ */
+ Discrete createDiscrete();
+
+ /**
+ * Returns a new object of class '<em>Continuous</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Continuous</em>'.
+ * @generated
+ */
+ Continuous createContinuous();
+
+ /**
+ * Returns a new object of class '<em>Probability</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Probability</em>'.
+ * @generated
+ */
+ Probability createProbability();
+
+ /**
+ * Returns a new object of class '<em>Optional</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Optional</em>'.
+ * @generated
+ */
+ Optional createOptional();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ActivitiesPackage getActivitiesPackage();
+
+} //ActivitiesFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/ActivitiesPackage.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/ActivitiesPackage.java
new file mode 100644
index 00000000000..fd17f3d8b48
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/ActivitiesPackage.java
@@ -0,0 +1,883 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='Activities'"
+ * @generated
+ */
+public interface ActivitiesPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "activities"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/1.4/SysML/Activities"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "Activities"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ActivitiesPackage eINSTANCE = org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.OverwriteImpl <em>Overwrite</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.OverwriteImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getOverwrite()
+ * @generated
+ */
+ int OVERWRITE = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Object Node</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OVERWRITE__BASE_OBJECT_NODE = 0;
+
+ /**
+ * The number of structural features of the '<em>Overwrite</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OVERWRITE_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Overwrite</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OVERWRITE_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.ControlOperatorImpl <em>Control Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ControlOperatorImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getControlOperator()
+ * @generated
+ */
+ int CONTROL_OPERATOR = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Behavior</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTROL_OPERATOR__BASE_BEHAVIOR = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Operation</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTROL_OPERATOR__BASE_OPERATION = 1;
+
+ /**
+ * The number of structural features of the '<em>Control Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTROL_OPERATOR_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Control Operator</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTROL_OPERATOR_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.RateImpl <em>Rate</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.RateImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getRate()
+ * @generated
+ */
+ int RATE = 2;
+
+ /**
+ * The feature id for the '<em><b>Rate</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RATE__RATE = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Activity Edge</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RATE__BASE_ACTIVITY_EDGE = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Object Node</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RATE__BASE_OBJECT_NODE = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Parameter</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RATE__BASE_PARAMETER = 3;
+
+ /**
+ * The number of structural features of the '<em>Rate</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RATE_FEATURE_COUNT = 4;
+
+ /**
+ * The number of operations of the '<em>Rate</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RATE_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.NoBufferImpl <em>No Buffer</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.NoBufferImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getNoBuffer()
+ * @generated
+ */
+ int NO_BUFFER = 3;
+
+ /**
+ * The feature id for the '<em><b>Base Object Node</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NO_BUFFER__BASE_OBJECT_NODE = 0;
+
+ /**
+ * The number of structural features of the '<em>No Buffer</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NO_BUFFER_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>No Buffer</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NO_BUFFER_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.DiscreteImpl <em>Discrete</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.DiscreteImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getDiscrete()
+ * @generated
+ */
+ int DISCRETE = 4;
+
+ /**
+ * The feature id for the '<em><b>Rate</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISCRETE__RATE = RATE__RATE;
+
+ /**
+ * The feature id for the '<em><b>Base Activity Edge</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISCRETE__BASE_ACTIVITY_EDGE = RATE__BASE_ACTIVITY_EDGE;
+
+ /**
+ * The feature id for the '<em><b>Base Object Node</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISCRETE__BASE_OBJECT_NODE = RATE__BASE_OBJECT_NODE;
+
+ /**
+ * The feature id for the '<em><b>Base Parameter</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISCRETE__BASE_PARAMETER = RATE__BASE_PARAMETER;
+
+ /**
+ * The number of structural features of the '<em>Discrete</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISCRETE_FEATURE_COUNT = RATE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Discrete</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISCRETE_OPERATION_COUNT = RATE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.ContinuousImpl <em>Continuous</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ContinuousImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getContinuous()
+ * @generated
+ */
+ int CONTINUOUS = 5;
+
+ /**
+ * The feature id for the '<em><b>Rate</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTINUOUS__RATE = RATE__RATE;
+
+ /**
+ * The feature id for the '<em><b>Base Activity Edge</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTINUOUS__BASE_ACTIVITY_EDGE = RATE__BASE_ACTIVITY_EDGE;
+
+ /**
+ * The feature id for the '<em><b>Base Object Node</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTINUOUS__BASE_OBJECT_NODE = RATE__BASE_OBJECT_NODE;
+
+ /**
+ * The feature id for the '<em><b>Base Parameter</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTINUOUS__BASE_PARAMETER = RATE__BASE_PARAMETER;
+
+ /**
+ * The number of structural features of the '<em>Continuous</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTINUOUS_FEATURE_COUNT = RATE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Continuous</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTINUOUS_OPERATION_COUNT = RATE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.ProbabilityImpl <em>Probability</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ProbabilityImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getProbability()
+ * @generated
+ */
+ int PROBABILITY = 6;
+
+ /**
+ * The feature id for the '<em><b>Base Activity Edge</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROBABILITY__BASE_ACTIVITY_EDGE = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Parameter Set</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROBABILITY__BASE_PARAMETER_SET = 1;
+
+ /**
+ * The feature id for the '<em><b>Probability</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROBABILITY__PROBABILITY = 2;
+
+ /**
+ * The number of structural features of the '<em>Probability</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROBABILITY_FEATURE_COUNT = 3;
+
+ /**
+ * The number of operations of the '<em>Probability</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROBABILITY_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.OptionalImpl <em>Optional</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.OptionalImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getOptional()
+ * @generated
+ */
+ int OPTIONAL = 7;
+
+ /**
+ * The feature id for the '<em><b>Base Parameter</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPTIONAL__BASE_PARAMETER = 0;
+
+ /**
+ * The number of structural features of the '<em>Optional</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPTIONAL_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Optional</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OPTIONAL_OPERATION_COUNT = 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.activities.Overwrite <em>Overwrite</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Overwrite</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Overwrite
+ * @generated
+ */
+ EClass getOverwrite();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.activities.Overwrite#getBase_ObjectNode <em>Base Object Node</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Object Node</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Overwrite#getBase_ObjectNode()
+ * @see #getOverwrite()
+ * @generated
+ */
+ EReference getOverwrite_Base_ObjectNode();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.activities.ControlOperator <em>Control Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Control Operator</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.ControlOperator
+ * @generated
+ */
+ EClass getControlOperator();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.activities.ControlOperator#getBase_Behavior <em>Base Behavior</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Behavior</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.ControlOperator#getBase_Behavior()
+ * @see #getControlOperator()
+ * @generated
+ */
+ EReference getControlOperator_Base_Behavior();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.activities.ControlOperator#getBase_Operation <em>Base Operation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Operation</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.ControlOperator#getBase_Operation()
+ * @see #getControlOperator()
+ * @generated
+ */
+ EReference getControlOperator_Base_Operation();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.activities.Rate <em>Rate</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Rate</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Rate
+ * @generated
+ */
+ EClass getRate();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.activities.Rate#getRate <em>Rate</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Rate</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Rate#getRate()
+ * @see #getRate()
+ * @generated
+ */
+ EReference getRate_Rate();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.activities.Rate#getBase_ActivityEdge <em>Base Activity Edge</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Activity Edge</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Rate#getBase_ActivityEdge()
+ * @see #getRate()
+ * @generated
+ */
+ EReference getRate_Base_ActivityEdge();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.activities.Rate#getBase_ObjectNode <em>Base Object Node</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Object Node</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Rate#getBase_ObjectNode()
+ * @see #getRate()
+ * @generated
+ */
+ EReference getRate_Base_ObjectNode();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.activities.Rate#getBase_Parameter <em>Base Parameter</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Parameter</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Rate#getBase_Parameter()
+ * @see #getRate()
+ * @generated
+ */
+ EReference getRate_Base_Parameter();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.activities.NoBuffer <em>No Buffer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>No Buffer</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.NoBuffer
+ * @generated
+ */
+ EClass getNoBuffer();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.activities.NoBuffer#getBase_ObjectNode <em>Base Object Node</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Object Node</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.NoBuffer#getBase_ObjectNode()
+ * @see #getNoBuffer()
+ * @generated
+ */
+ EReference getNoBuffer_Base_ObjectNode();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.activities.Discrete <em>Discrete</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Discrete</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Discrete
+ * @generated
+ */
+ EClass getDiscrete();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.activities.Continuous <em>Continuous</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Continuous</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Continuous
+ * @generated
+ */
+ EClass getContinuous();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.activities.Probability <em>Probability</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Probability</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Probability
+ * @generated
+ */
+ EClass getProbability();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.activities.Probability#getBase_ActivityEdge <em>Base Activity Edge</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Activity Edge</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Probability#getBase_ActivityEdge()
+ * @see #getProbability()
+ * @generated
+ */
+ EReference getProbability_Base_ActivityEdge();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.activities.Probability#getBase_ParameterSet <em>Base Parameter Set</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Parameter Set</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Probability#getBase_ParameterSet()
+ * @see #getProbability()
+ * @generated
+ */
+ EReference getProbability_Base_ParameterSet();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.activities.Probability#getProbability <em>Probability</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Probability</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Probability#getProbability()
+ * @see #getProbability()
+ * @generated
+ */
+ EReference getProbability_Probability();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.activities.Optional <em>Optional</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Optional</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Optional
+ * @generated
+ */
+ EClass getOptional();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.activities.Optional#getBase_Parameter <em>Base Parameter</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Parameter</em>'.
+ * @see org.eclipse.papyrus.sysml14.activities.Optional#getBase_Parameter()
+ * @see #getOptional()
+ * @generated
+ */
+ EReference getOptional_Base_Parameter();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ActivitiesFactory getActivitiesFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.OverwriteImpl <em>Overwrite</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.OverwriteImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getOverwrite()
+ * @generated
+ */
+ EClass OVERWRITE = eINSTANCE.getOverwrite();
+
+ /**
+ * The meta object literal for the '<em><b>Base Object Node</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference OVERWRITE__BASE_OBJECT_NODE = eINSTANCE.getOverwrite_Base_ObjectNode();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.ControlOperatorImpl <em>Control Operator</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ControlOperatorImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getControlOperator()
+ * @generated
+ */
+ EClass CONTROL_OPERATOR = eINSTANCE.getControlOperator();
+
+ /**
+ * The meta object literal for the '<em><b>Base Behavior</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONTROL_OPERATOR__BASE_BEHAVIOR = eINSTANCE.getControlOperator_Base_Behavior();
+
+ /**
+ * The meta object literal for the '<em><b>Base Operation</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONTROL_OPERATOR__BASE_OPERATION = eINSTANCE.getControlOperator_Base_Operation();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.RateImpl <em>Rate</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.RateImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getRate()
+ * @generated
+ */
+ EClass RATE = eINSTANCE.getRate();
+
+ /**
+ * The meta object literal for the '<em><b>Rate</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference RATE__RATE = eINSTANCE.getRate_Rate();
+
+ /**
+ * The meta object literal for the '<em><b>Base Activity Edge</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference RATE__BASE_ACTIVITY_EDGE = eINSTANCE.getRate_Base_ActivityEdge();
+
+ /**
+ * The meta object literal for the '<em><b>Base Object Node</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference RATE__BASE_OBJECT_NODE = eINSTANCE.getRate_Base_ObjectNode();
+
+ /**
+ * The meta object literal for the '<em><b>Base Parameter</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference RATE__BASE_PARAMETER = eINSTANCE.getRate_Base_Parameter();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.NoBufferImpl <em>No Buffer</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.NoBufferImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getNoBuffer()
+ * @generated
+ */
+ EClass NO_BUFFER = eINSTANCE.getNoBuffer();
+
+ /**
+ * The meta object literal for the '<em><b>Base Object Node</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference NO_BUFFER__BASE_OBJECT_NODE = eINSTANCE.getNoBuffer_Base_ObjectNode();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.DiscreteImpl <em>Discrete</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.DiscreteImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getDiscrete()
+ * @generated
+ */
+ EClass DISCRETE = eINSTANCE.getDiscrete();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.ContinuousImpl <em>Continuous</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ContinuousImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getContinuous()
+ * @generated
+ */
+ EClass CONTINUOUS = eINSTANCE.getContinuous();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.ProbabilityImpl <em>Probability</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ProbabilityImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getProbability()
+ * @generated
+ */
+ EClass PROBABILITY = eINSTANCE.getProbability();
+
+ /**
+ * The meta object literal for the '<em><b>Base Activity Edge</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PROBABILITY__BASE_ACTIVITY_EDGE = eINSTANCE.getProbability_Base_ActivityEdge();
+
+ /**
+ * The meta object literal for the '<em><b>Base Parameter Set</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PROBABILITY__BASE_PARAMETER_SET = eINSTANCE.getProbability_Base_ParameterSet();
+
+ /**
+ * The meta object literal for the '<em><b>Probability</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PROBABILITY__PROBABILITY = eINSTANCE.getProbability_Probability();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.activities.internal.impl.OptionalImpl <em>Optional</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.OptionalImpl
+ * @see org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl#getOptional()
+ * @generated
+ */
+ EClass OPTIONAL = eINSTANCE.getOptional();
+
+ /**
+ * The meta object literal for the '<em><b>Base Parameter</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference OPTIONAL__BASE_PARAMETER = eINSTANCE.getOptional_Base_Parameter();
+
+ }
+
+} //ActivitiesPackage
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Continuous.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Continuous.java
new file mode 100644
index 00000000000..49f357a5c9c
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Continuous.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Continuous</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * Continuous rate is a special case of rate of flow (see Rate) where the increment of time between items approaches zero. It is intended to represent continuous flows that may correspond to water flowing through a pipe, a time continuous signal, or continuous energy flow. It is independent from UML streaming. A streaming parameter may or may not apply to continuous flow, and a continuous flow may or may not apply to streaming parameters.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getContinuous()
+ * @model
+ * @generated
+ */
+public interface Continuous extends Rate {
+} // Continuous
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/ControlOperator.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/ControlOperator.java
new file mode 100644
index 00000000000..82a94fd88d0
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/ControlOperator.java
@@ -0,0 +1,90 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.Operation;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Control Operator</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A control operator is a behavior that is intended to represent an arbitrarily complex logical operator that can be used to enable and disable other actions. When this stereotype is applied to behaviors, the behavior takes control values as inputs or provides them as outputs, that is, it treats control as data. When this stereotype is not applied, the behavior may not have a parameter typed by ControlValue. This stereotype also applies to operations with the same semantics.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.ControlOperator#getBase_Behavior <em>Base Behavior</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.ControlOperator#getBase_Operation <em>Base Operation</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getControlOperator()
+ * @model
+ * @generated
+ */
+public interface ControlOperator extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Behavior</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Behavior</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Behavior</em>' reference.
+ * @see #setBase_Behavior(Behavior)
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getControlOperator_Base_Behavior()
+ * @model ordered="false"
+ * @generated
+ */
+ Behavior getBase_Behavior();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.activities.ControlOperator#getBase_Behavior <em>Base Behavior</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Behavior</em>' reference.
+ * @see #getBase_Behavior()
+ * @generated
+ */
+ void setBase_Behavior(Behavior value);
+
+ /**
+ * Returns the value of the '<em><b>Base Operation</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Operation</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Operation</em>' reference.
+ * @see #setBase_Operation(Operation)
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getControlOperator_Base_Operation()
+ * @model ordered="false"
+ * @generated
+ */
+ Operation getBase_Operation();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.activities.ControlOperator#getBase_Operation <em>Base Operation</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Operation</em>' reference.
+ * @see #getBase_Operation()
+ * @generated
+ */
+ void setBase_Operation(Operation value);
+
+} // ControlOperator
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Discrete.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Discrete.java
new file mode 100644
index 00000000000..9f0720b54db
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Discrete.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Discrete</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * Discrete rate is a special case of rate of flow (see Rate) where the increment of time between items is non-zero.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getDiscrete()
+ * @model
+ * @generated
+ */
+public interface Discrete extends Rate {
+} // Discrete
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/NoBuffer.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/NoBuffer.java
new file mode 100644
index 00000000000..64c1f03105c
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/NoBuffer.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.ObjectNode;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>No Buffer</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * When this stereotype is applied to object nodes, tokens arriving at the node are discarded if they are refused by outgoing edges, or refused by actions for object nodes that are input pins. This is typically used with fast or continuously flowing data values, to prevent buffer overrun, or to model transient values, such as electrical signals. For object nodes that are the target of continuous flows, «nobuffer» and «overwrite» have the same effect. The stereotype does not override UML token offering semantics; it just indicates what happens to the token when it is accepted. When the stereotype is not applied, the semantics are as in UML, specifically, tokens arriving at an object node that are refused by outgoing edges, or action for input pins, are held until they can leave the object node.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.NoBuffer#getBase_ObjectNode <em>Base Object Node</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getNoBuffer()
+ * @model
+ * @generated
+ */
+public interface NoBuffer extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Object Node</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Object Node</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Object Node</em>' reference.
+ * @see #setBase_ObjectNode(ObjectNode)
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getNoBuffer_Base_ObjectNode()
+ * @model ordered="false"
+ * @generated
+ */
+ ObjectNode getBase_ObjectNode();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.activities.NoBuffer#getBase_ObjectNode <em>Base Object Node</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Object Node</em>' reference.
+ * @see #getBase_ObjectNode()
+ * @generated
+ */
+ void setBase_ObjectNode(ObjectNode value);
+
+} // NoBuffer
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Optional.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Optional.java
new file mode 100644
index 00000000000..3db80787e2c
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Optional.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Parameter;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Optional</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * When the «optional» stereotype is applied to parameters, the lower multiplicity must be equal to zero. This means the parameter is not required to have a value for the activity or any behavior to begin or end execution. Otherwise, the lower multiplicity must be greater than zero, which is called “required.”
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.Optional#getBase_Parameter <em>Base Parameter</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getOptional()
+ * @model
+ * @generated
+ */
+public interface Optional extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Parameter</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Parameter</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Parameter</em>' reference.
+ * @see #setBase_Parameter(Parameter)
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getOptional_Base_Parameter()
+ * @model ordered="false"
+ * @generated
+ */
+ Parameter getBase_Parameter();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.activities.Optional#getBase_Parameter <em>Base Parameter</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Parameter</em>' reference.
+ * @see #getBase_Parameter()
+ * @generated
+ */
+ void setBase_Parameter(Parameter value);
+
+} // Optional
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Overwrite.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Overwrite.java
new file mode 100644
index 00000000000..902cecc40b0
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Overwrite.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.ObjectNode;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Overwrite</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * When the «overwrite» stereotype is applied to object nodes, a token arriving at a full object node replaces the ones already there (a full object node has as many tokens as allowed by its upper bound). This is typically used on an input pin with an upper bound of 1 to ensure that stale data is overridden at an input pin. For upper bounds greater than one, the token replaced is the one that would be the last to be selected according to the ordering kind for the node. For FIFO ordering, this is the most recently added token, for LIFO it is the least recently added token. A null token removes all the tokens already there. The number of tokens replaced is equal to the weight of the incoming edge, which defaults to 1. For object nodes that are the target of continuous flows, «overwrite» and «nobuffer» have the same effect. The stereotype does not override UML token offering semantics, just indicates what happens to the token when it is accepted. When the stereotype is not applied, the semantics is as in UML, specifically, tokens arriving at object nodes do not replace ones that are already there.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.Overwrite#getBase_ObjectNode <em>Base Object Node</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getOverwrite()
+ * @model
+ * @generated
+ */
+public interface Overwrite extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Object Node</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Object Node</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Object Node</em>' reference.
+ * @see #setBase_ObjectNode(ObjectNode)
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getOverwrite_Base_ObjectNode()
+ * @model ordered="false"
+ * @generated
+ */
+ ObjectNode getBase_ObjectNode();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.activities.Overwrite#getBase_ObjectNode <em>Base Object Node</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Object Node</em>' reference.
+ * @see #getBase_ObjectNode()
+ * @generated
+ */
+ void setBase_ObjectNode(ObjectNode value);
+
+} // Overwrite
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Probability.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Probability.java
new file mode 100644
index 00000000000..f5393922180
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Probability.java
@@ -0,0 +1,119 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.ActivityEdge;
+import org.eclipse.uml2.uml.ParameterSet;
+import org.eclipse.uml2.uml.ValueSpecification;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Probability</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * When the «probability» stereotype is applied to edges coming out of decision nodes and object nodes, it provides an expression for the probability that the edge will be traversed. These must be between zero and one inclusive, and add up to one for edges with same source at the time the probabilities are used.
+ * When the «probability» stereotype is applied to output parameter sets, it gives the probability the parameter set will be given values at runtime. These must be between zero and one inclusive, and add up to one for output parameter sets of the same behavior at the time the probabilities are used.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.Probability#getBase_ActivityEdge <em>Base Activity Edge</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.Probability#getBase_ParameterSet <em>Base Parameter Set</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.Probability#getProbability <em>Probability</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getProbability()
+ * @model
+ * @generated
+ */
+public interface Probability extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Activity Edge</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Activity Edge</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Activity Edge</em>' reference.
+ * @see #setBase_ActivityEdge(ActivityEdge)
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getProbability_Base_ActivityEdge()
+ * @model ordered="false"
+ * @generated
+ */
+ ActivityEdge getBase_ActivityEdge();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.activities.Probability#getBase_ActivityEdge <em>Base Activity Edge</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Activity Edge</em>' reference.
+ * @see #getBase_ActivityEdge()
+ * @generated
+ */
+ void setBase_ActivityEdge(ActivityEdge value);
+
+ /**
+ * Returns the value of the '<em><b>Base Parameter Set</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Parameter Set</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Parameter Set</em>' reference.
+ * @see #setBase_ParameterSet(ParameterSet)
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getProbability_Base_ParameterSet()
+ * @model ordered="false"
+ * @generated
+ */
+ ParameterSet getBase_ParameterSet();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.activities.Probability#getBase_ParameterSet <em>Base Parameter Set</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Parameter Set</em>' reference.
+ * @see #getBase_ParameterSet()
+ * @generated
+ */
+ void setBase_ParameterSet(ParameterSet value);
+
+ /**
+ * Returns the value of the '<em><b>Probability</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Probability</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Probability</em>' reference.
+ * @see #setProbability(ValueSpecification)
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getProbability_Probability()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ ValueSpecification getProbability();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.activities.Probability#getProbability <em>Probability</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Probability</em>' reference.
+ * @see #getProbability()
+ * @generated
+ */
+ void setProbability(ValueSpecification value);
+
+} // Probability
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Rate.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Rate.java
new file mode 100644
index 00000000000..5c6f0dbedcc
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/Rate.java
@@ -0,0 +1,146 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.ActivityEdge;
+import org.eclipse.uml2.uml.InstanceSpecification;
+import org.eclipse.uml2.uml.ObjectNode;
+import org.eclipse.uml2.uml.Parameter;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Rate</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * When the «rate» stereotype is applied to an activity edge, it specifies the expected value of the number of objects and values that traverse the edge per time interval, that is, the expected value rate at which they leave the source node and arrive at the target node. It does not refer to the rate at which a value changes over time. When the stereotype is applied to a parameter, the parameter must be streaming, and the stereotype gives the number of objects or values that flow in or out of the parameter per time interval while the behavior or operation is executing. Streaming is a characteristic of UML behavior parameters that supports the input and output of items while a behavior is executing, rather than only when the behavior starts and stops. The flow may be continuous or discrete. The «rate» stereotype has a rate property of type InstanceSpecification. The values of this property must be instances of classifiers stereotyped by «valueType» or «distributionDefinition». In particular, the denominator for units used in the rate property must be time units.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.Rate#getRate <em>Rate</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.Rate#getBase_ActivityEdge <em>Base Activity Edge</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.Rate#getBase_ObjectNode <em>Base Object Node</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.Rate#getBase_Parameter <em>Base Parameter</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getRate()
+ * @model
+ * @generated
+ */
+public interface Rate extends EObject {
+ /**
+ * Returns the value of the '<em><b>Rate</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Rate</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Rate</em>' reference.
+ * @see #setRate(InstanceSpecification)
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getRate_Rate()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ InstanceSpecification getRate();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.activities.Rate#getRate <em>Rate</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Rate</em>' reference.
+ * @see #getRate()
+ * @generated
+ */
+ void setRate(InstanceSpecification value);
+
+ /**
+ * Returns the value of the '<em><b>Base Activity Edge</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Activity Edge</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Activity Edge</em>' reference.
+ * @see #setBase_ActivityEdge(ActivityEdge)
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getRate_Base_ActivityEdge()
+ * @model ordered="false"
+ * @generated
+ */
+ ActivityEdge getBase_ActivityEdge();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.activities.Rate#getBase_ActivityEdge <em>Base Activity Edge</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Activity Edge</em>' reference.
+ * @see #getBase_ActivityEdge()
+ * @generated
+ */
+ void setBase_ActivityEdge(ActivityEdge value);
+
+ /**
+ * Returns the value of the '<em><b>Base Object Node</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Object Node</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Object Node</em>' reference.
+ * @see #setBase_ObjectNode(ObjectNode)
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getRate_Base_ObjectNode()
+ * @model ordered="false"
+ * @generated
+ */
+ ObjectNode getBase_ObjectNode();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.activities.Rate#getBase_ObjectNode <em>Base Object Node</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Object Node</em>' reference.
+ * @see #getBase_ObjectNode()
+ * @generated
+ */
+ void setBase_ObjectNode(ObjectNode value);
+
+ /**
+ * Returns the value of the '<em><b>Base Parameter</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Parameter</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Parameter</em>' reference.
+ * @see #setBase_Parameter(Parameter)
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#getRate_Base_Parameter()
+ * @model ordered="false"
+ * @generated
+ */
+ Parameter getBase_Parameter();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.activities.Rate#getBase_Parameter <em>Base Parameter</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Parameter</em>' reference.
+ * @see #getBase_Parameter()
+ * @generated
+ */
+ void setBase_Parameter(Parameter value);
+
+} // Rate
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ActivitiesFactoryImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ActivitiesFactoryImpl.java
new file mode 100644
index 00000000000..198c5ae7340
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ActivitiesFactoryImpl.java
@@ -0,0 +1,178 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.sysml14.activities.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ActivitiesFactoryImpl extends EFactoryImpl implements ActivitiesFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static ActivitiesFactory init() {
+ try {
+ ActivitiesFactory theActivitiesFactory = (ActivitiesFactory)EPackage.Registry.INSTANCE.getEFactory(ActivitiesPackage.eNS_URI);
+ if (theActivitiesFactory != null) {
+ return theActivitiesFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ActivitiesFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ActivitiesFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ActivitiesPackage.OVERWRITE: return createOverwrite();
+ case ActivitiesPackage.CONTROL_OPERATOR: return createControlOperator();
+ case ActivitiesPackage.RATE: return createRate();
+ case ActivitiesPackage.NO_BUFFER: return createNoBuffer();
+ case ActivitiesPackage.DISCRETE: return createDiscrete();
+ case ActivitiesPackage.CONTINUOUS: return createContinuous();
+ case ActivitiesPackage.PROBABILITY: return createProbability();
+ case ActivitiesPackage.OPTIONAL: return createOptional();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Overwrite createOverwrite() {
+ OverwriteImpl overwrite = new OverwriteImpl();
+ return overwrite;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ControlOperator createControlOperator() {
+ ControlOperatorImpl controlOperator = new ControlOperatorImpl();
+ return controlOperator;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Rate createRate() {
+ RateImpl rate = new RateImpl();
+ return rate;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NoBuffer createNoBuffer() {
+ NoBufferImpl noBuffer = new NoBufferImpl();
+ return noBuffer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Discrete createDiscrete() {
+ DiscreteImpl discrete = new DiscreteImpl();
+ return discrete;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Continuous createContinuous() {
+ ContinuousImpl continuous = new ContinuousImpl();
+ return continuous;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Probability createProbability() {
+ ProbabilityImpl probability = new ProbabilityImpl();
+ return probability;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Optional createOptional() {
+ OptionalImpl optional = new OptionalImpl();
+ return optional;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ActivitiesPackage getActivitiesPackage() {
+ return (ActivitiesPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ActivitiesPackage getPackage() {
+ return ActivitiesPackage.eINSTANCE;
+ }
+
+} //ActivitiesFactoryImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ActivitiesPackageImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ActivitiesPackageImpl.java
new file mode 100644
index 00000000000..238b59322e1
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ActivitiesPackageImpl.java
@@ -0,0 +1,534 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesFactory;
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+import org.eclipse.papyrus.sysml14.activities.Continuous;
+import org.eclipse.papyrus.sysml14.activities.ControlOperator;
+import org.eclipse.papyrus.sysml14.activities.Discrete;
+import org.eclipse.papyrus.sysml14.activities.NoBuffer;
+import org.eclipse.papyrus.sysml14.activities.Optional;
+import org.eclipse.papyrus.sysml14.activities.Overwrite;
+import org.eclipse.papyrus.sysml14.activities.Probability;
+import org.eclipse.papyrus.sysml14.activities.Rate;
+
+import org.eclipse.papyrus.sysml14.allocations.AllocationsPackage;
+
+import org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintblocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+
+import org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+
+import org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ActivitiesPackageImpl extends EPackageImpl implements ActivitiesPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass overwriteEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass controlOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass rateEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass noBufferEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass discreteEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass continuousEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass probabilityEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass optionalEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ActivitiesPackageImpl() {
+ super(eNS_URI, ActivitiesFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link ActivitiesPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static ActivitiesPackage init() {
+ if (isInited) return (ActivitiesPackage)EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI);
+
+ // Obtain or create and register package
+ ActivitiesPackageImpl theActivitiesPackage = (ActivitiesPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ActivitiesPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ActivitiesPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ StandardPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ BlocksPackageImpl theBlocksPackage = (BlocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) instanceof BlocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) : BlocksPackage.eINSTANCE);
+ PortandflowsPackageImpl thePortandflowsPackage = (PortandflowsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) instanceof PortandflowsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) : PortandflowsPackage.eINSTANCE);
+ ModelelementsPackageImpl theModelelementsPackage = (ModelelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) instanceof ModelelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) : ModelelementsPackage.eINSTANCE);
+ ConstraintblocksPackageImpl theConstraintblocksPackage = (ConstraintblocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) instanceof ConstraintblocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) : ConstraintblocksPackage.eINSTANCE);
+ AllocationsPackageImpl theAllocationsPackage = (AllocationsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) instanceof AllocationsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) : AllocationsPackage.eINSTANCE);
+ RequirementsPackageImpl theRequirementsPackage = (RequirementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) instanceof RequirementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) : RequirementsPackage.eINSTANCE);
+ DeprecatedelementsPackageImpl theDeprecatedelementsPackage = (DeprecatedelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) instanceof DeprecatedelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) : DeprecatedelementsPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theActivitiesPackage.createPackageContents();
+ theBlocksPackage.createPackageContents();
+ thePortandflowsPackage.createPackageContents();
+ theModelelementsPackage.createPackageContents();
+ theConstraintblocksPackage.createPackageContents();
+ theAllocationsPackage.createPackageContents();
+ theRequirementsPackage.createPackageContents();
+ theDeprecatedelementsPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theActivitiesPackage.initializePackageContents();
+ theBlocksPackage.initializePackageContents();
+ thePortandflowsPackage.initializePackageContents();
+ theModelelementsPackage.initializePackageContents();
+ theConstraintblocksPackage.initializePackageContents();
+ theAllocationsPackage.initializePackageContents();
+ theRequirementsPackage.initializePackageContents();
+ theDeprecatedelementsPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theActivitiesPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ActivitiesPackage.eNS_URI, theActivitiesPackage);
+ return theActivitiesPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getOverwrite() {
+ return overwriteEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getOverwrite_Base_ObjectNode() {
+ return (EReference)overwriteEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getControlOperator() {
+ return controlOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getControlOperator_Base_Behavior() {
+ return (EReference)controlOperatorEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getControlOperator_Base_Operation() {
+ return (EReference)controlOperatorEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getRate() {
+ return rateEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRate_Rate() {
+ return (EReference)rateEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRate_Base_ActivityEdge() {
+ return (EReference)rateEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRate_Base_ObjectNode() {
+ return (EReference)rateEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRate_Base_Parameter() {
+ return (EReference)rateEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getNoBuffer() {
+ return noBufferEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getNoBuffer_Base_ObjectNode() {
+ return (EReference)noBufferEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDiscrete() {
+ return discreteEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getContinuous() {
+ return continuousEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getProbability() {
+ return probabilityEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getProbability_Base_ActivityEdge() {
+ return (EReference)probabilityEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getProbability_Base_ParameterSet() {
+ return (EReference)probabilityEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getProbability_Probability() {
+ return (EReference)probabilityEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getOptional() {
+ return optionalEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getOptional_Base_Parameter() {
+ return (EReference)optionalEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ActivitiesFactory getActivitiesFactory() {
+ return (ActivitiesFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ overwriteEClass = createEClass(OVERWRITE);
+ createEReference(overwriteEClass, OVERWRITE__BASE_OBJECT_NODE);
+
+ controlOperatorEClass = createEClass(CONTROL_OPERATOR);
+ createEReference(controlOperatorEClass, CONTROL_OPERATOR__BASE_BEHAVIOR);
+ createEReference(controlOperatorEClass, CONTROL_OPERATOR__BASE_OPERATION);
+
+ rateEClass = createEClass(RATE);
+ createEReference(rateEClass, RATE__RATE);
+ createEReference(rateEClass, RATE__BASE_ACTIVITY_EDGE);
+ createEReference(rateEClass, RATE__BASE_OBJECT_NODE);
+ createEReference(rateEClass, RATE__BASE_PARAMETER);
+
+ noBufferEClass = createEClass(NO_BUFFER);
+ createEReference(noBufferEClass, NO_BUFFER__BASE_OBJECT_NODE);
+
+ discreteEClass = createEClass(DISCRETE);
+
+ continuousEClass = createEClass(CONTINUOUS);
+
+ probabilityEClass = createEClass(PROBABILITY);
+ createEReference(probabilityEClass, PROBABILITY__BASE_ACTIVITY_EDGE);
+ createEReference(probabilityEClass, PROBABILITY__BASE_PARAMETER_SET);
+ createEReference(probabilityEClass, PROBABILITY__PROBABILITY);
+
+ optionalEClass = createEClass(OPTIONAL);
+ createEReference(optionalEClass, OPTIONAL__BASE_PARAMETER);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ UMLPackage theUMLPackage = (UMLPackage)EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ discreteEClass.getESuperTypes().add(this.getRate());
+ continuousEClass.getESuperTypes().add(this.getRate());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(overwriteEClass, Overwrite.class, "Overwrite", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getOverwrite_Base_ObjectNode(), theUMLPackage.getObjectNode(), null, "base_ObjectNode", null, 0, 1, Overwrite.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(controlOperatorEClass, ControlOperator.class, "ControlOperator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getControlOperator_Base_Behavior(), theUMLPackage.getBehavior(), null, "base_Behavior", null, 0, 1, ControlOperator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getControlOperator_Base_Operation(), theUMLPackage.getOperation(), null, "base_Operation", null, 0, 1, ControlOperator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(rateEClass, Rate.class, "Rate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getRate_Rate(), theUMLPackage.getInstanceSpecification(), null, "rate", null, 1, 1, Rate.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRate_Base_ActivityEdge(), theUMLPackage.getActivityEdge(), null, "base_ActivityEdge", null, 0, 1, Rate.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRate_Base_ObjectNode(), theUMLPackage.getObjectNode(), null, "base_ObjectNode", null, 0, 1, Rate.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRate_Base_Parameter(), theUMLPackage.getParameter(), null, "base_Parameter", null, 0, 1, Rate.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(noBufferEClass, NoBuffer.class, "NoBuffer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getNoBuffer_Base_ObjectNode(), theUMLPackage.getObjectNode(), null, "base_ObjectNode", null, 0, 1, NoBuffer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(discreteEClass, Discrete.class, "Discrete", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(continuousEClass, Continuous.class, "Continuous", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(probabilityEClass, Probability.class, "Probability", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getProbability_Base_ActivityEdge(), theUMLPackage.getActivityEdge(), null, "base_ActivityEdge", null, 0, 1, Probability.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getProbability_Base_ParameterSet(), theUMLPackage.getParameterSet(), null, "base_ParameterSet", null, 0, 1, Probability.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getProbability_Probability(), theUMLPackage.getValueSpecification(), null, "probability", null, 1, 1, Probability.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(optionalEClass, Optional.class, "Optional", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getOptional_Base_Parameter(), theUMLPackage.getParameter(), null, "base_Parameter", null, 0, 1, Optional.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/uml2/2.0.0/UML
+ createUMLAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/uml2/2.0.0/UML</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createUMLAnnotations() {
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML"; //$NON-NLS-1$
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "originalName", "Activities" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+} //ActivitiesPackageImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ContinuousImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ContinuousImpl.java
new file mode 100644
index 00000000000..71cb91770fc
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ContinuousImpl.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+import org.eclipse.papyrus.sysml14.activities.Continuous;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Continuous</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class ContinuousImpl extends RateImpl implements Continuous {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ContinuousImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ActivitiesPackage.Literals.CONTINUOUS;
+ }
+
+} //ContinuousImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ControlOperatorImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ControlOperatorImpl.java
new file mode 100644
index 00000000000..68ddc31b328
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ControlOperatorImpl.java
@@ -0,0 +1,225 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+import org.eclipse.papyrus.sysml14.activities.ControlOperator;
+
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.Operation;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Control Operator</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.internal.impl.ControlOperatorImpl#getBase_Behavior <em>Base Behavior</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.internal.impl.ControlOperatorImpl#getBase_Operation <em>Base Operation</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ControlOperatorImpl extends MinimalEObjectImpl.Container implements ControlOperator {
+ /**
+ * The cached value of the '{@link #getBase_Behavior() <em>Base Behavior</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Behavior()
+ * @generated
+ * @ordered
+ */
+ protected Behavior base_Behavior;
+
+ /**
+ * The cached value of the '{@link #getBase_Operation() <em>Base Operation</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Operation()
+ * @generated
+ * @ordered
+ */
+ protected Operation base_Operation;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ControlOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ActivitiesPackage.Literals.CONTROL_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Behavior getBase_Behavior() {
+ if (base_Behavior != null && base_Behavior.eIsProxy()) {
+ InternalEObject oldBase_Behavior = (InternalEObject)base_Behavior;
+ base_Behavior = (Behavior)eResolveProxy(oldBase_Behavior);
+ if (base_Behavior != oldBase_Behavior) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ActivitiesPackage.CONTROL_OPERATOR__BASE_BEHAVIOR, oldBase_Behavior, base_Behavior));
+ }
+ }
+ return base_Behavior;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Behavior basicGetBase_Behavior() {
+ return base_Behavior;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Behavior(Behavior newBase_Behavior) {
+ Behavior oldBase_Behavior = base_Behavior;
+ base_Behavior = newBase_Behavior;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ActivitiesPackage.CONTROL_OPERATOR__BASE_BEHAVIOR, oldBase_Behavior, base_Behavior));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Operation getBase_Operation() {
+ if (base_Operation != null && base_Operation.eIsProxy()) {
+ InternalEObject oldBase_Operation = (InternalEObject)base_Operation;
+ base_Operation = (Operation)eResolveProxy(oldBase_Operation);
+ if (base_Operation != oldBase_Operation) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ActivitiesPackage.CONTROL_OPERATOR__BASE_OPERATION, oldBase_Operation, base_Operation));
+ }
+ }
+ return base_Operation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Operation basicGetBase_Operation() {
+ return base_Operation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Operation(Operation newBase_Operation) {
+ Operation oldBase_Operation = base_Operation;
+ base_Operation = newBase_Operation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ActivitiesPackage.CONTROL_OPERATOR__BASE_OPERATION, oldBase_Operation, base_Operation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ActivitiesPackage.CONTROL_OPERATOR__BASE_BEHAVIOR:
+ if (resolve) return getBase_Behavior();
+ return basicGetBase_Behavior();
+ case ActivitiesPackage.CONTROL_OPERATOR__BASE_OPERATION:
+ if (resolve) return getBase_Operation();
+ return basicGetBase_Operation();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ActivitiesPackage.CONTROL_OPERATOR__BASE_BEHAVIOR:
+ setBase_Behavior((Behavior)newValue);
+ return;
+ case ActivitiesPackage.CONTROL_OPERATOR__BASE_OPERATION:
+ setBase_Operation((Operation)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ActivitiesPackage.CONTROL_OPERATOR__BASE_BEHAVIOR:
+ setBase_Behavior((Behavior)null);
+ return;
+ case ActivitiesPackage.CONTROL_OPERATOR__BASE_OPERATION:
+ setBase_Operation((Operation)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ActivitiesPackage.CONTROL_OPERATOR__BASE_BEHAVIOR:
+ return base_Behavior != null;
+ case ActivitiesPackage.CONTROL_OPERATOR__BASE_OPERATION:
+ return base_Operation != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ControlOperatorImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/DiscreteImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/DiscreteImpl.java
new file mode 100644
index 00000000000..38e2afa2252
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/DiscreteImpl.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+import org.eclipse.papyrus.sysml14.activities.Discrete;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Discrete</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class DiscreteImpl extends RateImpl implements Discrete {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DiscreteImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ActivitiesPackage.Literals.DISCRETE;
+ }
+
+} //DiscreteImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/NoBufferImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/NoBufferImpl.java
new file mode 100644
index 00000000000..7ed45fe68a7
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/NoBufferImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+import org.eclipse.papyrus.sysml14.activities.NoBuffer;
+
+import org.eclipse.uml2.uml.ObjectNode;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>No Buffer</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.internal.impl.NoBufferImpl#getBase_ObjectNode <em>Base Object Node</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class NoBufferImpl extends MinimalEObjectImpl.Container implements NoBuffer {
+ /**
+ * The cached value of the '{@link #getBase_ObjectNode() <em>Base Object Node</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_ObjectNode()
+ * @generated
+ * @ordered
+ */
+ protected ObjectNode base_ObjectNode;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NoBufferImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ActivitiesPackage.Literals.NO_BUFFER;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ObjectNode getBase_ObjectNode() {
+ if (base_ObjectNode != null && base_ObjectNode.eIsProxy()) {
+ InternalEObject oldBase_ObjectNode = (InternalEObject)base_ObjectNode;
+ base_ObjectNode = (ObjectNode)eResolveProxy(oldBase_ObjectNode);
+ if (base_ObjectNode != oldBase_ObjectNode) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ActivitiesPackage.NO_BUFFER__BASE_OBJECT_NODE, oldBase_ObjectNode, base_ObjectNode));
+ }
+ }
+ return base_ObjectNode;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ObjectNode basicGetBase_ObjectNode() {
+ return base_ObjectNode;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_ObjectNode(ObjectNode newBase_ObjectNode) {
+ ObjectNode oldBase_ObjectNode = base_ObjectNode;
+ base_ObjectNode = newBase_ObjectNode;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ActivitiesPackage.NO_BUFFER__BASE_OBJECT_NODE, oldBase_ObjectNode, base_ObjectNode));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ActivitiesPackage.NO_BUFFER__BASE_OBJECT_NODE:
+ if (resolve) return getBase_ObjectNode();
+ return basicGetBase_ObjectNode();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ActivitiesPackage.NO_BUFFER__BASE_OBJECT_NODE:
+ setBase_ObjectNode((ObjectNode)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ActivitiesPackage.NO_BUFFER__BASE_OBJECT_NODE:
+ setBase_ObjectNode((ObjectNode)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ActivitiesPackage.NO_BUFFER__BASE_OBJECT_NODE:
+ return base_ObjectNode != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //NoBufferImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/OptionalImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/OptionalImpl.java
new file mode 100644
index 00000000000..a29e70e8c59
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/OptionalImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+import org.eclipse.papyrus.sysml14.activities.Optional;
+
+import org.eclipse.uml2.uml.Parameter;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Optional</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.internal.impl.OptionalImpl#getBase_Parameter <em>Base Parameter</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class OptionalImpl extends MinimalEObjectImpl.Container implements Optional {
+ /**
+ * The cached value of the '{@link #getBase_Parameter() <em>Base Parameter</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Parameter()
+ * @generated
+ * @ordered
+ */
+ protected Parameter base_Parameter;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected OptionalImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ActivitiesPackage.Literals.OPTIONAL;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Parameter getBase_Parameter() {
+ if (base_Parameter != null && base_Parameter.eIsProxy()) {
+ InternalEObject oldBase_Parameter = (InternalEObject)base_Parameter;
+ base_Parameter = (Parameter)eResolveProxy(oldBase_Parameter);
+ if (base_Parameter != oldBase_Parameter) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ActivitiesPackage.OPTIONAL__BASE_PARAMETER, oldBase_Parameter, base_Parameter));
+ }
+ }
+ return base_Parameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Parameter basicGetBase_Parameter() {
+ return base_Parameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Parameter(Parameter newBase_Parameter) {
+ Parameter oldBase_Parameter = base_Parameter;
+ base_Parameter = newBase_Parameter;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ActivitiesPackage.OPTIONAL__BASE_PARAMETER, oldBase_Parameter, base_Parameter));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ActivitiesPackage.OPTIONAL__BASE_PARAMETER:
+ if (resolve) return getBase_Parameter();
+ return basicGetBase_Parameter();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ActivitiesPackage.OPTIONAL__BASE_PARAMETER:
+ setBase_Parameter((Parameter)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ActivitiesPackage.OPTIONAL__BASE_PARAMETER:
+ setBase_Parameter((Parameter)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ActivitiesPackage.OPTIONAL__BASE_PARAMETER:
+ return base_Parameter != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //OptionalImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/OverwriteImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/OverwriteImpl.java
new file mode 100644
index 00000000000..6cfd23ce973
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/OverwriteImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+import org.eclipse.papyrus.sysml14.activities.Overwrite;
+
+import org.eclipse.uml2.uml.ObjectNode;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Overwrite</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.internal.impl.OverwriteImpl#getBase_ObjectNode <em>Base Object Node</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class OverwriteImpl extends MinimalEObjectImpl.Container implements Overwrite {
+ /**
+ * The cached value of the '{@link #getBase_ObjectNode() <em>Base Object Node</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_ObjectNode()
+ * @generated
+ * @ordered
+ */
+ protected ObjectNode base_ObjectNode;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected OverwriteImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ActivitiesPackage.Literals.OVERWRITE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ObjectNode getBase_ObjectNode() {
+ if (base_ObjectNode != null && base_ObjectNode.eIsProxy()) {
+ InternalEObject oldBase_ObjectNode = (InternalEObject)base_ObjectNode;
+ base_ObjectNode = (ObjectNode)eResolveProxy(oldBase_ObjectNode);
+ if (base_ObjectNode != oldBase_ObjectNode) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ActivitiesPackage.OVERWRITE__BASE_OBJECT_NODE, oldBase_ObjectNode, base_ObjectNode));
+ }
+ }
+ return base_ObjectNode;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ObjectNode basicGetBase_ObjectNode() {
+ return base_ObjectNode;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_ObjectNode(ObjectNode newBase_ObjectNode) {
+ ObjectNode oldBase_ObjectNode = base_ObjectNode;
+ base_ObjectNode = newBase_ObjectNode;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ActivitiesPackage.OVERWRITE__BASE_OBJECT_NODE, oldBase_ObjectNode, base_ObjectNode));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ActivitiesPackage.OVERWRITE__BASE_OBJECT_NODE:
+ if (resolve) return getBase_ObjectNode();
+ return basicGetBase_ObjectNode();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ActivitiesPackage.OVERWRITE__BASE_OBJECT_NODE:
+ setBase_ObjectNode((ObjectNode)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ActivitiesPackage.OVERWRITE__BASE_OBJECT_NODE:
+ setBase_ObjectNode((ObjectNode)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ActivitiesPackage.OVERWRITE__BASE_OBJECT_NODE:
+ return base_ObjectNode != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //OverwriteImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ProbabilityImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ProbabilityImpl.java
new file mode 100644
index 00000000000..1f969ba5840
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/ProbabilityImpl.java
@@ -0,0 +1,286 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+import org.eclipse.papyrus.sysml14.activities.Probability;
+
+import org.eclipse.uml2.uml.ActivityEdge;
+import org.eclipse.uml2.uml.ParameterSet;
+import org.eclipse.uml2.uml.ValueSpecification;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Probability</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.internal.impl.ProbabilityImpl#getBase_ActivityEdge <em>Base Activity Edge</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.internal.impl.ProbabilityImpl#getBase_ParameterSet <em>Base Parameter Set</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.internal.impl.ProbabilityImpl#getProbability <em>Probability</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ProbabilityImpl extends MinimalEObjectImpl.Container implements Probability {
+ /**
+ * The cached value of the '{@link #getBase_ActivityEdge() <em>Base Activity Edge</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_ActivityEdge()
+ * @generated
+ * @ordered
+ */
+ protected ActivityEdge base_ActivityEdge;
+
+ /**
+ * The cached value of the '{@link #getBase_ParameterSet() <em>Base Parameter Set</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_ParameterSet()
+ * @generated
+ * @ordered
+ */
+ protected ParameterSet base_ParameterSet;
+
+ /**
+ * The cached value of the '{@link #getProbability() <em>Probability</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getProbability()
+ * @generated
+ * @ordered
+ */
+ protected ValueSpecification probability;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ProbabilityImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ActivitiesPackage.Literals.PROBABILITY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ActivityEdge getBase_ActivityEdge() {
+ if (base_ActivityEdge != null && base_ActivityEdge.eIsProxy()) {
+ InternalEObject oldBase_ActivityEdge = (InternalEObject)base_ActivityEdge;
+ base_ActivityEdge = (ActivityEdge)eResolveProxy(oldBase_ActivityEdge);
+ if (base_ActivityEdge != oldBase_ActivityEdge) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ActivitiesPackage.PROBABILITY__BASE_ACTIVITY_EDGE, oldBase_ActivityEdge, base_ActivityEdge));
+ }
+ }
+ return base_ActivityEdge;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ActivityEdge basicGetBase_ActivityEdge() {
+ return base_ActivityEdge;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_ActivityEdge(ActivityEdge newBase_ActivityEdge) {
+ ActivityEdge oldBase_ActivityEdge = base_ActivityEdge;
+ base_ActivityEdge = newBase_ActivityEdge;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ActivitiesPackage.PROBABILITY__BASE_ACTIVITY_EDGE, oldBase_ActivityEdge, base_ActivityEdge));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ParameterSet getBase_ParameterSet() {
+ if (base_ParameterSet != null && base_ParameterSet.eIsProxy()) {
+ InternalEObject oldBase_ParameterSet = (InternalEObject)base_ParameterSet;
+ base_ParameterSet = (ParameterSet)eResolveProxy(oldBase_ParameterSet);
+ if (base_ParameterSet != oldBase_ParameterSet) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ActivitiesPackage.PROBABILITY__BASE_PARAMETER_SET, oldBase_ParameterSet, base_ParameterSet));
+ }
+ }
+ return base_ParameterSet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ParameterSet basicGetBase_ParameterSet() {
+ return base_ParameterSet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_ParameterSet(ParameterSet newBase_ParameterSet) {
+ ParameterSet oldBase_ParameterSet = base_ParameterSet;
+ base_ParameterSet = newBase_ParameterSet;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ActivitiesPackage.PROBABILITY__BASE_PARAMETER_SET, oldBase_ParameterSet, base_ParameterSet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ValueSpecification getProbability() {
+ if (probability != null && probability.eIsProxy()) {
+ InternalEObject oldProbability = (InternalEObject)probability;
+ probability = (ValueSpecification)eResolveProxy(oldProbability);
+ if (probability != oldProbability) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ActivitiesPackage.PROBABILITY__PROBABILITY, oldProbability, probability));
+ }
+ }
+ return probability;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ValueSpecification basicGetProbability() {
+ return probability;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setProbability(ValueSpecification newProbability) {
+ ValueSpecification oldProbability = probability;
+ probability = newProbability;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ActivitiesPackage.PROBABILITY__PROBABILITY, oldProbability, probability));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ActivitiesPackage.PROBABILITY__BASE_ACTIVITY_EDGE:
+ if (resolve) return getBase_ActivityEdge();
+ return basicGetBase_ActivityEdge();
+ case ActivitiesPackage.PROBABILITY__BASE_PARAMETER_SET:
+ if (resolve) return getBase_ParameterSet();
+ return basicGetBase_ParameterSet();
+ case ActivitiesPackage.PROBABILITY__PROBABILITY:
+ if (resolve) return getProbability();
+ return basicGetProbability();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ActivitiesPackage.PROBABILITY__BASE_ACTIVITY_EDGE:
+ setBase_ActivityEdge((ActivityEdge)newValue);
+ return;
+ case ActivitiesPackage.PROBABILITY__BASE_PARAMETER_SET:
+ setBase_ParameterSet((ParameterSet)newValue);
+ return;
+ case ActivitiesPackage.PROBABILITY__PROBABILITY:
+ setProbability((ValueSpecification)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ActivitiesPackage.PROBABILITY__BASE_ACTIVITY_EDGE:
+ setBase_ActivityEdge((ActivityEdge)null);
+ return;
+ case ActivitiesPackage.PROBABILITY__BASE_PARAMETER_SET:
+ setBase_ParameterSet((ParameterSet)null);
+ return;
+ case ActivitiesPackage.PROBABILITY__PROBABILITY:
+ setProbability((ValueSpecification)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ActivitiesPackage.PROBABILITY__BASE_ACTIVITY_EDGE:
+ return base_ActivityEdge != null;
+ case ActivitiesPackage.PROBABILITY__BASE_PARAMETER_SET:
+ return base_ParameterSet != null;
+ case ActivitiesPackage.PROBABILITY__PROBABILITY:
+ return probability != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ProbabilityImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/RateImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/RateImpl.java
new file mode 100644
index 00000000000..c0c7f57e967
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/internal/impl/RateImpl.java
@@ -0,0 +1,347 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+import org.eclipse.papyrus.sysml14.activities.Rate;
+
+import org.eclipse.uml2.uml.ActivityEdge;
+import org.eclipse.uml2.uml.InstanceSpecification;
+import org.eclipse.uml2.uml.ObjectNode;
+import org.eclipse.uml2.uml.Parameter;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Rate</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.internal.impl.RateImpl#getRate <em>Rate</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.internal.impl.RateImpl#getBase_ActivityEdge <em>Base Activity Edge</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.internal.impl.RateImpl#getBase_ObjectNode <em>Base Object Node</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.activities.internal.impl.RateImpl#getBase_Parameter <em>Base Parameter</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class RateImpl extends MinimalEObjectImpl.Container implements Rate {
+ /**
+ * The cached value of the '{@link #getRate() <em>Rate</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRate()
+ * @generated
+ * @ordered
+ */
+ protected InstanceSpecification rate;
+
+ /**
+ * The cached value of the '{@link #getBase_ActivityEdge() <em>Base Activity Edge</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_ActivityEdge()
+ * @generated
+ * @ordered
+ */
+ protected ActivityEdge base_ActivityEdge;
+
+ /**
+ * The cached value of the '{@link #getBase_ObjectNode() <em>Base Object Node</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_ObjectNode()
+ * @generated
+ * @ordered
+ */
+ protected ObjectNode base_ObjectNode;
+
+ /**
+ * The cached value of the '{@link #getBase_Parameter() <em>Base Parameter</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Parameter()
+ * @generated
+ * @ordered
+ */
+ protected Parameter base_Parameter;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected RateImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ActivitiesPackage.Literals.RATE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InstanceSpecification getRate() {
+ if (rate != null && rate.eIsProxy()) {
+ InternalEObject oldRate = (InternalEObject)rate;
+ rate = (InstanceSpecification)eResolveProxy(oldRate);
+ if (rate != oldRate) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ActivitiesPackage.RATE__RATE, oldRate, rate));
+ }
+ }
+ return rate;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InstanceSpecification basicGetRate() {
+ return rate;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRate(InstanceSpecification newRate) {
+ InstanceSpecification oldRate = rate;
+ rate = newRate;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ActivitiesPackage.RATE__RATE, oldRate, rate));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ActivityEdge getBase_ActivityEdge() {
+ if (base_ActivityEdge != null && base_ActivityEdge.eIsProxy()) {
+ InternalEObject oldBase_ActivityEdge = (InternalEObject)base_ActivityEdge;
+ base_ActivityEdge = (ActivityEdge)eResolveProxy(oldBase_ActivityEdge);
+ if (base_ActivityEdge != oldBase_ActivityEdge) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ActivitiesPackage.RATE__BASE_ACTIVITY_EDGE, oldBase_ActivityEdge, base_ActivityEdge));
+ }
+ }
+ return base_ActivityEdge;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ActivityEdge basicGetBase_ActivityEdge() {
+ return base_ActivityEdge;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_ActivityEdge(ActivityEdge newBase_ActivityEdge) {
+ ActivityEdge oldBase_ActivityEdge = base_ActivityEdge;
+ base_ActivityEdge = newBase_ActivityEdge;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ActivitiesPackage.RATE__BASE_ACTIVITY_EDGE, oldBase_ActivityEdge, base_ActivityEdge));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ObjectNode getBase_ObjectNode() {
+ if (base_ObjectNode != null && base_ObjectNode.eIsProxy()) {
+ InternalEObject oldBase_ObjectNode = (InternalEObject)base_ObjectNode;
+ base_ObjectNode = (ObjectNode)eResolveProxy(oldBase_ObjectNode);
+ if (base_ObjectNode != oldBase_ObjectNode) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ActivitiesPackage.RATE__BASE_OBJECT_NODE, oldBase_ObjectNode, base_ObjectNode));
+ }
+ }
+ return base_ObjectNode;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ObjectNode basicGetBase_ObjectNode() {
+ return base_ObjectNode;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_ObjectNode(ObjectNode newBase_ObjectNode) {
+ ObjectNode oldBase_ObjectNode = base_ObjectNode;
+ base_ObjectNode = newBase_ObjectNode;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ActivitiesPackage.RATE__BASE_OBJECT_NODE, oldBase_ObjectNode, base_ObjectNode));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Parameter getBase_Parameter() {
+ if (base_Parameter != null && base_Parameter.eIsProxy()) {
+ InternalEObject oldBase_Parameter = (InternalEObject)base_Parameter;
+ base_Parameter = (Parameter)eResolveProxy(oldBase_Parameter);
+ if (base_Parameter != oldBase_Parameter) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ActivitiesPackage.RATE__BASE_PARAMETER, oldBase_Parameter, base_Parameter));
+ }
+ }
+ return base_Parameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Parameter basicGetBase_Parameter() {
+ return base_Parameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Parameter(Parameter newBase_Parameter) {
+ Parameter oldBase_Parameter = base_Parameter;
+ base_Parameter = newBase_Parameter;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ActivitiesPackage.RATE__BASE_PARAMETER, oldBase_Parameter, base_Parameter));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ActivitiesPackage.RATE__RATE:
+ if (resolve) return getRate();
+ return basicGetRate();
+ case ActivitiesPackage.RATE__BASE_ACTIVITY_EDGE:
+ if (resolve) return getBase_ActivityEdge();
+ return basicGetBase_ActivityEdge();
+ case ActivitiesPackage.RATE__BASE_OBJECT_NODE:
+ if (resolve) return getBase_ObjectNode();
+ return basicGetBase_ObjectNode();
+ case ActivitiesPackage.RATE__BASE_PARAMETER:
+ if (resolve) return getBase_Parameter();
+ return basicGetBase_Parameter();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ActivitiesPackage.RATE__RATE:
+ setRate((InstanceSpecification)newValue);
+ return;
+ case ActivitiesPackage.RATE__BASE_ACTIVITY_EDGE:
+ setBase_ActivityEdge((ActivityEdge)newValue);
+ return;
+ case ActivitiesPackage.RATE__BASE_OBJECT_NODE:
+ setBase_ObjectNode((ObjectNode)newValue);
+ return;
+ case ActivitiesPackage.RATE__BASE_PARAMETER:
+ setBase_Parameter((Parameter)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ActivitiesPackage.RATE__RATE:
+ setRate((InstanceSpecification)null);
+ return;
+ case ActivitiesPackage.RATE__BASE_ACTIVITY_EDGE:
+ setBase_ActivityEdge((ActivityEdge)null);
+ return;
+ case ActivitiesPackage.RATE__BASE_OBJECT_NODE:
+ setBase_ObjectNode((ObjectNode)null);
+ return;
+ case ActivitiesPackage.RATE__BASE_PARAMETER:
+ setBase_Parameter((Parameter)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ActivitiesPackage.RATE__RATE:
+ return rate != null;
+ case ActivitiesPackage.RATE__BASE_ACTIVITY_EDGE:
+ return base_ActivityEdge != null;
+ case ActivitiesPackage.RATE__BASE_OBJECT_NODE:
+ return base_ObjectNode != null;
+ case ActivitiesPackage.RATE__BASE_PARAMETER:
+ return base_Parameter != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //RateImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/util/ActivitiesAdapterFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/util/ActivitiesAdapterFactory.java
new file mode 100644
index 00000000000..859e1cc1518
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/util/ActivitiesAdapterFactory.java
@@ -0,0 +1,252 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.sysml14.activities.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage
+ * @generated
+ */
+public class ActivitiesAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ActivitiesPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ActivitiesAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ActivitiesPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ActivitiesSwitch<Adapter> modelSwitch =
+ new ActivitiesSwitch<Adapter>() {
+ @Override
+ public Adapter caseOverwrite(Overwrite object) {
+ return createOverwriteAdapter();
+ }
+ @Override
+ public Adapter caseControlOperator(ControlOperator object) {
+ return createControlOperatorAdapter();
+ }
+ @Override
+ public Adapter caseRate(Rate object) {
+ return createRateAdapter();
+ }
+ @Override
+ public Adapter caseNoBuffer(NoBuffer object) {
+ return createNoBufferAdapter();
+ }
+ @Override
+ public Adapter caseDiscrete(Discrete object) {
+ return createDiscreteAdapter();
+ }
+ @Override
+ public Adapter caseContinuous(Continuous object) {
+ return createContinuousAdapter();
+ }
+ @Override
+ public Adapter caseProbability(Probability object) {
+ return createProbabilityAdapter();
+ }
+ @Override
+ public Adapter caseOptional(Optional object) {
+ return createOptionalAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.activities.Overwrite <em>Overwrite</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.activities.Overwrite
+ * @generated
+ */
+ public Adapter createOverwriteAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.activities.ControlOperator <em>Control Operator</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.activities.ControlOperator
+ * @generated
+ */
+ public Adapter createControlOperatorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.activities.Rate <em>Rate</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.activities.Rate
+ * @generated
+ */
+ public Adapter createRateAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.activities.NoBuffer <em>No Buffer</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.activities.NoBuffer
+ * @generated
+ */
+ public Adapter createNoBufferAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.activities.Discrete <em>Discrete</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.activities.Discrete
+ * @generated
+ */
+ public Adapter createDiscreteAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.activities.Continuous <em>Continuous</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.activities.Continuous
+ * @generated
+ */
+ public Adapter createContinuousAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.activities.Probability <em>Probability</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.activities.Probability
+ * @generated
+ */
+ public Adapter createProbabilityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.activities.Optional <em>Optional</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.activities.Optional
+ * @generated
+ */
+ public Adapter createOptionalAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //ActivitiesAdapterFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/util/ActivitiesSwitch.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/util/ActivitiesSwitch.java
new file mode 100644
index 00000000000..86cb6ed6b0f
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/activities/util/ActivitiesSwitch.java
@@ -0,0 +1,265 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.activities.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.sysml14.activities.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.activities.ActivitiesPackage
+ * @generated
+ */
+public class ActivitiesSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ActivitiesPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ActivitiesSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ActivitiesPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case ActivitiesPackage.OVERWRITE: {
+ Overwrite overwrite = (Overwrite)theEObject;
+ T result = caseOverwrite(overwrite);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ActivitiesPackage.CONTROL_OPERATOR: {
+ ControlOperator controlOperator = (ControlOperator)theEObject;
+ T result = caseControlOperator(controlOperator);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ActivitiesPackage.RATE: {
+ Rate rate = (Rate)theEObject;
+ T result = caseRate(rate);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ActivitiesPackage.NO_BUFFER: {
+ NoBuffer noBuffer = (NoBuffer)theEObject;
+ T result = caseNoBuffer(noBuffer);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ActivitiesPackage.DISCRETE: {
+ Discrete discrete = (Discrete)theEObject;
+ T result = caseDiscrete(discrete);
+ if (result == null) result = caseRate(discrete);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ActivitiesPackage.CONTINUOUS: {
+ Continuous continuous = (Continuous)theEObject;
+ T result = caseContinuous(continuous);
+ if (result == null) result = caseRate(continuous);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ActivitiesPackage.PROBABILITY: {
+ Probability probability = (Probability)theEObject;
+ T result = caseProbability(probability);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ActivitiesPackage.OPTIONAL: {
+ Optional optional = (Optional)theEObject;
+ T result = caseOptional(optional);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Overwrite</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Overwrite</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseOverwrite(Overwrite object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Control Operator</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Control Operator</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseControlOperator(ControlOperator object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Rate</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Rate</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseRate(Rate object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>No Buffer</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>No Buffer</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNoBuffer(NoBuffer object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Discrete</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Discrete</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDiscrete(Discrete object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Continuous</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Continuous</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseContinuous(Continuous object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Probability</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Probability</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseProbability(Probability object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Optional</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Optional</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseOptional(Optional object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //ActivitiesSwitch
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/Allocate.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/Allocate.java
new file mode 100644
index 00000000000..d0d992c6f7c
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/Allocate.java
@@ -0,0 +1,81 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.allocations;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath;
+
+import org.eclipse.uml2.uml.Abstraction;
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Allocate</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * Allocate is a dependency based on UML::abstraction. It is a mechanism for associating elements of different types, or in different hierarchies, at an abstract level. Allocate is used for assessing user model consistency and directing future design activity. It is expected that an «allocate» relationship between model elements is a precursor to a more concrete relationship between the elements, their properties, operations, attributes, or sub-classes.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.allocations.Allocate#getBase_Abstraction <em>Base Abstraction</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.allocations.AllocationsPackage#getAllocate()
+ * @model
+ * @generated
+ */
+public interface Allocate extends DirectedRelationshipPropertyPath {
+ /**
+ * Returns the value of the '<em><b>Base Abstraction</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Abstraction</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Abstraction</em>' reference.
+ * @see #setBase_Abstraction(Abstraction)
+ * @see org.eclipse.papyrus.sysml14.allocations.AllocationsPackage#getAllocate_Base_Abstraction()
+ * @model ordered="false"
+ * @generated
+ */
+ Abstraction getBase_Abstraction();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.allocations.Allocate#getBase_Abstraction <em>Base Abstraction</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Abstraction</em>' reference.
+ * @see #getBase_Abstraction()
+ * @generated
+ */
+ void setBase_Abstraction(Abstraction value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model required="true" ordered="false" refRequired="true" refOrdered="false"
+ * @generated
+ */
+ EList<NamedElement> getAllocatedFrom(NamedElement ref);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model required="true" ordered="false" refRequired="true" refOrdered="false"
+ * @generated
+ */
+ EList<NamedElement> getAllocatedTo(NamedElement ref);
+
+} // Allocate
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/AllocateActivityPartition.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/AllocateActivityPartition.java
new file mode 100644
index 00000000000..49ac2b2a0b5
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/AllocateActivityPartition.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.allocations;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.ActivityPartition;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Allocate Activity Partition</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * AllocateActivityPartition is used to depict an «allocate» relationship on an Activity diagram. The AllocateActivityPartition is a standard UML2::ActivityPartition, with modified constraints as stated in the paragraph below.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.allocations.AllocateActivityPartition#getBase_ActivityPartition <em>Base Activity Partition</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.allocations.AllocationsPackage#getAllocateActivityPartition()
+ * @model
+ * @generated
+ */
+public interface AllocateActivityPartition extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Activity Partition</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Activity Partition</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Activity Partition</em>' reference.
+ * @see #setBase_ActivityPartition(ActivityPartition)
+ * @see org.eclipse.papyrus.sysml14.allocations.AllocationsPackage#getAllocateActivityPartition_Base_ActivityPartition()
+ * @model ordered="false"
+ * @generated
+ */
+ ActivityPartition getBase_ActivityPartition();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.allocations.AllocateActivityPartition#getBase_ActivityPartition <em>Base Activity Partition</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Activity Partition</em>' reference.
+ * @see #getBase_ActivityPartition()
+ * @generated
+ */
+ void setBase_ActivityPartition(ActivityPartition value);
+
+} // AllocateActivityPartition
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/AllocationsFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/AllocationsFactory.java
new file mode 100644
index 00000000000..ad66468f77a
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/AllocationsFactory.java
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.allocations;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.allocations.AllocationsPackage
+ * @generated
+ */
+public interface AllocationsFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ AllocationsFactory eINSTANCE = org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Allocate Activity Partition</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Allocate Activity Partition</em>'.
+ * @generated
+ */
+ AllocateActivityPartition createAllocateActivityPartition();
+
+ /**
+ * Returns a new object of class '<em>Allocate</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Allocate</em>'.
+ * @generated
+ */
+ Allocate createAllocate();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ AllocationsPackage getAllocationsPackage();
+
+} //AllocationsFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/AllocationsPackage.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/AllocationsPackage.java
new file mode 100644
index 00000000000..bf7b2952cda
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/AllocationsPackage.java
@@ -0,0 +1,345 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.allocations;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.allocations.AllocationsFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='Allocations'"
+ * @generated
+ */
+public interface AllocationsPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "allocations"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/1.4/SysML/Allocations"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "Allocations"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ AllocationsPackage eINSTANCE = org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocateActivityPartitionImpl <em>Allocate Activity Partition</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocateActivityPartitionImpl
+ * @see org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsPackageImpl#getAllocateActivityPartition()
+ * @generated
+ */
+ int ALLOCATE_ACTIVITY_PARTITION = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Activity Partition</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE_ACTIVITY_PARTITION__BASE_ACTIVITY_PARTITION = 0;
+
+ /**
+ * The number of structural features of the '<em>Allocate Activity Partition</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE_ACTIVITY_PARTITION_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Allocate Activity Partition</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE_ACTIVITY_PARTITION_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocateImpl <em>Allocate</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocateImpl
+ * @see org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsPackageImpl#getAllocate()
+ * @generated
+ */
+ int ALLOCATE = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Directed Relationship</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE__BASE_DIRECTED_RELATIONSHIP = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP;
+
+ /**
+ * The feature id for the '<em><b>Source Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE__SOURCE_PROPERTY_PATH = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Target Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE__TARGET_PROPERTY_PATH = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Source Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE__SOURCE_CONTEXT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Target Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE__TARGET_CONTEXT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Base Abstraction</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE__BASE_ABSTRACTION = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Allocate</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE_FEATURE_COUNT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Allocated From</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE___GET_ALLOCATED_FROM__NAMEDELEMENT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_OPERATION_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Allocated To</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE___GET_ALLOCATED_TO__NAMEDELEMENT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_OPERATION_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Allocate</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATE_OPERATION_COUNT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_OPERATION_COUNT + 2;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.allocations.AllocateActivityPartition <em>Allocate Activity Partition</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Allocate Activity Partition</em>'.
+ * @see org.eclipse.papyrus.sysml14.allocations.AllocateActivityPartition
+ * @generated
+ */
+ EClass getAllocateActivityPartition();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.allocations.AllocateActivityPartition#getBase_ActivityPartition <em>Base Activity Partition</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Activity Partition</em>'.
+ * @see org.eclipse.papyrus.sysml14.allocations.AllocateActivityPartition#getBase_ActivityPartition()
+ * @see #getAllocateActivityPartition()
+ * @generated
+ */
+ EReference getAllocateActivityPartition_Base_ActivityPartition();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.allocations.Allocate <em>Allocate</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Allocate</em>'.
+ * @see org.eclipse.papyrus.sysml14.allocations.Allocate
+ * @generated
+ */
+ EClass getAllocate();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.allocations.Allocate#getBase_Abstraction <em>Base Abstraction</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Abstraction</em>'.
+ * @see org.eclipse.papyrus.sysml14.allocations.Allocate#getBase_Abstraction()
+ * @see #getAllocate()
+ * @generated
+ */
+ EReference getAllocate_Base_Abstraction();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.sysml14.allocations.Allocate#getAllocatedFrom(org.eclipse.uml2.uml.NamedElement) <em>Get Allocated From</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Allocated From</em>' operation.
+ * @see org.eclipse.papyrus.sysml14.allocations.Allocate#getAllocatedFrom(org.eclipse.uml2.uml.NamedElement)
+ * @generated
+ */
+ EOperation getAllocate__GetAllocatedFrom__NamedElement();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.sysml14.allocations.Allocate#getAllocatedTo(org.eclipse.uml2.uml.NamedElement) <em>Get Allocated To</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Allocated To</em>' operation.
+ * @see org.eclipse.papyrus.sysml14.allocations.Allocate#getAllocatedTo(org.eclipse.uml2.uml.NamedElement)
+ * @generated
+ */
+ EOperation getAllocate__GetAllocatedTo__NamedElement();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ AllocationsFactory getAllocationsFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocateActivityPartitionImpl <em>Allocate Activity Partition</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocateActivityPartitionImpl
+ * @see org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsPackageImpl#getAllocateActivityPartition()
+ * @generated
+ */
+ EClass ALLOCATE_ACTIVITY_PARTITION = eINSTANCE.getAllocateActivityPartition();
+
+ /**
+ * The meta object literal for the '<em><b>Base Activity Partition</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ALLOCATE_ACTIVITY_PARTITION__BASE_ACTIVITY_PARTITION = eINSTANCE.getAllocateActivityPartition_Base_ActivityPartition();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocateImpl <em>Allocate</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocateImpl
+ * @see org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsPackageImpl#getAllocate()
+ * @generated
+ */
+ EClass ALLOCATE = eINSTANCE.getAllocate();
+
+ /**
+ * The meta object literal for the '<em><b>Base Abstraction</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ALLOCATE__BASE_ABSTRACTION = eINSTANCE.getAllocate_Base_Abstraction();
+
+ /**
+ * The meta object literal for the '<em><b>Get Allocated From</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ALLOCATE___GET_ALLOCATED_FROM__NAMEDELEMENT = eINSTANCE.getAllocate__GetAllocatedFrom__NamedElement();
+
+ /**
+ * The meta object literal for the '<em><b>Get Allocated To</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ALLOCATE___GET_ALLOCATED_TO__NAMEDELEMENT = eINSTANCE.getAllocate__GetAllocatedTo__NamedElement();
+
+ }
+
+} //AllocationsPackage
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocateActivityPartitionImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocateActivityPartitionImpl.java
new file mode 100644
index 00000000000..7295bec3131
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocateActivityPartitionImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.allocations.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.allocations.AllocateActivityPartition;
+import org.eclipse.papyrus.sysml14.allocations.AllocationsPackage;
+
+import org.eclipse.uml2.uml.ActivityPartition;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Allocate Activity Partition</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocateActivityPartitionImpl#getBase_ActivityPartition <em>Base Activity Partition</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AllocateActivityPartitionImpl extends MinimalEObjectImpl.Container implements AllocateActivityPartition {
+ /**
+ * The cached value of the '{@link #getBase_ActivityPartition() <em>Base Activity Partition</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_ActivityPartition()
+ * @generated
+ * @ordered
+ */
+ protected ActivityPartition base_ActivityPartition;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AllocateActivityPartitionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return AllocationsPackage.Literals.ALLOCATE_ACTIVITY_PARTITION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ActivityPartition getBase_ActivityPartition() {
+ if (base_ActivityPartition != null && base_ActivityPartition.eIsProxy()) {
+ InternalEObject oldBase_ActivityPartition = (InternalEObject)base_ActivityPartition;
+ base_ActivityPartition = (ActivityPartition)eResolveProxy(oldBase_ActivityPartition);
+ if (base_ActivityPartition != oldBase_ActivityPartition) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, AllocationsPackage.ALLOCATE_ACTIVITY_PARTITION__BASE_ACTIVITY_PARTITION, oldBase_ActivityPartition, base_ActivityPartition));
+ }
+ }
+ return base_ActivityPartition;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ActivityPartition basicGetBase_ActivityPartition() {
+ return base_ActivityPartition;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_ActivityPartition(ActivityPartition newBase_ActivityPartition) {
+ ActivityPartition oldBase_ActivityPartition = base_ActivityPartition;
+ base_ActivityPartition = newBase_ActivityPartition;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, AllocationsPackage.ALLOCATE_ACTIVITY_PARTITION__BASE_ACTIVITY_PARTITION, oldBase_ActivityPartition, base_ActivityPartition));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case AllocationsPackage.ALLOCATE_ACTIVITY_PARTITION__BASE_ACTIVITY_PARTITION:
+ if (resolve) return getBase_ActivityPartition();
+ return basicGetBase_ActivityPartition();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case AllocationsPackage.ALLOCATE_ACTIVITY_PARTITION__BASE_ACTIVITY_PARTITION:
+ setBase_ActivityPartition((ActivityPartition)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case AllocationsPackage.ALLOCATE_ACTIVITY_PARTITION__BASE_ACTIVITY_PARTITION:
+ setBase_ActivityPartition((ActivityPartition)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case AllocationsPackage.ALLOCATE_ACTIVITY_PARTITION__BASE_ACTIVITY_PARTITION:
+ return base_ActivityPartition != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //AllocateActivityPartitionImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocateImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocateImpl.java
new file mode 100644
index 00000000000..1561f6c2aa3
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocateImpl.java
@@ -0,0 +1,208 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.allocations.internal.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.sysml14.allocations.Allocate;
+import org.eclipse.papyrus.sysml14.allocations.AllocationsPackage;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.DirectedRelationshipPropertyPathImpl;
+
+import org.eclipse.uml2.uml.Abstraction;
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Allocate</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocateImpl#getBase_Abstraction <em>Base Abstraction</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AllocateImpl extends DirectedRelationshipPropertyPathImpl implements Allocate {
+ /**
+ * The cached value of the '{@link #getBase_Abstraction() <em>Base Abstraction</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Abstraction()
+ * @generated
+ * @ordered
+ */
+ protected Abstraction base_Abstraction;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AllocateImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return AllocationsPackage.Literals.ALLOCATE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Abstraction getBase_Abstraction() {
+ if (base_Abstraction != null && base_Abstraction.eIsProxy()) {
+ InternalEObject oldBase_Abstraction = (InternalEObject)base_Abstraction;
+ base_Abstraction = (Abstraction)eResolveProxy(oldBase_Abstraction);
+ if (base_Abstraction != oldBase_Abstraction) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, AllocationsPackage.ALLOCATE__BASE_ABSTRACTION, oldBase_Abstraction, base_Abstraction));
+ }
+ }
+ return base_Abstraction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Abstraction basicGetBase_Abstraction() {
+ return base_Abstraction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Abstraction(Abstraction newBase_Abstraction) {
+ Abstraction oldBase_Abstraction = base_Abstraction;
+ base_Abstraction = newBase_Abstraction;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, AllocationsPackage.ALLOCATE__BASE_ABSTRACTION, oldBase_Abstraction, base_Abstraction));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<NamedElement> getAllocatedFrom(NamedElement ref) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<NamedElement> getAllocatedTo(NamedElement ref) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case AllocationsPackage.ALLOCATE__BASE_ABSTRACTION:
+ if (resolve) return getBase_Abstraction();
+ return basicGetBase_Abstraction();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case AllocationsPackage.ALLOCATE__BASE_ABSTRACTION:
+ setBase_Abstraction((Abstraction)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case AllocationsPackage.ALLOCATE__BASE_ABSTRACTION:
+ setBase_Abstraction((Abstraction)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case AllocationsPackage.ALLOCATE__BASE_ABSTRACTION:
+ return base_Abstraction != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case AllocationsPackage.ALLOCATE___GET_ALLOCATED_FROM__NAMEDELEMENT:
+ return getAllocatedFrom((NamedElement)arguments.get(0));
+ case AllocationsPackage.ALLOCATE___GET_ALLOCATED_TO__NAMEDELEMENT:
+ return getAllocatedTo((NamedElement)arguments.get(0));
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} //AllocateImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocationsFactoryImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocationsFactoryImpl.java
new file mode 100644
index 00000000000..fccdc0c4f17
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocationsFactoryImpl.java
@@ -0,0 +1,112 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.allocations.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.sysml14.allocations.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class AllocationsFactoryImpl extends EFactoryImpl implements AllocationsFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static AllocationsFactory init() {
+ try {
+ AllocationsFactory theAllocationsFactory = (AllocationsFactory)EPackage.Registry.INSTANCE.getEFactory(AllocationsPackage.eNS_URI);
+ if (theAllocationsFactory != null) {
+ return theAllocationsFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new AllocationsFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AllocationsFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case AllocationsPackage.ALLOCATE_ACTIVITY_PARTITION: return createAllocateActivityPartition();
+ case AllocationsPackage.ALLOCATE: return createAllocate();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AllocateActivityPartition createAllocateActivityPartition() {
+ AllocateActivityPartitionImpl allocateActivityPartition = new AllocateActivityPartitionImpl();
+ return allocateActivityPartition;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Allocate createAllocate() {
+ AllocateImpl allocate = new AllocateImpl();
+ return allocate;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AllocationsPackage getAllocationsPackage() {
+ return (AllocationsPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static AllocationsPackage getPackage() {
+ return AllocationsPackage.eINSTANCE;
+ }
+
+} //AllocationsFactoryImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocationsPackageImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocationsPackageImpl.java
new file mode 100644
index 00000000000..b5c9d05b055
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/internal/impl/AllocationsPackageImpl.java
@@ -0,0 +1,325 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.allocations.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl;
+
+import org.eclipse.papyrus.sysml14.allocations.Allocate;
+import org.eclipse.papyrus.sysml14.allocations.AllocateActivityPartition;
+import org.eclipse.papyrus.sysml14.allocations.AllocationsFactory;
+import org.eclipse.papyrus.sysml14.allocations.AllocationsPackage;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintblocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+
+import org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+
+import org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class AllocationsPackageImpl extends EPackageImpl implements AllocationsPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass allocateActivityPartitionEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass allocateEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.sysml14.allocations.AllocationsPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private AllocationsPackageImpl() {
+ super(eNS_URI, AllocationsFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link AllocationsPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static AllocationsPackage init() {
+ if (isInited) return (AllocationsPackage)EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI);
+
+ // Obtain or create and register package
+ AllocationsPackageImpl theAllocationsPackage = (AllocationsPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof AllocationsPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new AllocationsPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ StandardPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ BlocksPackageImpl theBlocksPackage = (BlocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) instanceof BlocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) : BlocksPackage.eINSTANCE);
+ PortandflowsPackageImpl thePortandflowsPackage = (PortandflowsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) instanceof PortandflowsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) : PortandflowsPackage.eINSTANCE);
+ ActivitiesPackageImpl theActivitiesPackage = (ActivitiesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) instanceof ActivitiesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) : ActivitiesPackage.eINSTANCE);
+ ModelelementsPackageImpl theModelelementsPackage = (ModelelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) instanceof ModelelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) : ModelelementsPackage.eINSTANCE);
+ ConstraintblocksPackageImpl theConstraintblocksPackage = (ConstraintblocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) instanceof ConstraintblocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) : ConstraintblocksPackage.eINSTANCE);
+ RequirementsPackageImpl theRequirementsPackage = (RequirementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) instanceof RequirementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) : RequirementsPackage.eINSTANCE);
+ DeprecatedelementsPackageImpl theDeprecatedelementsPackage = (DeprecatedelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) instanceof DeprecatedelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) : DeprecatedelementsPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theAllocationsPackage.createPackageContents();
+ theBlocksPackage.createPackageContents();
+ thePortandflowsPackage.createPackageContents();
+ theActivitiesPackage.createPackageContents();
+ theModelelementsPackage.createPackageContents();
+ theConstraintblocksPackage.createPackageContents();
+ theRequirementsPackage.createPackageContents();
+ theDeprecatedelementsPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theAllocationsPackage.initializePackageContents();
+ theBlocksPackage.initializePackageContents();
+ thePortandflowsPackage.initializePackageContents();
+ theActivitiesPackage.initializePackageContents();
+ theModelelementsPackage.initializePackageContents();
+ theConstraintblocksPackage.initializePackageContents();
+ theRequirementsPackage.initializePackageContents();
+ theDeprecatedelementsPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theAllocationsPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(AllocationsPackage.eNS_URI, theAllocationsPackage);
+ return theAllocationsPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAllocateActivityPartition() {
+ return allocateActivityPartitionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAllocateActivityPartition_Base_ActivityPartition() {
+ return (EReference)allocateActivityPartitionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAllocate() {
+ return allocateEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAllocate_Base_Abstraction() {
+ return (EReference)allocateEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAllocate__GetAllocatedFrom__NamedElement() {
+ return allocateEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAllocate__GetAllocatedTo__NamedElement() {
+ return allocateEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AllocationsFactory getAllocationsFactory() {
+ return (AllocationsFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ allocateActivityPartitionEClass = createEClass(ALLOCATE_ACTIVITY_PARTITION);
+ createEReference(allocateActivityPartitionEClass, ALLOCATE_ACTIVITY_PARTITION__BASE_ACTIVITY_PARTITION);
+
+ allocateEClass = createEClass(ALLOCATE);
+ createEReference(allocateEClass, ALLOCATE__BASE_ABSTRACTION);
+ createEOperation(allocateEClass, ALLOCATE___GET_ALLOCATED_FROM__NAMEDELEMENT);
+ createEOperation(allocateEClass, ALLOCATE___GET_ALLOCATED_TO__NAMEDELEMENT);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ UMLPackage theUMLPackage = (UMLPackage)EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
+ BlocksPackage theBlocksPackage = (BlocksPackage)EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ allocateEClass.getESuperTypes().add(theBlocksPackage.getDirectedRelationshipPropertyPath());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(allocateActivityPartitionEClass, AllocateActivityPartition.class, "AllocateActivityPartition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getAllocateActivityPartition_Base_ActivityPartition(), theUMLPackage.getActivityPartition(), null, "base_ActivityPartition", null, 0, 1, AllocateActivityPartition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(allocateEClass, Allocate.class, "Allocate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getAllocate_Base_Abstraction(), theUMLPackage.getAbstraction(), null, "base_Abstraction", null, 0, 1, Allocate.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ EOperation op = initEOperation(getAllocate__GetAllocatedFrom__NamedElement(), theUMLPackage.getNamedElement(), "getAllocatedFrom", 1, -1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+ addEParameter(op, theUMLPackage.getNamedElement(), "ref", 1, 1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+
+ op = initEOperation(getAllocate__GetAllocatedTo__NamedElement(), theUMLPackage.getNamedElement(), "getAllocatedTo", 1, -1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+ addEParameter(op, theUMLPackage.getNamedElement(), "ref", 1, 1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/uml2/2.0.0/UML
+ createUMLAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/uml2/2.0.0/UML</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createUMLAnnotations() {
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML"; //$NON-NLS-1$
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "originalName", "Allocations" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+} //AllocationsPackageImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/util/AllocationsAdapterFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/util/AllocationsAdapterFactory.java
new file mode 100644
index 00000000000..c59c37b289d
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/util/AllocationsAdapterFactory.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.allocations.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.sysml14.allocations.*;
+
+import org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.allocations.AllocationsPackage
+ * @generated
+ */
+public class AllocationsAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static AllocationsPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AllocationsAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = AllocationsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AllocationsSwitch<Adapter> modelSwitch =
+ new AllocationsSwitch<Adapter>() {
+ @Override
+ public Adapter caseAllocateActivityPartition(AllocateActivityPartition object) {
+ return createAllocateActivityPartitionAdapter();
+ }
+ @Override
+ public Adapter caseAllocate(Allocate object) {
+ return createAllocateAdapter();
+ }
+ @Override
+ public Adapter caseDirectedRelationshipPropertyPath(DirectedRelationshipPropertyPath object) {
+ return createDirectedRelationshipPropertyPathAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.allocations.AllocateActivityPartition <em>Allocate Activity Partition</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.allocations.AllocateActivityPartition
+ * @generated
+ */
+ public Adapter createAllocateActivityPartitionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.allocations.Allocate <em>Allocate</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.allocations.Allocate
+ * @generated
+ */
+ public Adapter createAllocateAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath <em>Directed Relationship Property Path</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath
+ * @generated
+ */
+ public Adapter createDirectedRelationshipPropertyPathAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //AllocationsAdapterFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/util/AllocationsSwitch.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/util/AllocationsSwitch.java
new file mode 100644
index 00000000000..e437e39f944
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/allocations/util/AllocationsSwitch.java
@@ -0,0 +1,155 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.allocations.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.sysml14.allocations.*;
+
+import org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.allocations.AllocationsPackage
+ * @generated
+ */
+public class AllocationsSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static AllocationsPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AllocationsSwitch() {
+ if (modelPackage == null) {
+ modelPackage = AllocationsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case AllocationsPackage.ALLOCATE_ACTIVITY_PARTITION: {
+ AllocateActivityPartition allocateActivityPartition = (AllocateActivityPartition)theEObject;
+ T result = caseAllocateActivityPartition(allocateActivityPartition);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case AllocationsPackage.ALLOCATE: {
+ Allocate allocate = (Allocate)theEObject;
+ T result = caseAllocate(allocate);
+ if (result == null) result = caseDirectedRelationshipPropertyPath(allocate);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Allocate Activity Partition</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Allocate Activity Partition</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAllocateActivityPartition(AllocateActivityPartition object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Allocate</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Allocate</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAllocate(Allocate object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Directed Relationship Property Path</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Directed Relationship Property Path</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDirectedRelationshipPropertyPath(DirectedRelationshipPropertyPath object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //AllocationsSwitch
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/AdjunctProperty.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/AdjunctProperty.java
new file mode 100644
index 00000000000..602c758e1b5
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/AdjunctProperty.java
@@ -0,0 +1,89 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Adjunct Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * The AdjunctProperty stereotype can be applied to properties to constrain their values to the values of connectors typed by association blocks, call actions, object nodes, variables, or parameters, interaction uses, and submachine states. The values of connectors typed by association blocks are the instances of the association block typing a connector in the block having the stereotyped property. The values of call actions are the executions of behaviors invoked by the behavior having the call action and the stereotyped property (see Subclause 11.3.1.1.1 for more about this use of the stereotype). The values of object nodes are the values of tokens in the object nodes of the behavior having the stereotyped property (see Subclause 11.3.1.4.1 for more about this use of the stereotype). The values of variables are those assigned by executions of activities that have the stereotyped property. The values of parameters are those assigned by executions of behaviors that have the stereotyped property. The keyword «adjunct» before a property name indicates the property is stereotyped by AdjunctProperty.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.AdjunctProperty#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.AdjunctProperty#getPrincipal <em>Principal</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getAdjunctProperty()
+ * @model
+ * @generated
+ */
+public interface AdjunctProperty extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Property</em>' reference.
+ * @see #setBase_Property(Property)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getAdjunctProperty_Base_Property()
+ * @model ordered="false"
+ * @generated
+ */
+ Property getBase_Property();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.AdjunctProperty#getBase_Property <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Property</em>' reference.
+ * @see #getBase_Property()
+ * @generated
+ */
+ void setBase_Property(Property value);
+
+ /**
+ * Returns the value of the '<em><b>Principal</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Gives the element that determines the values of the property. Must be a connector, call action, object node, variable, or parameter.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Principal</em>' reference.
+ * @see #setPrincipal(Element)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getAdjunctProperty_Principal()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Element getPrincipal();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.AdjunctProperty#getPrincipal <em>Principal</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Principal</em>' reference.
+ * @see #getPrincipal()
+ * @generated
+ */
+ void setPrincipal(Element value);
+
+} // AdjunctProperty
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BindingConnector.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BindingConnector.java
new file mode 100644
index 00000000000..26de5a1b7d2
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BindingConnector.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Connector;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Binding Connector</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A Binding Connector is a connector which specifies that the properties at both ends of the connector have equal values. If the properties at the ends of a binding connector are typed by a DataType or ValueType, the connector specifies that the instances of the properties must hold equal values, recursively through any nested properties within the connected properties. If the properties at the ends of a binding connector are typed by a Block, the connector specifies that the instances of the properties must refer to the same block instance. As with any connector owned by a SysML Block, the ends of a binding connector may be nested within a multi-level path of properties accessible from the owning block. The NestedConnectorEnd stereotype is used to represent such nested ends just as for nested ends of other SysML connectors.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.BindingConnector#getBase_Connector <em>Base Connector</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getBindingConnector()
+ * @model
+ * @generated
+ */
+public interface BindingConnector extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Connector</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Connector</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Connector</em>' reference.
+ * @see #setBase_Connector(Connector)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getBindingConnector_Base_Connector()
+ * @model ordered="false"
+ * @generated
+ */
+ Connector getBase_Connector();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.BindingConnector#getBase_Connector <em>Base Connector</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Connector</em>' reference.
+ * @see #getBase_Connector()
+ * @generated
+ */
+ void setBase_Connector(Connector value);
+
+} // BindingConnector
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/Block.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/Block.java
new file mode 100644
index 00000000000..5483e74e88c
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/Block.java
@@ -0,0 +1,86 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Block</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A Block is a modular unit that describes the structure of a system or element. It may include both structural and behavioral features, such as properties and operations, that represent the state of the system and behavior that the system may exhibit. Some of these properties may hold parts of a system, which can also be described by blocks. A block may include a structure of connectors between its properties to indicate how its parts or other properties relate to one another. SysML blocks provide a general-purpose capability to describe the architecture of a system. They provide the ability to represent a system hierarchy, in which a system at one level is composed of systems at a more basic level. They can describe not only the connectivity relationships between the systems at any level, but also quantitative values or other information about a system. SysML does not restrict the kind of system or system element that may be described by a block. Any reusable form of description that may be applied to a system or a set of system characteristics may be described by a block. Such reusable descriptions, for example, may be applied to purely conceptual aspects of a system design, such as relationships that hold between parts or properties of a system. Connectors owned by SysML blocks may be used to define relationships between parts or other properties of the same containing block. The type of a connector or its connected ends may specify the semantic interpretation of a specific connector.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.Block#getBase_Class <em>Base Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.Block#isEncapsulated <em>Is Encapsulated</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getBlock()
+ * @model
+ * @generated
+ */
+public interface Block extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Class</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Class</em>' reference.
+ * @see #setBase_Class(org.eclipse.uml2.uml.Class)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getBlock_Base_Class()
+ * @model ordered="false"
+ * @generated
+ */
+ org.eclipse.uml2.uml.Class getBase_Class();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.Block#getBase_Class <em>Base Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Class</em>' reference.
+ * @see #getBase_Class()
+ * @generated
+ */
+ void setBase_Class(org.eclipse.uml2.uml.Class value);
+
+ /**
+ * Returns the value of the '<em><b>Is Encapsulated</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * If true, then the block is treated as a black box; a part typed by this black box can only be connected via its ports or directly to its outer boundary. If false, or if a value is not present, then connections can be established to elements of its internal structure via deep-nested connector ends.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Is Encapsulated</em>' attribute.
+ * @see #setIsEncapsulated(boolean)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getBlock_IsEncapsulated()
+ * @model dataType="org.eclipse.uml2.types.Boolean" ordered="false"
+ * @generated
+ */
+ boolean isEncapsulated();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.Block#isEncapsulated <em>Is Encapsulated</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Is Encapsulated</em>' attribute.
+ * @see #isEncapsulated()
+ * @generated
+ */
+ void setIsEncapsulated(boolean value);
+
+} // Block
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BlocksFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BlocksFactory.java
new file mode 100644
index 00000000000..556358ad46b
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BlocksFactory.java
@@ -0,0 +1,147 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage
+ * @generated
+ */
+public interface BlocksFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ BlocksFactory eINSTANCE = org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Value Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Value Type</em>'.
+ * @generated
+ */
+ ValueType createValueType();
+
+ /**
+ * Returns a new object of class '<em>Distributed Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Distributed Property</em>'.
+ * @generated
+ */
+ DistributedProperty createDistributedProperty();
+
+ /**
+ * Returns a new object of class '<em>Connector Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Connector Property</em>'.
+ * @generated
+ */
+ ConnectorProperty createConnectorProperty();
+
+ /**
+ * Returns a new object of class '<em>Participant Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Participant Property</em>'.
+ * @generated
+ */
+ ParticipantProperty createParticipantProperty();
+
+ /**
+ * Returns a new object of class '<em>Binding Connector</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Binding Connector</em>'.
+ * @generated
+ */
+ BindingConnector createBindingConnector();
+
+ /**
+ * Returns a new object of class '<em>Block</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Block</em>'.
+ * @generated
+ */
+ Block createBlock();
+
+ /**
+ * Returns a new object of class '<em>Property Specific Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Property Specific Type</em>'.
+ * @generated
+ */
+ PropertySpecificType createPropertySpecificType();
+
+ /**
+ * Returns a new object of class '<em>Nested Connector End</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Nested Connector End</em>'.
+ * @generated
+ */
+ NestedConnectorEnd createNestedConnectorEnd();
+
+ /**
+ * Returns a new object of class '<em>End Path Multiplicity</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>End Path Multiplicity</em>'.
+ * @generated
+ */
+ EndPathMultiplicity createEndPathMultiplicity();
+
+ /**
+ * Returns a new object of class '<em>Bound Reference</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Bound Reference</em>'.
+ * @generated
+ */
+ BoundReference createBoundReference();
+
+ /**
+ * Returns a new object of class '<em>Adjunct Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Adjunct Property</em>'.
+ * @generated
+ */
+ AdjunctProperty createAdjunctProperty();
+
+ /**
+ * Returns a new object of class '<em>Classifier Behavior Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Classifier Behavior Property</em>'.
+ * @generated
+ */
+ ClassifierBehaviorProperty createClassifierBehaviorProperty();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ BlocksPackage getBlocksPackage();
+
+} //BlocksFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BlocksPackage.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BlocksPackage.java
new file mode 100644
index 00000000000..125bf7df4cd
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BlocksPackage.java
@@ -0,0 +1,1593 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='Blocks'"
+ * @generated
+ */
+public interface BlocksPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "blocks"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/1.4/SysML/Blocks"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "Blocks"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ BlocksPackage eINSTANCE = org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ValueTypeImpl <em>Value Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.ValueTypeImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getValueType()
+ * @generated
+ */
+ int VALUE_TYPE = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Data Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_TYPE__BASE_DATA_TYPE = 0;
+
+ /**
+ * The feature id for the '<em><b>Unit</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_TYPE__UNIT = 1;
+
+ /**
+ * The feature id for the '<em><b>Quantity Kind</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_TYPE__QUANTITY_KIND = 2;
+
+ /**
+ * The number of structural features of the '<em>Value Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_TYPE_FEATURE_COUNT = 3;
+
+ /**
+ * The number of operations of the '<em>Value Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_TYPE_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.DistributedPropertyImpl <em>Distributed Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.DistributedPropertyImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getDistributedProperty()
+ * @generated
+ */
+ int DISTRIBUTED_PROPERTY = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_PROPERTY__BASE_PROPERTY = 0;
+
+ /**
+ * The number of structural features of the '<em>Distributed Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_PROPERTY_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Distributed Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISTRIBUTED_PROPERTY_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ConnectorPropertyImpl <em>Connector Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.ConnectorPropertyImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getConnectorProperty()
+ * @generated
+ */
+ int CONNECTOR_PROPERTY = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONNECTOR_PROPERTY__BASE_PROPERTY = 0;
+
+ /**
+ * The feature id for the '<em><b>Connector</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONNECTOR_PROPERTY__CONNECTOR = 1;
+
+ /**
+ * The number of structural features of the '<em>Connector Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONNECTOR_PROPERTY_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Connector Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONNECTOR_PROPERTY_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ParticipantPropertyImpl <em>Participant Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.ParticipantPropertyImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getParticipantProperty()
+ * @generated
+ */
+ int PARTICIPANT_PROPERTY = 3;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PARTICIPANT_PROPERTY__BASE_PROPERTY = 0;
+
+ /**
+ * The feature id for the '<em><b>End</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PARTICIPANT_PROPERTY__END = 1;
+
+ /**
+ * The number of structural features of the '<em>Participant Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PARTICIPANT_PROPERTY_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Participant Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PARTICIPANT_PROPERTY_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.BindingConnectorImpl <em>Binding Connector</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BindingConnectorImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getBindingConnector()
+ * @generated
+ */
+ int BINDING_CONNECTOR = 4;
+
+ /**
+ * The feature id for the '<em><b>Base Connector</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BINDING_CONNECTOR__BASE_CONNECTOR = 0;
+
+ /**
+ * The number of structural features of the '<em>Binding Connector</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BINDING_CONNECTOR_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Binding Connector</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BINDING_CONNECTOR_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.BlockImpl <em>Block</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlockImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getBlock()
+ * @generated
+ */
+ int BLOCK = 5;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BLOCK__BASE_CLASS = 0;
+
+ /**
+ * The feature id for the '<em><b>Is Encapsulated</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BLOCK__IS_ENCAPSULATED = 1;
+
+ /**
+ * The number of structural features of the '<em>Block</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BLOCK_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Block</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BLOCK_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.PropertySpecificTypeImpl <em>Property Specific Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.PropertySpecificTypeImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getPropertySpecificType()
+ * @generated
+ */
+ int PROPERTY_SPECIFIC_TYPE = 6;
+
+ /**
+ * The feature id for the '<em><b>Base Classifier</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_SPECIFIC_TYPE__BASE_CLASSIFIER = 0;
+
+ /**
+ * The number of structural features of the '<em>Property Specific Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_SPECIFIC_TYPE_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Property Specific Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_SPECIFIC_TYPE_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ElementPropertyPathImpl <em>Element Property Path</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.ElementPropertyPathImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getElementPropertyPath()
+ * @generated
+ */
+ int ELEMENT_PROPERTY_PATH = 8;
+
+ /**
+ * The feature id for the '<em><b>Base Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_PROPERTY_PATH__BASE_ELEMENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_PROPERTY_PATH__PROPERTY_PATH = 1;
+
+ /**
+ * The number of structural features of the '<em>Element Property Path</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_PROPERTY_PATH_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Element Property Path</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_PROPERTY_PATH_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.NestedConnectorEndImpl <em>Nested Connector End</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.NestedConnectorEndImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getNestedConnectorEnd()
+ * @generated
+ */
+ int NESTED_CONNECTOR_END = 7;
+
+ /**
+ * The feature id for the '<em><b>Base Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NESTED_CONNECTOR_END__BASE_ELEMENT = ELEMENT_PROPERTY_PATH__BASE_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NESTED_CONNECTOR_END__PROPERTY_PATH = ELEMENT_PROPERTY_PATH__PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Base Connector End</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NESTED_CONNECTOR_END__BASE_CONNECTOR_END = ELEMENT_PROPERTY_PATH_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Nested Connector End</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NESTED_CONNECTOR_END_FEATURE_COUNT = ELEMENT_PROPERTY_PATH_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Nested Connector End</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NESTED_CONNECTOR_END_OPERATION_COUNT = ELEMENT_PROPERTY_PATH_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.DirectedRelationshipPropertyPathImpl <em>Directed Relationship Property Path</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.DirectedRelationshipPropertyPathImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getDirectedRelationshipPropertyPath()
+ * @generated
+ */
+ int DIRECTED_RELATIONSHIP_PROPERTY_PATH = 9;
+
+ /**
+ * The feature id for the '<em><b>Base Directed Relationship</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP = 0;
+
+ /**
+ * The feature id for the '<em><b>Source Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_PROPERTY_PATH = 1;
+
+ /**
+ * The feature id for the '<em><b>Target Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_PROPERTY_PATH = 2;
+
+ /**
+ * The feature id for the '<em><b>Source Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT = 3;
+
+ /**
+ * The feature id for the '<em><b>Target Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT = 4;
+
+ /**
+ * The number of structural features of the '<em>Directed Relationship Property Path</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECTED_RELATIONSHIP_PROPERTY_PATH_FEATURE_COUNT = 5;
+
+ /**
+ * The number of operations of the '<em>Directed Relationship Property Path</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECTED_RELATIONSHIP_PROPERTY_PATH_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.EndPathMultiplicityImpl <em>End Path Multiplicity</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.EndPathMultiplicityImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getEndPathMultiplicity()
+ * @generated
+ */
+ int END_PATH_MULTIPLICITY = 10;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int END_PATH_MULTIPLICITY__BASE_PROPERTY = 0;
+
+ /**
+ * The feature id for the '<em><b>Lower</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int END_PATH_MULTIPLICITY__LOWER = 1;
+
+ /**
+ * The feature id for the '<em><b>Upper</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int END_PATH_MULTIPLICITY__UPPER = 2;
+
+ /**
+ * The number of structural features of the '<em>End Path Multiplicity</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int END_PATH_MULTIPLICITY_FEATURE_COUNT = 3;
+
+ /**
+ * The number of operations of the '<em>End Path Multiplicity</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int END_PATH_MULTIPLICITY_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.BoundReferenceImpl <em>Bound Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BoundReferenceImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getBoundReference()
+ * @generated
+ */
+ int BOUND_REFERENCE = 11;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BOUND_REFERENCE__BASE_PROPERTY = END_PATH_MULTIPLICITY__BASE_PROPERTY;
+
+ /**
+ * The feature id for the '<em><b>Lower</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BOUND_REFERENCE__LOWER = END_PATH_MULTIPLICITY__LOWER;
+
+ /**
+ * The feature id for the '<em><b>Upper</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BOUND_REFERENCE__UPPER = END_PATH_MULTIPLICITY__UPPER;
+
+ /**
+ * The feature id for the '<em><b>Bound End</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BOUND_REFERENCE__BOUND_END = END_PATH_MULTIPLICITY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Binding Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BOUND_REFERENCE__BINDING_PATH = END_PATH_MULTIPLICITY_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Bound Reference</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BOUND_REFERENCE_FEATURE_COUNT = END_PATH_MULTIPLICITY_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Bound Reference</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int BOUND_REFERENCE_OPERATION_COUNT = END_PATH_MULTIPLICITY_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.AdjunctPropertyImpl <em>Adjunct Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.AdjunctPropertyImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getAdjunctProperty()
+ * @generated
+ */
+ int ADJUNCT_PROPERTY = 12;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ADJUNCT_PROPERTY__BASE_PROPERTY = 0;
+
+ /**
+ * The feature id for the '<em><b>Principal</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ADJUNCT_PROPERTY__PRINCIPAL = 1;
+
+ /**
+ * The number of structural features of the '<em>Adjunct Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ADJUNCT_PROPERTY_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Adjunct Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ADJUNCT_PROPERTY_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ClassifierBehaviorPropertyImpl <em>Classifier Behavior Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.ClassifierBehaviorPropertyImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getClassifierBehaviorProperty()
+ * @generated
+ */
+ int CLASSIFIER_BEHAVIOR_PROPERTY = 13;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CLASSIFIER_BEHAVIOR_PROPERTY__BASE_PROPERTY = 0;
+
+ /**
+ * The number of structural features of the '<em>Classifier Behavior Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CLASSIFIER_BEHAVIOR_PROPERTY_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Classifier Behavior Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CLASSIFIER_BEHAVIOR_PROPERTY_OPERATION_COUNT = 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.ValueType <em>Value Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Value Type</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ValueType
+ * @generated
+ */
+ EClass getValueType();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.ValueType#getBase_DataType <em>Base Data Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Data Type</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ValueType#getBase_DataType()
+ * @see #getValueType()
+ * @generated
+ */
+ EReference getValueType_Base_DataType();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.ValueType#getUnit <em>Unit</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Unit</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ValueType#getUnit()
+ * @see #getValueType()
+ * @generated
+ */
+ EReference getValueType_Unit();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.ValueType#getQuantityKind <em>Quantity Kind</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Quantity Kind</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ValueType#getQuantityKind()
+ * @see #getValueType()
+ * @generated
+ */
+ EReference getValueType_QuantityKind();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.DistributedProperty <em>Distributed Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Distributed Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.DistributedProperty
+ * @generated
+ */
+ EClass getDistributedProperty();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.DistributedProperty#getBase_Property <em>Base Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.DistributedProperty#getBase_Property()
+ * @see #getDistributedProperty()
+ * @generated
+ */
+ EReference getDistributedProperty_Base_Property();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.ConnectorProperty <em>Connector Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Connector Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ConnectorProperty
+ * @generated
+ */
+ EClass getConnectorProperty();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.ConnectorProperty#getBase_Property <em>Base Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ConnectorProperty#getBase_Property()
+ * @see #getConnectorProperty()
+ * @generated
+ */
+ EReference getConnectorProperty_Base_Property();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.ConnectorProperty#getConnector <em>Connector</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Connector</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ConnectorProperty#getConnector()
+ * @see #getConnectorProperty()
+ * @generated
+ */
+ EReference getConnectorProperty_Connector();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.ParticipantProperty <em>Participant Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Participant Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ParticipantProperty
+ * @generated
+ */
+ EClass getParticipantProperty();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.ParticipantProperty#getBase_Property <em>Base Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ParticipantProperty#getBase_Property()
+ * @see #getParticipantProperty()
+ * @generated
+ */
+ EReference getParticipantProperty_Base_Property();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.ParticipantProperty#getEnd <em>End</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>End</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ParticipantProperty#getEnd()
+ * @see #getParticipantProperty()
+ * @generated
+ */
+ EReference getParticipantProperty_End();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.BindingConnector <em>Binding Connector</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Binding Connector</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.BindingConnector
+ * @generated
+ */
+ EClass getBindingConnector();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.BindingConnector#getBase_Connector <em>Base Connector</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Connector</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.BindingConnector#getBase_Connector()
+ * @see #getBindingConnector()
+ * @generated
+ */
+ EReference getBindingConnector_Base_Connector();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.Block <em>Block</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Block</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.Block
+ * @generated
+ */
+ EClass getBlock();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.Block#getBase_Class <em>Base Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Class</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.Block#getBase_Class()
+ * @see #getBlock()
+ * @generated
+ */
+ EReference getBlock_Base_Class();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.blocks.Block#isEncapsulated <em>Is Encapsulated</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Is Encapsulated</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.Block#isEncapsulated()
+ * @see #getBlock()
+ * @generated
+ */
+ EAttribute getBlock_IsEncapsulated();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.PropertySpecificType <em>Property Specific Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Property Specific Type</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.PropertySpecificType
+ * @generated
+ */
+ EClass getPropertySpecificType();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.PropertySpecificType#getBase_Classifier <em>Base Classifier</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Classifier</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.PropertySpecificType#getBase_Classifier()
+ * @see #getPropertySpecificType()
+ * @generated
+ */
+ EReference getPropertySpecificType_Base_Classifier();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.NestedConnectorEnd <em>Nested Connector End</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Nested Connector End</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.NestedConnectorEnd
+ * @generated
+ */
+ EClass getNestedConnectorEnd();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.NestedConnectorEnd#getBase_ConnectorEnd <em>Base Connector End</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Connector End</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.NestedConnectorEnd#getBase_ConnectorEnd()
+ * @see #getNestedConnectorEnd()
+ * @generated
+ */
+ EReference getNestedConnectorEnd_Base_ConnectorEnd();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath <em>Element Property Path</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Element Property Path</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath
+ * @generated
+ */
+ EClass getElementPropertyPath();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath#getBase_Element <em>Base Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Element</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath#getBase_Element()
+ * @see #getElementPropertyPath()
+ * @generated
+ */
+ EReference getElementPropertyPath_Base_Element();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath#getPropertyPath <em>Property Path</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Property Path</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath#getPropertyPath()
+ * @see #getElementPropertyPath()
+ * @generated
+ */
+ EReference getElementPropertyPath_PropertyPath();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath <em>Directed Relationship Property Path</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Directed Relationship Property Path</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath
+ * @generated
+ */
+ EClass getDirectedRelationshipPropertyPath();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getBase_DirectedRelationship <em>Base Directed Relationship</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Directed Relationship</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getBase_DirectedRelationship()
+ * @see #getDirectedRelationshipPropertyPath()
+ * @generated
+ */
+ EReference getDirectedRelationshipPropertyPath_Base_DirectedRelationship();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getSourcePropertyPath <em>Source Property Path</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Source Property Path</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getSourcePropertyPath()
+ * @see #getDirectedRelationshipPropertyPath()
+ * @generated
+ */
+ EReference getDirectedRelationshipPropertyPath_SourcePropertyPath();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getTargetPropertyPath <em>Target Property Path</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Target Property Path</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getTargetPropertyPath()
+ * @see #getDirectedRelationshipPropertyPath()
+ * @generated
+ */
+ EReference getDirectedRelationshipPropertyPath_TargetPropertyPath();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getSourceContext <em>Source Context</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Source Context</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getSourceContext()
+ * @see #getDirectedRelationshipPropertyPath()
+ * @generated
+ */
+ EReference getDirectedRelationshipPropertyPath_SourceContext();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getTargetContext <em>Target Context</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Target Context</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getTargetContext()
+ * @see #getDirectedRelationshipPropertyPath()
+ * @generated
+ */
+ EReference getDirectedRelationshipPropertyPath_TargetContext();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity <em>End Path Multiplicity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>End Path Multiplicity</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity
+ * @generated
+ */
+ EClass getEndPathMultiplicity();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity#getBase_Property <em>Base Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity#getBase_Property()
+ * @see #getEndPathMultiplicity()
+ * @generated
+ */
+ EReference getEndPathMultiplicity_Base_Property();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity#getLower <em>Lower</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Lower</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity#getLower()
+ * @see #getEndPathMultiplicity()
+ * @generated
+ */
+ EAttribute getEndPathMultiplicity_Lower();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity#getUpper <em>Upper</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Upper</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity#getUpper()
+ * @see #getEndPathMultiplicity()
+ * @generated
+ */
+ EAttribute getEndPathMultiplicity_Upper();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.BoundReference <em>Bound Reference</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Bound Reference</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.BoundReference
+ * @generated
+ */
+ EClass getBoundReference();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.BoundReference#getBoundEnd <em>Bound End</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Bound End</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.BoundReference#getBoundEnd()
+ * @see #getBoundReference()
+ * @generated
+ */
+ EReference getBoundReference_BoundEnd();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.blocks.BoundReference#getBindingPath <em>Binding Path</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Binding Path</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.BoundReference#getBindingPath()
+ * @see #getBoundReference()
+ * @generated
+ */
+ EReference getBoundReference_BindingPath();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.AdjunctProperty <em>Adjunct Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Adjunct Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.AdjunctProperty
+ * @generated
+ */
+ EClass getAdjunctProperty();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.AdjunctProperty#getBase_Property <em>Base Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.AdjunctProperty#getBase_Property()
+ * @see #getAdjunctProperty()
+ * @generated
+ */
+ EReference getAdjunctProperty_Base_Property();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.AdjunctProperty#getPrincipal <em>Principal</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Principal</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.AdjunctProperty#getPrincipal()
+ * @see #getAdjunctProperty()
+ * @generated
+ */
+ EReference getAdjunctProperty_Principal();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.blocks.ClassifierBehaviorProperty <em>Classifier Behavior Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Classifier Behavior Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ClassifierBehaviorProperty
+ * @generated
+ */
+ EClass getClassifierBehaviorProperty();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.blocks.ClassifierBehaviorProperty#getBase_Property <em>Base Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.blocks.ClassifierBehaviorProperty#getBase_Property()
+ * @see #getClassifierBehaviorProperty()
+ * @generated
+ */
+ EReference getClassifierBehaviorProperty_Base_Property();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ BlocksFactory getBlocksFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ValueTypeImpl <em>Value Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.ValueTypeImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getValueType()
+ * @generated
+ */
+ EClass VALUE_TYPE = eINSTANCE.getValueType();
+
+ /**
+ * The meta object literal for the '<em><b>Base Data Type</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VALUE_TYPE__BASE_DATA_TYPE = eINSTANCE.getValueType_Base_DataType();
+
+ /**
+ * The meta object literal for the '<em><b>Unit</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VALUE_TYPE__UNIT = eINSTANCE.getValueType_Unit();
+
+ /**
+ * The meta object literal for the '<em><b>Quantity Kind</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VALUE_TYPE__QUANTITY_KIND = eINSTANCE.getValueType_QuantityKind();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.DistributedPropertyImpl <em>Distributed Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.DistributedPropertyImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getDistributedProperty()
+ * @generated
+ */
+ EClass DISTRIBUTED_PROPERTY = eINSTANCE.getDistributedProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DISTRIBUTED_PROPERTY__BASE_PROPERTY = eINSTANCE.getDistributedProperty_Base_Property();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ConnectorPropertyImpl <em>Connector Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.ConnectorPropertyImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getConnectorProperty()
+ * @generated
+ */
+ EClass CONNECTOR_PROPERTY = eINSTANCE.getConnectorProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONNECTOR_PROPERTY__BASE_PROPERTY = eINSTANCE.getConnectorProperty_Base_Property();
+
+ /**
+ * The meta object literal for the '<em><b>Connector</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONNECTOR_PROPERTY__CONNECTOR = eINSTANCE.getConnectorProperty_Connector();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ParticipantPropertyImpl <em>Participant Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.ParticipantPropertyImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getParticipantProperty()
+ * @generated
+ */
+ EClass PARTICIPANT_PROPERTY = eINSTANCE.getParticipantProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PARTICIPANT_PROPERTY__BASE_PROPERTY = eINSTANCE.getParticipantProperty_Base_Property();
+
+ /**
+ * The meta object literal for the '<em><b>End</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PARTICIPANT_PROPERTY__END = eINSTANCE.getParticipantProperty_End();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.BindingConnectorImpl <em>Binding Connector</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BindingConnectorImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getBindingConnector()
+ * @generated
+ */
+ EClass BINDING_CONNECTOR = eINSTANCE.getBindingConnector();
+
+ /**
+ * The meta object literal for the '<em><b>Base Connector</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference BINDING_CONNECTOR__BASE_CONNECTOR = eINSTANCE.getBindingConnector_Base_Connector();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.BlockImpl <em>Block</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlockImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getBlock()
+ * @generated
+ */
+ EClass BLOCK = eINSTANCE.getBlock();
+
+ /**
+ * The meta object literal for the '<em><b>Base Class</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference BLOCK__BASE_CLASS = eINSTANCE.getBlock_Base_Class();
+
+ /**
+ * The meta object literal for the '<em><b>Is Encapsulated</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute BLOCK__IS_ENCAPSULATED = eINSTANCE.getBlock_IsEncapsulated();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.PropertySpecificTypeImpl <em>Property Specific Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.PropertySpecificTypeImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getPropertySpecificType()
+ * @generated
+ */
+ EClass PROPERTY_SPECIFIC_TYPE = eINSTANCE.getPropertySpecificType();
+
+ /**
+ * The meta object literal for the '<em><b>Base Classifier</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PROPERTY_SPECIFIC_TYPE__BASE_CLASSIFIER = eINSTANCE.getPropertySpecificType_Base_Classifier();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.NestedConnectorEndImpl <em>Nested Connector End</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.NestedConnectorEndImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getNestedConnectorEnd()
+ * @generated
+ */
+ EClass NESTED_CONNECTOR_END = eINSTANCE.getNestedConnectorEnd();
+
+ /**
+ * The meta object literal for the '<em><b>Base Connector End</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference NESTED_CONNECTOR_END__BASE_CONNECTOR_END = eINSTANCE.getNestedConnectorEnd_Base_ConnectorEnd();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ElementPropertyPathImpl <em>Element Property Path</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.ElementPropertyPathImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getElementPropertyPath()
+ * @generated
+ */
+ EClass ELEMENT_PROPERTY_PATH = eINSTANCE.getElementPropertyPath();
+
+ /**
+ * The meta object literal for the '<em><b>Base Element</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ELEMENT_PROPERTY_PATH__BASE_ELEMENT = eINSTANCE.getElementPropertyPath_Base_Element();
+
+ /**
+ * The meta object literal for the '<em><b>Property Path</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ELEMENT_PROPERTY_PATH__PROPERTY_PATH = eINSTANCE.getElementPropertyPath_PropertyPath();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.DirectedRelationshipPropertyPathImpl <em>Directed Relationship Property Path</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.DirectedRelationshipPropertyPathImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getDirectedRelationshipPropertyPath()
+ * @generated
+ */
+ EClass DIRECTED_RELATIONSHIP_PROPERTY_PATH = eINSTANCE.getDirectedRelationshipPropertyPath();
+
+ /**
+ * The meta object literal for the '<em><b>Base Directed Relationship</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP = eINSTANCE.getDirectedRelationshipPropertyPath_Base_DirectedRelationship();
+
+ /**
+ * The meta object literal for the '<em><b>Source Property Path</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_PROPERTY_PATH = eINSTANCE.getDirectedRelationshipPropertyPath_SourcePropertyPath();
+
+ /**
+ * The meta object literal for the '<em><b>Target Property Path</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_PROPERTY_PATH = eINSTANCE.getDirectedRelationshipPropertyPath_TargetPropertyPath();
+
+ /**
+ * The meta object literal for the '<em><b>Source Context</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT = eINSTANCE.getDirectedRelationshipPropertyPath_SourceContext();
+
+ /**
+ * The meta object literal for the '<em><b>Target Context</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT = eINSTANCE.getDirectedRelationshipPropertyPath_TargetContext();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.EndPathMultiplicityImpl <em>End Path Multiplicity</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.EndPathMultiplicityImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getEndPathMultiplicity()
+ * @generated
+ */
+ EClass END_PATH_MULTIPLICITY = eINSTANCE.getEndPathMultiplicity();
+
+ /**
+ * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference END_PATH_MULTIPLICITY__BASE_PROPERTY = eINSTANCE.getEndPathMultiplicity_Base_Property();
+
+ /**
+ * The meta object literal for the '<em><b>Lower</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute END_PATH_MULTIPLICITY__LOWER = eINSTANCE.getEndPathMultiplicity_Lower();
+
+ /**
+ * The meta object literal for the '<em><b>Upper</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute END_PATH_MULTIPLICITY__UPPER = eINSTANCE.getEndPathMultiplicity_Upper();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.BoundReferenceImpl <em>Bound Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BoundReferenceImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getBoundReference()
+ * @generated
+ */
+ EClass BOUND_REFERENCE = eINSTANCE.getBoundReference();
+
+ /**
+ * The meta object literal for the '<em><b>Bound End</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference BOUND_REFERENCE__BOUND_END = eINSTANCE.getBoundReference_BoundEnd();
+
+ /**
+ * The meta object literal for the '<em><b>Binding Path</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference BOUND_REFERENCE__BINDING_PATH = eINSTANCE.getBoundReference_BindingPath();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.AdjunctPropertyImpl <em>Adjunct Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.AdjunctPropertyImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getAdjunctProperty()
+ * @generated
+ */
+ EClass ADJUNCT_PROPERTY = eINSTANCE.getAdjunctProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ADJUNCT_PROPERTY__BASE_PROPERTY = eINSTANCE.getAdjunctProperty_Base_Property();
+
+ /**
+ * The meta object literal for the '<em><b>Principal</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ADJUNCT_PROPERTY__PRINCIPAL = eINSTANCE.getAdjunctProperty_Principal();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ClassifierBehaviorPropertyImpl <em>Classifier Behavior Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.ClassifierBehaviorPropertyImpl
+ * @see org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl#getClassifierBehaviorProperty()
+ * @generated
+ */
+ EClass CLASSIFIER_BEHAVIOR_PROPERTY = eINSTANCE.getClassifierBehaviorProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CLASSIFIER_BEHAVIOR_PROPERTY__BASE_PROPERTY = eINSTANCE.getClassifierBehaviorProperty_Base_Property();
+
+ }
+
+} //BlocksPackage
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BoundReference.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BoundReference.java
new file mode 100644
index 00000000000..fa48685ecfa
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/BoundReference.java
@@ -0,0 +1,103 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.uml2.uml.ConnectorEnd;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Bound Reference</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.BoundReference#getBoundEnd <em>Bound End</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.BoundReference#getBindingPath <em>Binding Path</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getBoundReference()
+ * @model
+ * @generated
+ */
+public interface BoundReference extends EndPathMultiplicity {
+ /**
+ * Returns the value of the '<em><b>Bound End</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Gives a connector end of a binding connector opposite to the end linked to the stereotyped property, or linked to a property that generalizes the stereotyped one through redefinition.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Bound End</em>' reference.
+ * @see #setBoundEnd(ConnectorEnd)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getBoundReference_BoundEnd()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ ConnectorEnd getBoundEnd();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.BoundReference#getBoundEnd <em>Bound End</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Bound End</em>' reference.
+ * @see #getBoundEnd()
+ * @generated
+ */
+ void setBoundEnd(ConnectorEnd value);
+
+ /**
+ * Returns the value of the '<em><b>Binding Path</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.Property}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Gives the propertyPath of the NestedConnectorEnd applied, if any, to the boundEnd, appended to the role of the boundEnd.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Binding Path</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getBoundReference_BindingPath()
+ * @model required="true" transient="true" volatile="true" derived="true"
+ * @generated
+ */
+ EList<Property> getBindingPath();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>Binding Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
+ * @see #getBindingPath()
+ * @generated
+ */
+ Property getBindingPath(String name, Type type);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>Binding Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
+ * @see #getBindingPath()
+ * @generated
+ */
+ Property getBindingPath(String name, Type type, boolean ignoreCase, EClass eClass);
+
+} // BoundReference
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ClassifierBehaviorProperty.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ClassifierBehaviorProperty.java
new file mode 100644
index 00000000000..357be9f3620
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ClassifierBehaviorProperty.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Classifier Behavior Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * The ClassifierBehaviorProperty stereotype can be applied to properties to constrain their values to be the executions of classifier behaviors. The value of properties with ClassifierBehaviorProperty applied are the executions of classifier behaviors invoked by instantiation of the block that owns the stereotyped property or one of its specializations.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.ClassifierBehaviorProperty#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getClassifierBehaviorProperty()
+ * @model
+ * @generated
+ */
+public interface ClassifierBehaviorProperty extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Property</em>' reference.
+ * @see #setBase_Property(Property)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getClassifierBehaviorProperty_Base_Property()
+ * @model ordered="false"
+ * @generated
+ */
+ Property getBase_Property();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.ClassifierBehaviorProperty#getBase_Property <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Property</em>' reference.
+ * @see #getBase_Property()
+ * @generated
+ */
+ void setBase_Property(Property value);
+
+} // ClassifierBehaviorProperty
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ConnectorProperty.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ConnectorProperty.java
new file mode 100644
index 00000000000..d47278a00c6
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ConnectorProperty.java
@@ -0,0 +1,89 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Connector;
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Connector Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * Connectors can be typed by association classes that are stereotyped by Block (association blocks). These connectors specify instances (links) of the association block that exist due to instantiation of the block owning or inheriting the connector. The value of a connector property on an instance of a block will be exactly those link objects that are instances of the association block typing the connector referred to by the connector property.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.ConnectorProperty#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.ConnectorProperty#getConnector <em>Connector</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getConnectorProperty()
+ * @model
+ * @generated
+ */
+public interface ConnectorProperty extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Property</em>' reference.
+ * @see #setBase_Property(Property)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getConnectorProperty_Base_Property()
+ * @model ordered="false"
+ * @generated
+ */
+ Property getBase_Property();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.ConnectorProperty#getBase_Property <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Property</em>' reference.
+ * @see #getBase_Property()
+ * @generated
+ */
+ void setBase_Property(Property value);
+
+ /**
+ * Returns the value of the '<em><b>Connector</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * A connector of the block owning the property on which the stereotype is applied.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Connector</em>' reference.
+ * @see #setConnector(Connector)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getConnectorProperty_Connector()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Connector getConnector();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.ConnectorProperty#getConnector <em>Connector</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Connector</em>' reference.
+ * @see #getConnector()
+ * @generated
+ */
+ void setConnector(Connector value);
+
+} // ConnectorProperty
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/DirectedRelationshipPropertyPath.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/DirectedRelationshipPropertyPath.java
new file mode 100644
index 00000000000..8429480f8a4
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/DirectedRelationshipPropertyPath.java
@@ -0,0 +1,204 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Classifier;
+import org.eclipse.uml2.uml.DirectedRelationship;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Directed Relationship Property Path</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getBase_DirectedRelationship <em>Base Directed Relationship</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getSourcePropertyPath <em>Source Property Path</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getTargetPropertyPath <em>Target Property Path</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getSourceContext <em>Source Context</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getTargetContext <em>Target Context</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getDirectedRelationshipPropertyPath()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DirectedRelationshipPropertyPath extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Directed Relationship</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Directed Relationship</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Directed Relationship</em>' reference.
+ * @see #setBase_DirectedRelationship(DirectedRelationship)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getDirectedRelationshipPropertyPath_Base_DirectedRelationship()
+ * @model ordered="false"
+ * @generated
+ */
+ DirectedRelationship getBase_DirectedRelationship();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getBase_DirectedRelationship <em>Base Directed Relationship</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Directed Relationship</em>' reference.
+ * @see #getBase_DirectedRelationship()
+ * @generated
+ */
+ void setBase_DirectedRelationship(DirectedRelationship value);
+
+ /**
+ * Returns the value of the '<em><b>Source Property Path</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.Property}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Source Property Path</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Source Property Path</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getDirectedRelationshipPropertyPath_SourcePropertyPath()
+ * @model
+ * @generated
+ */
+ EList<Property> getSourcePropertyPath();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>Source Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
+ * @see #getSourcePropertyPath()
+ * @generated
+ */
+ Property getSourcePropertyPath(String name, Type type);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>Source Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
+ * @see #getSourcePropertyPath()
+ * @generated
+ */
+ Property getSourcePropertyPath(String name, Type type, boolean ignoreCase, EClass eClass);
+
+ /**
+ * Returns the value of the '<em><b>Target Property Path</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.Property}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Target Property Path</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Target Property Path</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getDirectedRelationshipPropertyPath_TargetPropertyPath()
+ * @model
+ * @generated
+ */
+ EList<Property> getTargetPropertyPath();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>Target Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
+ * @see #getTargetPropertyPath()
+ * @generated
+ */
+ Property getTargetPropertyPath(String name, Type type);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>Target Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
+ * @see #getTargetPropertyPath()
+ * @generated
+ */
+ Property getTargetPropertyPath(String name, Type type, boolean ignoreCase, EClass eClass);
+
+ /**
+ * Returns the value of the '<em><b>Source Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Source Context</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Source Context</em>' reference.
+ * @see #setSourceContext(Classifier)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getDirectedRelationshipPropertyPath_SourceContext()
+ * @model ordered="false"
+ * @generated
+ */
+ Classifier getSourceContext();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getSourceContext <em>Source Context</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Source Context</em>' reference.
+ * @see #getSourceContext()
+ * @generated
+ */
+ void setSourceContext(Classifier value);
+
+ /**
+ * Returns the value of the '<em><b>Target Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Target Context</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Target Context</em>' reference.
+ * @see #setTargetContext(Classifier)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getDirectedRelationshipPropertyPath_TargetContext()
+ * @model ordered="false"
+ * @generated
+ */
+ Classifier getTargetContext();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath#getTargetContext <em>Target Context</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Target Context</em>' reference.
+ * @see #getTargetContext()
+ * @generated
+ */
+ void setTargetContext(Classifier value);
+
+} // DirectedRelationshipPropertyPath
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/DistributedProperty.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/DistributedProperty.java
new file mode 100644
index 00000000000..4a4bdb32972
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/DistributedProperty.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Distributed Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * DistributedProperty is a stereotype of Property used to apply a probability distribution to the values of the property. Specific distributions should be defined as subclasses of the DistributedProperty stereotype with the operands of the distributions represented by properties of those stereotype subclasses.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.DistributedProperty#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getDistributedProperty()
+ * @model
+ * @generated
+ */
+public interface DistributedProperty extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Property</em>' reference.
+ * @see #setBase_Property(Property)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getDistributedProperty_Base_Property()
+ * @model ordered="false"
+ * @generated
+ */
+ Property getBase_Property();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.DistributedProperty#getBase_Property <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Property</em>' reference.
+ * @see #getBase_Property()
+ * @generated
+ */
+ void setBase_Property(Property value);
+
+} // DistributedProperty
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ElementPropertyPath.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ElementPropertyPath.java
new file mode 100644
index 00000000000..21ecba1042d
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ElementPropertyPath.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Element Property Path</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath#getBase_Element <em>Base Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath#getPropertyPath <em>Property Path</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getElementPropertyPath()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ElementPropertyPath extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Element</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Element</em>' reference.
+ * @see #setBase_Element(Element)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getElementPropertyPath_Base_Element()
+ * @model ordered="false"
+ * @generated
+ */
+ Element getBase_Element();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath#getBase_Element <em>Base Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Element</em>' reference.
+ * @see #getBase_Element()
+ * @generated
+ */
+ void setBase_Element(Element value);
+
+ /**
+ * Returns the value of the '<em><b>Property Path</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.Property}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The propertyPath list of the NestedConnectorEnd stereotype must identify a path of containing properties that identify the connected property in the context of the block that owns the connector. The ordering of properties is from a property of the block that owns the connector, through a property of each intermediate block that types the preceding property, until a property is reached that contains a connector end property within its type. The connector end property is not included in the propertyPath list, but instead is held by the role property of the UML ConnectorEnd metaclass.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Property Path</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getElementPropertyPath_PropertyPath()
+ * @model required="true"
+ * @generated
+ */
+ EList<Property> getPropertyPath();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
+ * @see #getPropertyPath()
+ * @generated
+ */
+ Property getPropertyPath(String name, Type type);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.Property} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.Property} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
+ * @see #getPropertyPath()
+ * @generated
+ */
+ Property getPropertyPath(String name, Type type, boolean ignoreCase, EClass eClass);
+
+} // ElementPropertyPath
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/EndPathMultiplicity.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/EndPathMultiplicity.java
new file mode 100644
index 00000000000..5d059658070
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/EndPathMultiplicity.java
@@ -0,0 +1,112 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>End Path Multiplicity</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity#getLower <em>Lower</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity#getUpper <em>Upper</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getEndPathMultiplicity()
+ * @model
+ * @generated
+ */
+public interface EndPathMultiplicity extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Property</em>' reference.
+ * @see #setBase_Property(Property)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getEndPathMultiplicity_Base_Property()
+ * @model ordered="false"
+ * @generated
+ */
+ Property getBase_Property();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity#getBase_Property <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Property</em>' reference.
+ * @see #getBase_Property()
+ * @generated
+ */
+ void setBase_Property(Property value);
+
+ /**
+ * Returns the value of the '<em><b>Lower</b></em>' attribute.
+ * The default value is <code>"0"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Gives the minimum number of values of the property at the end of the related bindingPath, for each object reached by navigation along the bindingPath from an instance of the block owning the property to which EndPathMultiplicity is applied
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Lower</em>' attribute.
+ * @see #setLower(int)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getEndPathMultiplicity_Lower()
+ * @model default="0" dataType="org.eclipse.uml2.types.Integer" ordered="false"
+ * @generated
+ */
+ int getLower();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity#getLower <em>Lower</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Lower</em>' attribute.
+ * @see #getLower()
+ * @generated
+ */
+ void setLower(int value);
+
+ /**
+ * Returns the value of the '<em><b>Upper</b></em>' attribute.
+ * The default value is <code>"-1"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Gives the maximum number of values of the property at the end of the related bindingPath, for each object reached by navigation along the bindingPath from an instance of the block owning the property to which EndPathMultiplicity is applied.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Upper</em>' attribute.
+ * @see #setUpper(int)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getEndPathMultiplicity_Upper()
+ * @model default="-1" dataType="org.eclipse.uml2.types.UnlimitedNatural" ordered="false"
+ * @generated
+ */
+ int getUpper();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity#getUpper <em>Upper</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Upper</em>' attribute.
+ * @see #getUpper()
+ * @generated
+ */
+ void setUpper(int value);
+
+} // EndPathMultiplicity
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/NestedConnectorEnd.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/NestedConnectorEnd.java
new file mode 100644
index 00000000000..bef3afe3f1b
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/NestedConnectorEnd.java
@@ -0,0 +1,60 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.uml2.uml.ConnectorEnd;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Nested Connector End</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * The NestedConnectorEnd stereotype of UML ConnectorEnd extends a UML ConnectorEnd so that the connected property may be identified by a multi-level path of accessible properties from the block that owns the connector.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.NestedConnectorEnd#getBase_ConnectorEnd <em>Base Connector End</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getNestedConnectorEnd()
+ * @model
+ * @generated
+ */
+public interface NestedConnectorEnd extends ElementPropertyPath {
+ /**
+ * Returns the value of the '<em><b>Base Connector End</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Connector End</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Connector End</em>' reference.
+ * @see #setBase_ConnectorEnd(ConnectorEnd)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getNestedConnectorEnd_Base_ConnectorEnd()
+ * @model ordered="false"
+ * @generated
+ */
+ ConnectorEnd getBase_ConnectorEnd();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.NestedConnectorEnd#getBase_ConnectorEnd <em>Base Connector End</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Connector End</em>' reference.
+ * @see #getBase_ConnectorEnd()
+ * @generated
+ */
+ void setBase_ConnectorEnd(ConnectorEnd value);
+
+} // NestedConnectorEnd
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ParticipantProperty.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ParticipantProperty.java
new file mode 100644
index 00000000000..8c47bfab66b
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ParticipantProperty.java
@@ -0,0 +1,88 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Participant Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * The Block stereotype extends Class, so it can be applied to any specialization of Class, including Association Classes. These are informally called “association blocks.” An association block can own properties and connectors, like any other block. Each instance of an association block can link together instances of the end classifiers of the association. To refer to linked objects and values of an instance of an association block, it is necessary for the modeler to specify which (participant) properties of the association block identify the instances being linked at which end of the association. The value of a participant property on an instance (link) of the association block is the value or object at the end of the link corresponding to this end of the association.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.ParticipantProperty#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.ParticipantProperty#getEnd <em>End</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getParticipantProperty()
+ * @model
+ * @generated
+ */
+public interface ParticipantProperty extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Property</em>' reference.
+ * @see #setBase_Property(Property)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getParticipantProperty_Base_Property()
+ * @model ordered="false"
+ * @generated
+ */
+ Property getBase_Property();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.ParticipantProperty#getBase_Property <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Property</em>' reference.
+ * @see #getBase_Property()
+ * @generated
+ */
+ void setBase_Property(Property value);
+
+ /**
+ * Returns the value of the '<em><b>End</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * A member end of the association block owning the property on which the stereotype is applied.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>End</em>' reference.
+ * @see #setEnd(Property)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getParticipantProperty_End()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Property getEnd();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.ParticipantProperty#getEnd <em>End</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>End</em>' reference.
+ * @see #getEnd()
+ * @generated
+ */
+ void setEnd(Property value);
+
+} // ParticipantProperty
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/PropertySpecificType.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/PropertySpecificType.java
new file mode 100644
index 00000000000..ab9e4083e65
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/PropertySpecificType.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Classifier;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Property Specific Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * The PropertySpecificType stereotype should automatically be applied to the classifier which types a property with a propertyspecific type. This classifier can contain definitions of new or redefined features which extend the original classifier referenced by the property-specific type.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.PropertySpecificType#getBase_Classifier <em>Base Classifier</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getPropertySpecificType()
+ * @model
+ * @generated
+ */
+public interface PropertySpecificType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Classifier</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Classifier</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Classifier</em>' reference.
+ * @see #setBase_Classifier(Classifier)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getPropertySpecificType_Base_Classifier()
+ * @model ordered="false"
+ * @generated
+ */
+ Classifier getBase_Classifier();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.PropertySpecificType#getBase_Classifier <em>Base Classifier</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Classifier</em>' reference.
+ * @see #getBase_Classifier()
+ * @generated
+ */
+ void setBase_Classifier(Classifier value);
+
+} // PropertySpecificType
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ValueType.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ValueType.java
new file mode 100644
index 00000000000..0a373924036
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/ValueType.java
@@ -0,0 +1,115 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.DataType;
+import org.eclipse.uml2.uml.InstanceSpecification;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Value Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A ValueType defines types of values that may be used to express information about a system, but cannot be identified as the target of any reference. Since a value cannot be identified except by means of the value itself, each such value within a model is independent of any other, unless other forms of constraints are imposed. Value types may be used to type properties, operation parameters, or potentially other elements within SysML. SysML defines ValueType as a stereotype of UML DataType to establish a more neutral term for system values that may never be given a concrete data representation.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.ValueType#getBase_DataType <em>Base Data Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.ValueType#getUnit <em>Unit</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.ValueType#getQuantityKind <em>Quantity Kind</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getValueType()
+ * @model
+ * @generated
+ */
+public interface ValueType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Data Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Data Type</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Data Type</em>' reference.
+ * @see #setBase_DataType(DataType)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getValueType_Base_DataType()
+ * @model ordered="false"
+ * @generated
+ */
+ DataType getBase_DataType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.ValueType#getBase_DataType <em>Base Data Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Data Type</em>' reference.
+ * @see #getBase_DataType()
+ * @generated
+ */
+ void setBase_DataType(DataType value);
+
+ /**
+ * Returns the value of the '<em><b>Unit</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * A quantity in terms of which the magnitudes of other quantities that have the same dimension can be stated, as identified by an instance of the Unit stereotype.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Unit</em>' reference.
+ * @see #setUnit(InstanceSpecification)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getValueType_Unit()
+ * @model ordered="false"
+ * @generated
+ */
+ InstanceSpecification getUnit();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.ValueType#getUnit <em>Unit</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Unit</em>' reference.
+ * @see #getUnit()
+ * @generated
+ */
+ void setUnit(InstanceSpecification value);
+
+ /**
+ * Returns the value of the '<em><b>Quantity Kind</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * A kind of quantity that may be stated by means of defined units, as identified by an instance of the Dimension stereotype. A value type may optionally specify a dimension without any unit. Such a value has no concrete representation, but may be used to express a value in an abstract form independent of any specific units.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Quantity Kind</em>' reference.
+ * @see #setQuantityKind(InstanceSpecification)
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#getValueType_QuantityKind()
+ * @model ordered="false"
+ * @generated
+ */
+ InstanceSpecification getQuantityKind();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.blocks.ValueType#getQuantityKind <em>Quantity Kind</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Quantity Kind</em>' reference.
+ * @see #getQuantityKind()
+ * @generated
+ */
+ void setQuantityKind(InstanceSpecification value);
+
+} // ValueType
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/AdjunctPropertyImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/AdjunctPropertyImpl.java
new file mode 100644
index 00000000000..26d8bfef117
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/AdjunctPropertyImpl.java
@@ -0,0 +1,225 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.AdjunctProperty;
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Adjunct Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.AdjunctPropertyImpl#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.AdjunctPropertyImpl#getPrincipal <em>Principal</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AdjunctPropertyImpl extends MinimalEObjectImpl.Container implements AdjunctProperty {
+ /**
+ * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Property()
+ * @generated
+ * @ordered
+ */
+ protected Property base_Property;
+
+ /**
+ * The cached value of the '{@link #getPrincipal() <em>Principal</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPrincipal()
+ * @generated
+ * @ordered
+ */
+ protected Element principal;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AdjunctPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.ADJUNCT_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBase_Property() {
+ if (base_Property != null && base_Property.eIsProxy()) {
+ InternalEObject oldBase_Property = (InternalEObject)base_Property;
+ base_Property = (Property)eResolveProxy(oldBase_Property);
+ if (base_Property != oldBase_Property) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.ADJUNCT_PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+ }
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetBase_Property() {
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Property(Property newBase_Property) {
+ Property oldBase_Property = base_Property;
+ base_Property = newBase_Property;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.ADJUNCT_PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Element getPrincipal() {
+ if (principal != null && principal.eIsProxy()) {
+ InternalEObject oldPrincipal = (InternalEObject)principal;
+ principal = (Element)eResolveProxy(oldPrincipal);
+ if (principal != oldPrincipal) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.ADJUNCT_PROPERTY__PRINCIPAL, oldPrincipal, principal));
+ }
+ }
+ return principal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Element basicGetPrincipal() {
+ return principal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPrincipal(Element newPrincipal) {
+ Element oldPrincipal = principal;
+ principal = newPrincipal;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.ADJUNCT_PROPERTY__PRINCIPAL, oldPrincipal, principal));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.ADJUNCT_PROPERTY__BASE_PROPERTY:
+ if (resolve) return getBase_Property();
+ return basicGetBase_Property();
+ case BlocksPackage.ADJUNCT_PROPERTY__PRINCIPAL:
+ if (resolve) return getPrincipal();
+ return basicGetPrincipal();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.ADJUNCT_PROPERTY__BASE_PROPERTY:
+ setBase_Property((Property)newValue);
+ return;
+ case BlocksPackage.ADJUNCT_PROPERTY__PRINCIPAL:
+ setPrincipal((Element)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.ADJUNCT_PROPERTY__BASE_PROPERTY:
+ setBase_Property((Property)null);
+ return;
+ case BlocksPackage.ADJUNCT_PROPERTY__PRINCIPAL:
+ setPrincipal((Element)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.ADJUNCT_PROPERTY__BASE_PROPERTY:
+ return base_Property != null;
+ case BlocksPackage.ADJUNCT_PROPERTY__PRINCIPAL:
+ return principal != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //AdjunctPropertyImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BindingConnectorImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BindingConnectorImpl.java
new file mode 100644
index 00000000000..12938f43ac1
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BindingConnectorImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BindingConnector;
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+import org.eclipse.uml2.uml.Connector;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Binding Connector</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.BindingConnectorImpl#getBase_Connector <em>Base Connector</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class BindingConnectorImpl extends MinimalEObjectImpl.Container implements BindingConnector {
+ /**
+ * The cached value of the '{@link #getBase_Connector() <em>Base Connector</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Connector()
+ * @generated
+ * @ordered
+ */
+ protected Connector base_Connector;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected BindingConnectorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.BINDING_CONNECTOR;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Connector getBase_Connector() {
+ if (base_Connector != null && base_Connector.eIsProxy()) {
+ InternalEObject oldBase_Connector = (InternalEObject)base_Connector;
+ base_Connector = (Connector)eResolveProxy(oldBase_Connector);
+ if (base_Connector != oldBase_Connector) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.BINDING_CONNECTOR__BASE_CONNECTOR, oldBase_Connector, base_Connector));
+ }
+ }
+ return base_Connector;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Connector basicGetBase_Connector() {
+ return base_Connector;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Connector(Connector newBase_Connector) {
+ Connector oldBase_Connector = base_Connector;
+ base_Connector = newBase_Connector;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.BINDING_CONNECTOR__BASE_CONNECTOR, oldBase_Connector, base_Connector));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.BINDING_CONNECTOR__BASE_CONNECTOR:
+ if (resolve) return getBase_Connector();
+ return basicGetBase_Connector();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.BINDING_CONNECTOR__BASE_CONNECTOR:
+ setBase_Connector((Connector)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.BINDING_CONNECTOR__BASE_CONNECTOR:
+ setBase_Connector((Connector)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.BINDING_CONNECTOR__BASE_CONNECTOR:
+ return base_Connector != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //BindingConnectorImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BlockImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BlockImpl.java
new file mode 100644
index 00000000000..1489fc452e9
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BlockImpl.java
@@ -0,0 +1,230 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.Block;
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Block</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.BlockImpl#getBase_Class <em>Base Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.BlockImpl#isEncapsulated <em>Is Encapsulated</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class BlockImpl extends MinimalEObjectImpl.Container implements Block {
+ /**
+ * The cached value of the '{@link #getBase_Class() <em>Base Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Class()
+ * @generated
+ * @ordered
+ */
+ protected org.eclipse.uml2.uml.Class base_Class;
+
+ /**
+ * The default value of the '{@link #isEncapsulated() <em>Is Encapsulated</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isEncapsulated()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean IS_ENCAPSULATED_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isEncapsulated() <em>Is Encapsulated</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isEncapsulated()
+ * @generated
+ * @ordered
+ */
+ protected boolean isEncapsulated = IS_ENCAPSULATED_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected BlockImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.BLOCK;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Class getBase_Class() {
+ if (base_Class != null && base_Class.eIsProxy()) {
+ InternalEObject oldBase_Class = (InternalEObject)base_Class;
+ base_Class = (org.eclipse.uml2.uml.Class)eResolveProxy(oldBase_Class);
+ if (base_Class != oldBase_Class) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.BLOCK__BASE_CLASS, oldBase_Class, base_Class));
+ }
+ }
+ return base_Class;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Class basicGetBase_Class() {
+ return base_Class;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Class(org.eclipse.uml2.uml.Class newBase_Class) {
+ org.eclipse.uml2.uml.Class oldBase_Class = base_Class;
+ base_Class = newBase_Class;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.BLOCK__BASE_CLASS, oldBase_Class, base_Class));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isEncapsulated() {
+ return isEncapsulated;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setIsEncapsulated(boolean newIsEncapsulated) {
+ boolean oldIsEncapsulated = isEncapsulated;
+ isEncapsulated = newIsEncapsulated;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.BLOCK__IS_ENCAPSULATED, oldIsEncapsulated, isEncapsulated));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.BLOCK__BASE_CLASS:
+ if (resolve) return getBase_Class();
+ return basicGetBase_Class();
+ case BlocksPackage.BLOCK__IS_ENCAPSULATED:
+ return isEncapsulated();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.BLOCK__BASE_CLASS:
+ setBase_Class((org.eclipse.uml2.uml.Class)newValue);
+ return;
+ case BlocksPackage.BLOCK__IS_ENCAPSULATED:
+ setIsEncapsulated((Boolean)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.BLOCK__BASE_CLASS:
+ setBase_Class((org.eclipse.uml2.uml.Class)null);
+ return;
+ case BlocksPackage.BLOCK__IS_ENCAPSULATED:
+ setIsEncapsulated(IS_ENCAPSULATED_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.BLOCK__BASE_CLASS:
+ return base_Class != null;
+ case BlocksPackage.BLOCK__IS_ENCAPSULATED:
+ return isEncapsulated != IS_ENCAPSULATED_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (isEncapsulated: "); //$NON-NLS-1$
+ result.append(isEncapsulated);
+ result.append(')');
+ return result.toString();
+ }
+
+} //BlockImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BlocksFactoryImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BlocksFactoryImpl.java
new file mode 100644
index 00000000000..fee0ba97376
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BlocksFactoryImpl.java
@@ -0,0 +1,222 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.sysml14.blocks.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class BlocksFactoryImpl extends EFactoryImpl implements BlocksFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static BlocksFactory init() {
+ try {
+ BlocksFactory theBlocksFactory = (BlocksFactory)EPackage.Registry.INSTANCE.getEFactory(BlocksPackage.eNS_URI);
+ if (theBlocksFactory != null) {
+ return theBlocksFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new BlocksFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public BlocksFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case BlocksPackage.VALUE_TYPE: return createValueType();
+ case BlocksPackage.DISTRIBUTED_PROPERTY: return createDistributedProperty();
+ case BlocksPackage.CONNECTOR_PROPERTY: return createConnectorProperty();
+ case BlocksPackage.PARTICIPANT_PROPERTY: return createParticipantProperty();
+ case BlocksPackage.BINDING_CONNECTOR: return createBindingConnector();
+ case BlocksPackage.BLOCK: return createBlock();
+ case BlocksPackage.PROPERTY_SPECIFIC_TYPE: return createPropertySpecificType();
+ case BlocksPackage.NESTED_CONNECTOR_END: return createNestedConnectorEnd();
+ case BlocksPackage.END_PATH_MULTIPLICITY: return createEndPathMultiplicity();
+ case BlocksPackage.BOUND_REFERENCE: return createBoundReference();
+ case BlocksPackage.ADJUNCT_PROPERTY: return createAdjunctProperty();
+ case BlocksPackage.CLASSIFIER_BEHAVIOR_PROPERTY: return createClassifierBehaviorProperty();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ValueType createValueType() {
+ ValueTypeImpl valueType = new ValueTypeImpl();
+ return valueType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DistributedProperty createDistributedProperty() {
+ DistributedPropertyImpl distributedProperty = new DistributedPropertyImpl();
+ return distributedProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConnectorProperty createConnectorProperty() {
+ ConnectorPropertyImpl connectorProperty = new ConnectorPropertyImpl();
+ return connectorProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ParticipantProperty createParticipantProperty() {
+ ParticipantPropertyImpl participantProperty = new ParticipantPropertyImpl();
+ return participantProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public BindingConnector createBindingConnector() {
+ BindingConnectorImpl bindingConnector = new BindingConnectorImpl();
+ return bindingConnector;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Block createBlock() {
+ BlockImpl block = new BlockImpl();
+ return block;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PropertySpecificType createPropertySpecificType() {
+ PropertySpecificTypeImpl propertySpecificType = new PropertySpecificTypeImpl();
+ return propertySpecificType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NestedConnectorEnd createNestedConnectorEnd() {
+ NestedConnectorEndImpl nestedConnectorEnd = new NestedConnectorEndImpl();
+ return nestedConnectorEnd;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EndPathMultiplicity createEndPathMultiplicity() {
+ EndPathMultiplicityImpl endPathMultiplicity = new EndPathMultiplicityImpl();
+ return endPathMultiplicity;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public BoundReference createBoundReference() {
+ BoundReferenceImpl boundReference = new BoundReferenceImpl();
+ return boundReference;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AdjunctProperty createAdjunctProperty() {
+ AdjunctPropertyImpl adjunctProperty = new AdjunctPropertyImpl();
+ return adjunctProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ClassifierBehaviorProperty createClassifierBehaviorProperty() {
+ ClassifierBehaviorPropertyImpl classifierBehaviorProperty = new ClassifierBehaviorPropertyImpl();
+ return classifierBehaviorProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public BlocksPackage getBlocksPackage() {
+ return (BlocksPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static BlocksPackage getPackage() {
+ return BlocksPackage.eINSTANCE;
+ }
+
+} //BlocksFactoryImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BlocksPackageImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BlocksPackageImpl.java
new file mode 100644
index 00000000000..4eb3bd201d4
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BlocksPackageImpl.java
@@ -0,0 +1,840 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl;
+
+import org.eclipse.papyrus.sysml14.allocations.AllocationsPackage;
+
+import org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.AdjunctProperty;
+import org.eclipse.papyrus.sysml14.blocks.BindingConnector;
+import org.eclipse.papyrus.sysml14.blocks.Block;
+import org.eclipse.papyrus.sysml14.blocks.BlocksFactory;
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml14.blocks.BoundReference;
+import org.eclipse.papyrus.sysml14.blocks.ClassifierBehaviorProperty;
+import org.eclipse.papyrus.sysml14.blocks.ConnectorProperty;
+import org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath;
+import org.eclipse.papyrus.sysml14.blocks.DistributedProperty;
+import org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath;
+import org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity;
+import org.eclipse.papyrus.sysml14.blocks.NestedConnectorEnd;
+import org.eclipse.papyrus.sysml14.blocks.ParticipantProperty;
+import org.eclipse.papyrus.sysml14.blocks.PropertySpecificType;
+import org.eclipse.papyrus.sysml14.blocks.ValueType;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintblocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+
+import org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+
+import org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class BlocksPackageImpl extends EPackageImpl implements BlocksPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass valueTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass distributedPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass connectorPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass participantPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass bindingConnectorEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass blockEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass propertySpecificTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass nestedConnectorEndEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass elementPropertyPathEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass directedRelationshipPropertyPathEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass endPathMultiplicityEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass boundReferenceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass adjunctPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass classifierBehaviorPropertyEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private BlocksPackageImpl() {
+ super(eNS_URI, BlocksFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link BlocksPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static BlocksPackage init() {
+ if (isInited) return (BlocksPackage)EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI);
+
+ // Obtain or create and register package
+ BlocksPackageImpl theBlocksPackage = (BlocksPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof BlocksPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new BlocksPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ StandardPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ PortandflowsPackageImpl thePortandflowsPackage = (PortandflowsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) instanceof PortandflowsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) : PortandflowsPackage.eINSTANCE);
+ ActivitiesPackageImpl theActivitiesPackage = (ActivitiesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) instanceof ActivitiesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) : ActivitiesPackage.eINSTANCE);
+ ModelelementsPackageImpl theModelelementsPackage = (ModelelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) instanceof ModelelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) : ModelelementsPackage.eINSTANCE);
+ ConstraintblocksPackageImpl theConstraintblocksPackage = (ConstraintblocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) instanceof ConstraintblocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) : ConstraintblocksPackage.eINSTANCE);
+ AllocationsPackageImpl theAllocationsPackage = (AllocationsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) instanceof AllocationsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) : AllocationsPackage.eINSTANCE);
+ RequirementsPackageImpl theRequirementsPackage = (RequirementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) instanceof RequirementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) : RequirementsPackage.eINSTANCE);
+ DeprecatedelementsPackageImpl theDeprecatedelementsPackage = (DeprecatedelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) instanceof DeprecatedelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) : DeprecatedelementsPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theBlocksPackage.createPackageContents();
+ thePortandflowsPackage.createPackageContents();
+ theActivitiesPackage.createPackageContents();
+ theModelelementsPackage.createPackageContents();
+ theConstraintblocksPackage.createPackageContents();
+ theAllocationsPackage.createPackageContents();
+ theRequirementsPackage.createPackageContents();
+ theDeprecatedelementsPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theBlocksPackage.initializePackageContents();
+ thePortandflowsPackage.initializePackageContents();
+ theActivitiesPackage.initializePackageContents();
+ theModelelementsPackage.initializePackageContents();
+ theConstraintblocksPackage.initializePackageContents();
+ theAllocationsPackage.initializePackageContents();
+ theRequirementsPackage.initializePackageContents();
+ theDeprecatedelementsPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theBlocksPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(BlocksPackage.eNS_URI, theBlocksPackage);
+ return theBlocksPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getValueType() {
+ return valueTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getValueType_Base_DataType() {
+ return (EReference)valueTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getValueType_Unit() {
+ return (EReference)valueTypeEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getValueType_QuantityKind() {
+ return (EReference)valueTypeEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDistributedProperty() {
+ return distributedPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDistributedProperty_Base_Property() {
+ return (EReference)distributedPropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getConnectorProperty() {
+ return connectorPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getConnectorProperty_Base_Property() {
+ return (EReference)connectorPropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getConnectorProperty_Connector() {
+ return (EReference)connectorPropertyEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getParticipantProperty() {
+ return participantPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getParticipantProperty_Base_Property() {
+ return (EReference)participantPropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getParticipantProperty_End() {
+ return (EReference)participantPropertyEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getBindingConnector() {
+ return bindingConnectorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getBindingConnector_Base_Connector() {
+ return (EReference)bindingConnectorEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getBlock() {
+ return blockEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getBlock_Base_Class() {
+ return (EReference)blockEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getBlock_IsEncapsulated() {
+ return (EAttribute)blockEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getPropertySpecificType() {
+ return propertySpecificTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getPropertySpecificType_Base_Classifier() {
+ return (EReference)propertySpecificTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getNestedConnectorEnd() {
+ return nestedConnectorEndEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getNestedConnectorEnd_Base_ConnectorEnd() {
+ return (EReference)nestedConnectorEndEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getElementPropertyPath() {
+ return elementPropertyPathEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getElementPropertyPath_Base_Element() {
+ return (EReference)elementPropertyPathEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getElementPropertyPath_PropertyPath() {
+ return (EReference)elementPropertyPathEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDirectedRelationshipPropertyPath() {
+ return directedRelationshipPropertyPathEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDirectedRelationshipPropertyPath_Base_DirectedRelationship() {
+ return (EReference)directedRelationshipPropertyPathEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDirectedRelationshipPropertyPath_SourcePropertyPath() {
+ return (EReference)directedRelationshipPropertyPathEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDirectedRelationshipPropertyPath_TargetPropertyPath() {
+ return (EReference)directedRelationshipPropertyPathEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDirectedRelationshipPropertyPath_SourceContext() {
+ return (EReference)directedRelationshipPropertyPathEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDirectedRelationshipPropertyPath_TargetContext() {
+ return (EReference)directedRelationshipPropertyPathEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getEndPathMultiplicity() {
+ return endPathMultiplicityEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getEndPathMultiplicity_Base_Property() {
+ return (EReference)endPathMultiplicityEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getEndPathMultiplicity_Lower() {
+ return (EAttribute)endPathMultiplicityEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getEndPathMultiplicity_Upper() {
+ return (EAttribute)endPathMultiplicityEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getBoundReference() {
+ return boundReferenceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getBoundReference_BoundEnd() {
+ return (EReference)boundReferenceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getBoundReference_BindingPath() {
+ return (EReference)boundReferenceEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAdjunctProperty() {
+ return adjunctPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAdjunctProperty_Base_Property() {
+ return (EReference)adjunctPropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAdjunctProperty_Principal() {
+ return (EReference)adjunctPropertyEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getClassifierBehaviorProperty() {
+ return classifierBehaviorPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getClassifierBehaviorProperty_Base_Property() {
+ return (EReference)classifierBehaviorPropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public BlocksFactory getBlocksFactory() {
+ return (BlocksFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ valueTypeEClass = createEClass(VALUE_TYPE);
+ createEReference(valueTypeEClass, VALUE_TYPE__BASE_DATA_TYPE);
+ createEReference(valueTypeEClass, VALUE_TYPE__UNIT);
+ createEReference(valueTypeEClass, VALUE_TYPE__QUANTITY_KIND);
+
+ distributedPropertyEClass = createEClass(DISTRIBUTED_PROPERTY);
+ createEReference(distributedPropertyEClass, DISTRIBUTED_PROPERTY__BASE_PROPERTY);
+
+ connectorPropertyEClass = createEClass(CONNECTOR_PROPERTY);
+ createEReference(connectorPropertyEClass, CONNECTOR_PROPERTY__BASE_PROPERTY);
+ createEReference(connectorPropertyEClass, CONNECTOR_PROPERTY__CONNECTOR);
+
+ participantPropertyEClass = createEClass(PARTICIPANT_PROPERTY);
+ createEReference(participantPropertyEClass, PARTICIPANT_PROPERTY__BASE_PROPERTY);
+ createEReference(participantPropertyEClass, PARTICIPANT_PROPERTY__END);
+
+ bindingConnectorEClass = createEClass(BINDING_CONNECTOR);
+ createEReference(bindingConnectorEClass, BINDING_CONNECTOR__BASE_CONNECTOR);
+
+ blockEClass = createEClass(BLOCK);
+ createEReference(blockEClass, BLOCK__BASE_CLASS);
+ createEAttribute(blockEClass, BLOCK__IS_ENCAPSULATED);
+
+ propertySpecificTypeEClass = createEClass(PROPERTY_SPECIFIC_TYPE);
+ createEReference(propertySpecificTypeEClass, PROPERTY_SPECIFIC_TYPE__BASE_CLASSIFIER);
+
+ nestedConnectorEndEClass = createEClass(NESTED_CONNECTOR_END);
+ createEReference(nestedConnectorEndEClass, NESTED_CONNECTOR_END__BASE_CONNECTOR_END);
+
+ elementPropertyPathEClass = createEClass(ELEMENT_PROPERTY_PATH);
+ createEReference(elementPropertyPathEClass, ELEMENT_PROPERTY_PATH__BASE_ELEMENT);
+ createEReference(elementPropertyPathEClass, ELEMENT_PROPERTY_PATH__PROPERTY_PATH);
+
+ directedRelationshipPropertyPathEClass = createEClass(DIRECTED_RELATIONSHIP_PROPERTY_PATH);
+ createEReference(directedRelationshipPropertyPathEClass, DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP);
+ createEReference(directedRelationshipPropertyPathEClass, DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_PROPERTY_PATH);
+ createEReference(directedRelationshipPropertyPathEClass, DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_PROPERTY_PATH);
+ createEReference(directedRelationshipPropertyPathEClass, DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT);
+ createEReference(directedRelationshipPropertyPathEClass, DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT);
+
+ endPathMultiplicityEClass = createEClass(END_PATH_MULTIPLICITY);
+ createEReference(endPathMultiplicityEClass, END_PATH_MULTIPLICITY__BASE_PROPERTY);
+ createEAttribute(endPathMultiplicityEClass, END_PATH_MULTIPLICITY__LOWER);
+ createEAttribute(endPathMultiplicityEClass, END_PATH_MULTIPLICITY__UPPER);
+
+ boundReferenceEClass = createEClass(BOUND_REFERENCE);
+ createEReference(boundReferenceEClass, BOUND_REFERENCE__BOUND_END);
+ createEReference(boundReferenceEClass, BOUND_REFERENCE__BINDING_PATH);
+
+ adjunctPropertyEClass = createEClass(ADJUNCT_PROPERTY);
+ createEReference(adjunctPropertyEClass, ADJUNCT_PROPERTY__BASE_PROPERTY);
+ createEReference(adjunctPropertyEClass, ADJUNCT_PROPERTY__PRINCIPAL);
+
+ classifierBehaviorPropertyEClass = createEClass(CLASSIFIER_BEHAVIOR_PROPERTY);
+ createEReference(classifierBehaviorPropertyEClass, CLASSIFIER_BEHAVIOR_PROPERTY__BASE_PROPERTY);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ UMLPackage theUMLPackage = (UMLPackage)EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ nestedConnectorEndEClass.getESuperTypes().add(this.getElementPropertyPath());
+ boundReferenceEClass.getESuperTypes().add(this.getEndPathMultiplicity());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(valueTypeEClass, ValueType.class, "ValueType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getValueType_Base_DataType(), theUMLPackage.getDataType(), null, "base_DataType", null, 0, 1, ValueType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getValueType_Unit(), theUMLPackage.getInstanceSpecification(), null, "unit", null, 0, 1, ValueType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getValueType_QuantityKind(), theUMLPackage.getInstanceSpecification(), null, "quantityKind", null, 0, 1, ValueType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(distributedPropertyEClass, DistributedProperty.class, "DistributedProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getDistributedProperty_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, DistributedProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(connectorPropertyEClass, ConnectorProperty.class, "ConnectorProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getConnectorProperty_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, ConnectorProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getConnectorProperty_Connector(), theUMLPackage.getConnector(), null, "connector", null, 1, 1, ConnectorProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(participantPropertyEClass, ParticipantProperty.class, "ParticipantProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getParticipantProperty_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, ParticipantProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getParticipantProperty_End(), theUMLPackage.getProperty(), null, "end", null, 1, 1, ParticipantProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(bindingConnectorEClass, BindingConnector.class, "BindingConnector", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getBindingConnector_Base_Connector(), theUMLPackage.getConnector(), null, "base_Connector", null, 0, 1, BindingConnector.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(blockEClass, Block.class, "Block", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getBlock_Base_Class(), theUMLPackage.getClass_(), null, "base_Class", null, 0, 1, Block.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getBlock_IsEncapsulated(), theTypesPackage.getBoolean(), "isEncapsulated", null, 0, 1, Block.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(propertySpecificTypeEClass, PropertySpecificType.class, "PropertySpecificType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getPropertySpecificType_Base_Classifier(), theUMLPackage.getClassifier(), null, "base_Classifier", null, 0, 1, PropertySpecificType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(nestedConnectorEndEClass, NestedConnectorEnd.class, "NestedConnectorEnd", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getNestedConnectorEnd_Base_ConnectorEnd(), theUMLPackage.getConnectorEnd(), null, "base_ConnectorEnd", null, 0, 1, NestedConnectorEnd.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(elementPropertyPathEClass, ElementPropertyPath.class, "ElementPropertyPath", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getElementPropertyPath_Base_Element(), theUMLPackage.getElement(), null, "base_Element", null, 0, 1, ElementPropertyPath.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getElementPropertyPath_PropertyPath(), theUMLPackage.getProperty(), null, "propertyPath", null, 1, -1, ElementPropertyPath.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(directedRelationshipPropertyPathEClass, DirectedRelationshipPropertyPath.class, "DirectedRelationshipPropertyPath", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getDirectedRelationshipPropertyPath_Base_DirectedRelationship(), theUMLPackage.getDirectedRelationship(), null, "base_DirectedRelationship", null, 0, 1, DirectedRelationshipPropertyPath.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getDirectedRelationshipPropertyPath_SourcePropertyPath(), theUMLPackage.getProperty(), null, "sourcePropertyPath", null, 0, -1, DirectedRelationshipPropertyPath.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getDirectedRelationshipPropertyPath_TargetPropertyPath(), theUMLPackage.getProperty(), null, "targetPropertyPath", null, 0, -1, DirectedRelationshipPropertyPath.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getDirectedRelationshipPropertyPath_SourceContext(), theUMLPackage.getClassifier(), null, "sourceContext", null, 0, 1, DirectedRelationshipPropertyPath.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getDirectedRelationshipPropertyPath_TargetContext(), theUMLPackage.getClassifier(), null, "targetContext", null, 0, 1, DirectedRelationshipPropertyPath.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(endPathMultiplicityEClass, EndPathMultiplicity.class, "EndPathMultiplicity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getEndPathMultiplicity_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, EndPathMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getEndPathMultiplicity_Lower(), theTypesPackage.getInteger(), "lower", "0", 0, 1, EndPathMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$
+ initEAttribute(getEndPathMultiplicity_Upper(), theTypesPackage.getUnlimitedNatural(), "upper", "-1", 0, 1, EndPathMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$
+
+ initEClass(boundReferenceEClass, BoundReference.class, "BoundReference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getBoundReference_BoundEnd(), theUMLPackage.getConnectorEnd(), null, "boundEnd", null, 1, 1, BoundReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getBoundReference_BindingPath(), theUMLPackage.getProperty(), null, "bindingPath", null, 1, -1, BoundReference.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(adjunctPropertyEClass, AdjunctProperty.class, "AdjunctProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getAdjunctProperty_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, AdjunctProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getAdjunctProperty_Principal(), theUMLPackage.getElement(), null, "principal", null, 1, 1, AdjunctProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(classifierBehaviorPropertyEClass, ClassifierBehaviorProperty.class, "ClassifierBehaviorProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getClassifierBehaviorProperty_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, ClassifierBehaviorProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/uml2/2.0.0/UML
+ createUMLAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/uml2/2.0.0/UML</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createUMLAnnotations() {
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML"; //$NON-NLS-1$
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "originalName", "Blocks" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+} //BlocksPackageImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BoundReferenceImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BoundReferenceImpl.java
new file mode 100644
index 00000000000..8ca09b63aa0
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/BoundReferenceImpl.java
@@ -0,0 +1,220 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml14.blocks.BoundReference;
+
+import org.eclipse.uml2.uml.ConnectorEnd;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Bound Reference</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.BoundReferenceImpl#getBoundEnd <em>Bound End</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.BoundReferenceImpl#getBindingPath <em>Binding Path</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class BoundReferenceImpl extends EndPathMultiplicityImpl implements BoundReference {
+ /**
+ * The cached value of the '{@link #getBoundEnd() <em>Bound End</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBoundEnd()
+ * @generated
+ * @ordered
+ */
+ protected ConnectorEnd boundEnd;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected BoundReferenceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.BOUND_REFERENCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConnectorEnd getBoundEnd() {
+ if (boundEnd != null && boundEnd.eIsProxy()) {
+ InternalEObject oldBoundEnd = (InternalEObject)boundEnd;
+ boundEnd = (ConnectorEnd)eResolveProxy(oldBoundEnd);
+ if (boundEnd != oldBoundEnd) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.BOUND_REFERENCE__BOUND_END, oldBoundEnd, boundEnd));
+ }
+ }
+ return boundEnd;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConnectorEnd basicGetBoundEnd() {
+ return boundEnd;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBoundEnd(ConnectorEnd newBoundEnd) {
+ ConnectorEnd oldBoundEnd = boundEnd;
+ boundEnd = newBoundEnd;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.BOUND_REFERENCE__BOUND_END, oldBoundEnd, boundEnd));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Property> getBindingPath() {
+ // TODO: implement this method to return the 'Binding Path' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBindingPath(String name, Type type) {
+ return getBindingPath(name, type, false, null);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBindingPath(String name, Type type, boolean ignoreCase, EClass eClass) {
+ bindingPathLoop: for (Property bindingPath : getBindingPath()) {
+ if (eClass != null && !eClass.isInstance(bindingPath))
+ continue bindingPathLoop;
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(bindingPath.getName()) : name.equals(bindingPath.getName())))
+ continue bindingPathLoop;
+ if (type != null && !type.equals(bindingPath.getType()))
+ continue bindingPathLoop;
+ return bindingPath;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.BOUND_REFERENCE__BOUND_END:
+ if (resolve) return getBoundEnd();
+ return basicGetBoundEnd();
+ case BlocksPackage.BOUND_REFERENCE__BINDING_PATH:
+ return getBindingPath();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.BOUND_REFERENCE__BOUND_END:
+ setBoundEnd((ConnectorEnd)newValue);
+ return;
+ case BlocksPackage.BOUND_REFERENCE__BINDING_PATH:
+ getBindingPath().clear();
+ getBindingPath().addAll((Collection<? extends Property>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.BOUND_REFERENCE__BOUND_END:
+ setBoundEnd((ConnectorEnd)null);
+ return;
+ case BlocksPackage.BOUND_REFERENCE__BINDING_PATH:
+ getBindingPath().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.BOUND_REFERENCE__BOUND_END:
+ return boundEnd != null;
+ case BlocksPackage.BOUND_REFERENCE__BINDING_PATH:
+ return !getBindingPath().isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //BoundReferenceImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ClassifierBehaviorPropertyImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ClassifierBehaviorPropertyImpl.java
new file mode 100644
index 00000000000..43036985e79
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ClassifierBehaviorPropertyImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml14.blocks.ClassifierBehaviorProperty;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Classifier Behavior Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ClassifierBehaviorPropertyImpl#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ClassifierBehaviorPropertyImpl extends MinimalEObjectImpl.Container implements ClassifierBehaviorProperty {
+ /**
+ * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Property()
+ * @generated
+ * @ordered
+ */
+ protected Property base_Property;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ClassifierBehaviorPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.CLASSIFIER_BEHAVIOR_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBase_Property() {
+ if (base_Property != null && base_Property.eIsProxy()) {
+ InternalEObject oldBase_Property = (InternalEObject)base_Property;
+ base_Property = (Property)eResolveProxy(oldBase_Property);
+ if (base_Property != oldBase_Property) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.CLASSIFIER_BEHAVIOR_PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+ }
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetBase_Property() {
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Property(Property newBase_Property) {
+ Property oldBase_Property = base_Property;
+ base_Property = newBase_Property;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.CLASSIFIER_BEHAVIOR_PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.CLASSIFIER_BEHAVIOR_PROPERTY__BASE_PROPERTY:
+ if (resolve) return getBase_Property();
+ return basicGetBase_Property();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.CLASSIFIER_BEHAVIOR_PROPERTY__BASE_PROPERTY:
+ setBase_Property((Property)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.CLASSIFIER_BEHAVIOR_PROPERTY__BASE_PROPERTY:
+ setBase_Property((Property)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.CLASSIFIER_BEHAVIOR_PROPERTY__BASE_PROPERTY:
+ return base_Property != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ClassifierBehaviorPropertyImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ConnectorPropertyImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ConnectorPropertyImpl.java
new file mode 100644
index 00000000000..23bf152704d
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ConnectorPropertyImpl.java
@@ -0,0 +1,225 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml14.blocks.ConnectorProperty;
+
+import org.eclipse.uml2.uml.Connector;
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Connector Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ConnectorPropertyImpl#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ConnectorPropertyImpl#getConnector <em>Connector</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ConnectorPropertyImpl extends MinimalEObjectImpl.Container implements ConnectorProperty {
+ /**
+ * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Property()
+ * @generated
+ * @ordered
+ */
+ protected Property base_Property;
+
+ /**
+ * The cached value of the '{@link #getConnector() <em>Connector</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConnector()
+ * @generated
+ * @ordered
+ */
+ protected Connector connector;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ConnectorPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.CONNECTOR_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBase_Property() {
+ if (base_Property != null && base_Property.eIsProxy()) {
+ InternalEObject oldBase_Property = (InternalEObject)base_Property;
+ base_Property = (Property)eResolveProxy(oldBase_Property);
+ if (base_Property != oldBase_Property) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.CONNECTOR_PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+ }
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetBase_Property() {
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Property(Property newBase_Property) {
+ Property oldBase_Property = base_Property;
+ base_Property = newBase_Property;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.CONNECTOR_PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Connector getConnector() {
+ if (connector != null && connector.eIsProxy()) {
+ InternalEObject oldConnector = (InternalEObject)connector;
+ connector = (Connector)eResolveProxy(oldConnector);
+ if (connector != oldConnector) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.CONNECTOR_PROPERTY__CONNECTOR, oldConnector, connector));
+ }
+ }
+ return connector;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Connector basicGetConnector() {
+ return connector;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setConnector(Connector newConnector) {
+ Connector oldConnector = connector;
+ connector = newConnector;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.CONNECTOR_PROPERTY__CONNECTOR, oldConnector, connector));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.CONNECTOR_PROPERTY__BASE_PROPERTY:
+ if (resolve) return getBase_Property();
+ return basicGetBase_Property();
+ case BlocksPackage.CONNECTOR_PROPERTY__CONNECTOR:
+ if (resolve) return getConnector();
+ return basicGetConnector();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.CONNECTOR_PROPERTY__BASE_PROPERTY:
+ setBase_Property((Property)newValue);
+ return;
+ case BlocksPackage.CONNECTOR_PROPERTY__CONNECTOR:
+ setConnector((Connector)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.CONNECTOR_PROPERTY__BASE_PROPERTY:
+ setBase_Property((Property)null);
+ return;
+ case BlocksPackage.CONNECTOR_PROPERTY__CONNECTOR:
+ setConnector((Connector)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.CONNECTOR_PROPERTY__BASE_PROPERTY:
+ return base_Property != null;
+ case BlocksPackage.CONNECTOR_PROPERTY__CONNECTOR:
+ return connector != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ConnectorPropertyImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/DirectedRelationshipPropertyPathImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/DirectedRelationshipPropertyPathImpl.java
new file mode 100644
index 00000000000..294efe386ac
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/DirectedRelationshipPropertyPathImpl.java
@@ -0,0 +1,416 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath;
+
+import org.eclipse.uml2.uml.Classifier;
+import org.eclipse.uml2.uml.DirectedRelationship;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Directed Relationship Property Path</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.DirectedRelationshipPropertyPathImpl#getBase_DirectedRelationship <em>Base Directed Relationship</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.DirectedRelationshipPropertyPathImpl#getSourcePropertyPath <em>Source Property Path</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.DirectedRelationshipPropertyPathImpl#getTargetPropertyPath <em>Target Property Path</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.DirectedRelationshipPropertyPathImpl#getSourceContext <em>Source Context</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.DirectedRelationshipPropertyPathImpl#getTargetContext <em>Target Context</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class DirectedRelationshipPropertyPathImpl extends MinimalEObjectImpl.Container implements DirectedRelationshipPropertyPath {
+ /**
+ * The cached value of the '{@link #getBase_DirectedRelationship() <em>Base Directed Relationship</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_DirectedRelationship()
+ * @generated
+ * @ordered
+ */
+ protected DirectedRelationship base_DirectedRelationship;
+
+ /**
+ * The cached value of the '{@link #getSourcePropertyPath() <em>Source Property Path</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSourcePropertyPath()
+ * @generated
+ * @ordered
+ */
+ protected EList<Property> sourcePropertyPath;
+
+ /**
+ * The cached value of the '{@link #getTargetPropertyPath() <em>Target Property Path</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTargetPropertyPath()
+ * @generated
+ * @ordered
+ */
+ protected EList<Property> targetPropertyPath;
+
+ /**
+ * The cached value of the '{@link #getSourceContext() <em>Source Context</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSourceContext()
+ * @generated
+ * @ordered
+ */
+ protected Classifier sourceContext;
+
+ /**
+ * The cached value of the '{@link #getTargetContext() <em>Target Context</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTargetContext()
+ * @generated
+ * @ordered
+ */
+ protected Classifier targetContext;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DirectedRelationshipPropertyPathImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.DIRECTED_RELATIONSHIP_PROPERTY_PATH;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DirectedRelationship getBase_DirectedRelationship() {
+ if (base_DirectedRelationship != null && base_DirectedRelationship.eIsProxy()) {
+ InternalEObject oldBase_DirectedRelationship = (InternalEObject)base_DirectedRelationship;
+ base_DirectedRelationship = (DirectedRelationship)eResolveProxy(oldBase_DirectedRelationship);
+ if (base_DirectedRelationship != oldBase_DirectedRelationship) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP, oldBase_DirectedRelationship, base_DirectedRelationship));
+ }
+ }
+ return base_DirectedRelationship;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DirectedRelationship basicGetBase_DirectedRelationship() {
+ return base_DirectedRelationship;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_DirectedRelationship(DirectedRelationship newBase_DirectedRelationship) {
+ DirectedRelationship oldBase_DirectedRelationship = base_DirectedRelationship;
+ base_DirectedRelationship = newBase_DirectedRelationship;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP, oldBase_DirectedRelationship, base_DirectedRelationship));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Property> getSourcePropertyPath() {
+ if (sourcePropertyPath == null) {
+ sourcePropertyPath = new EObjectResolvingEList<Property>(Property.class, this, BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_PROPERTY_PATH);
+ }
+ return sourcePropertyPath;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getSourcePropertyPath(String name, Type type) {
+ return getSourcePropertyPath(name, type, false, null);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getSourcePropertyPath(String name, Type type, boolean ignoreCase, EClass eClass) {
+ sourcePropertyPathLoop: for (Property sourcePropertyPath : getSourcePropertyPath()) {
+ if (eClass != null && !eClass.isInstance(sourcePropertyPath))
+ continue sourcePropertyPathLoop;
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(sourcePropertyPath.getName()) : name.equals(sourcePropertyPath.getName())))
+ continue sourcePropertyPathLoop;
+ if (type != null && !type.equals(sourcePropertyPath.getType()))
+ continue sourcePropertyPathLoop;
+ return sourcePropertyPath;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Property> getTargetPropertyPath() {
+ if (targetPropertyPath == null) {
+ targetPropertyPath = new EObjectResolvingEList<Property>(Property.class, this, BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_PROPERTY_PATH);
+ }
+ return targetPropertyPath;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getTargetPropertyPath(String name, Type type) {
+ return getTargetPropertyPath(name, type, false, null);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getTargetPropertyPath(String name, Type type, boolean ignoreCase, EClass eClass) {
+ targetPropertyPathLoop: for (Property targetPropertyPath : getTargetPropertyPath()) {
+ if (eClass != null && !eClass.isInstance(targetPropertyPath))
+ continue targetPropertyPathLoop;
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(targetPropertyPath.getName()) : name.equals(targetPropertyPath.getName())))
+ continue targetPropertyPathLoop;
+ if (type != null && !type.equals(targetPropertyPath.getType()))
+ continue targetPropertyPathLoop;
+ return targetPropertyPath;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Classifier getSourceContext() {
+ if (sourceContext != null && sourceContext.eIsProxy()) {
+ InternalEObject oldSourceContext = (InternalEObject)sourceContext;
+ sourceContext = (Classifier)eResolveProxy(oldSourceContext);
+ if (sourceContext != oldSourceContext) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT, oldSourceContext, sourceContext));
+ }
+ }
+ return sourceContext;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Classifier basicGetSourceContext() {
+ return sourceContext;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSourceContext(Classifier newSourceContext) {
+ Classifier oldSourceContext = sourceContext;
+ sourceContext = newSourceContext;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT, oldSourceContext, sourceContext));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Classifier getTargetContext() {
+ if (targetContext != null && targetContext.eIsProxy()) {
+ InternalEObject oldTargetContext = (InternalEObject)targetContext;
+ targetContext = (Classifier)eResolveProxy(oldTargetContext);
+ if (targetContext != oldTargetContext) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT, oldTargetContext, targetContext));
+ }
+ }
+ return targetContext;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Classifier basicGetTargetContext() {
+ return targetContext;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setTargetContext(Classifier newTargetContext) {
+ Classifier oldTargetContext = targetContext;
+ targetContext = newTargetContext;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT, oldTargetContext, targetContext));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP:
+ if (resolve) return getBase_DirectedRelationship();
+ return basicGetBase_DirectedRelationship();
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_PROPERTY_PATH:
+ return getSourcePropertyPath();
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_PROPERTY_PATH:
+ return getTargetPropertyPath();
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT:
+ if (resolve) return getSourceContext();
+ return basicGetSourceContext();
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT:
+ if (resolve) return getTargetContext();
+ return basicGetTargetContext();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP:
+ setBase_DirectedRelationship((DirectedRelationship)newValue);
+ return;
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_PROPERTY_PATH:
+ getSourcePropertyPath().clear();
+ getSourcePropertyPath().addAll((Collection<? extends Property>)newValue);
+ return;
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_PROPERTY_PATH:
+ getTargetPropertyPath().clear();
+ getTargetPropertyPath().addAll((Collection<? extends Property>)newValue);
+ return;
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT:
+ setSourceContext((Classifier)newValue);
+ return;
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT:
+ setTargetContext((Classifier)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP:
+ setBase_DirectedRelationship((DirectedRelationship)null);
+ return;
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_PROPERTY_PATH:
+ getSourcePropertyPath().clear();
+ return;
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_PROPERTY_PATH:
+ getTargetPropertyPath().clear();
+ return;
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT:
+ setSourceContext((Classifier)null);
+ return;
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT:
+ setTargetContext((Classifier)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP:
+ return base_DirectedRelationship != null;
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_PROPERTY_PATH:
+ return sourcePropertyPath != null && !sourcePropertyPath.isEmpty();
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_PROPERTY_PATH:
+ return targetPropertyPath != null && !targetPropertyPath.isEmpty();
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT:
+ return sourceContext != null;
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT:
+ return targetContext != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //DirectedRelationshipPropertyPathImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/DistributedPropertyImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/DistributedPropertyImpl.java
new file mode 100644
index 00000000000..8718dbc69ed
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/DistributedPropertyImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml14.blocks.DistributedProperty;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Distributed Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.DistributedPropertyImpl#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DistributedPropertyImpl extends MinimalEObjectImpl.Container implements DistributedProperty {
+ /**
+ * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Property()
+ * @generated
+ * @ordered
+ */
+ protected Property base_Property;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DistributedPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.DISTRIBUTED_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBase_Property() {
+ if (base_Property != null && base_Property.eIsProxy()) {
+ InternalEObject oldBase_Property = (InternalEObject)base_Property;
+ base_Property = (Property)eResolveProxy(oldBase_Property);
+ if (base_Property != oldBase_Property) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.DISTRIBUTED_PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+ }
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetBase_Property() {
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Property(Property newBase_Property) {
+ Property oldBase_Property = base_Property;
+ base_Property = newBase_Property;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.DISTRIBUTED_PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.DISTRIBUTED_PROPERTY__BASE_PROPERTY:
+ if (resolve) return getBase_Property();
+ return basicGetBase_Property();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.DISTRIBUTED_PROPERTY__BASE_PROPERTY:
+ setBase_Property((Property)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.DISTRIBUTED_PROPERTY__BASE_PROPERTY:
+ setBase_Property((Property)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.DISTRIBUTED_PROPERTY__BASE_PROPERTY:
+ return base_Property != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //DistributedPropertyImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ElementPropertyPathImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ElementPropertyPathImpl.java
new file mode 100644
index 00000000000..798aeb5d2d2
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ElementPropertyPathImpl.java
@@ -0,0 +1,234 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath;
+
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Element Property Path</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ElementPropertyPathImpl#getBase_Element <em>Base Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ElementPropertyPathImpl#getPropertyPath <em>Property Path</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class ElementPropertyPathImpl extends MinimalEObjectImpl.Container implements ElementPropertyPath {
+ /**
+ * The cached value of the '{@link #getBase_Element() <em>Base Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Element()
+ * @generated
+ * @ordered
+ */
+ protected Element base_Element;
+
+ /**
+ * The cached value of the '{@link #getPropertyPath() <em>Property Path</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPropertyPath()
+ * @generated
+ * @ordered
+ */
+ protected EList<Property> propertyPath;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ElementPropertyPathImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.ELEMENT_PROPERTY_PATH;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Element getBase_Element() {
+ if (base_Element != null && base_Element.eIsProxy()) {
+ InternalEObject oldBase_Element = (InternalEObject)base_Element;
+ base_Element = (Element)eResolveProxy(oldBase_Element);
+ if (base_Element != oldBase_Element) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.ELEMENT_PROPERTY_PATH__BASE_ELEMENT, oldBase_Element, base_Element));
+ }
+ }
+ return base_Element;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Element basicGetBase_Element() {
+ return base_Element;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Element(Element newBase_Element) {
+ Element oldBase_Element = base_Element;
+ base_Element = newBase_Element;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.ELEMENT_PROPERTY_PATH__BASE_ELEMENT, oldBase_Element, base_Element));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Property> getPropertyPath() {
+ if (propertyPath == null) {
+ propertyPath = new EObjectResolvingEList<Property>(Property.class, this, BlocksPackage.ELEMENT_PROPERTY_PATH__PROPERTY_PATH);
+ }
+ return propertyPath;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getPropertyPath(String name, Type type) {
+ return getPropertyPath(name, type, false, null);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getPropertyPath(String name, Type type, boolean ignoreCase, EClass eClass) {
+ propertyPathLoop: for (Property propertyPath : getPropertyPath()) {
+ if (eClass != null && !eClass.isInstance(propertyPath))
+ continue propertyPathLoop;
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(propertyPath.getName()) : name.equals(propertyPath.getName())))
+ continue propertyPathLoop;
+ if (type != null && !type.equals(propertyPath.getType()))
+ continue propertyPathLoop;
+ return propertyPath;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.ELEMENT_PROPERTY_PATH__BASE_ELEMENT:
+ if (resolve) return getBase_Element();
+ return basicGetBase_Element();
+ case BlocksPackage.ELEMENT_PROPERTY_PATH__PROPERTY_PATH:
+ return getPropertyPath();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.ELEMENT_PROPERTY_PATH__BASE_ELEMENT:
+ setBase_Element((Element)newValue);
+ return;
+ case BlocksPackage.ELEMENT_PROPERTY_PATH__PROPERTY_PATH:
+ getPropertyPath().clear();
+ getPropertyPath().addAll((Collection<? extends Property>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.ELEMENT_PROPERTY_PATH__BASE_ELEMENT:
+ setBase_Element((Element)null);
+ return;
+ case BlocksPackage.ELEMENT_PROPERTY_PATH__PROPERTY_PATH:
+ getPropertyPath().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.ELEMENT_PROPERTY_PATH__BASE_ELEMENT:
+ return base_Element != null;
+ case BlocksPackage.ELEMENT_PROPERTY_PATH__PROPERTY_PATH:
+ return propertyPath != null && !propertyPath.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ElementPropertyPathImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/EndPathMultiplicityImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/EndPathMultiplicityImpl.java
new file mode 100644
index 00000000000..e2983b22ce1
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/EndPathMultiplicityImpl.java
@@ -0,0 +1,286 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>End Path Multiplicity</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.EndPathMultiplicityImpl#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.EndPathMultiplicityImpl#getLower <em>Lower</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.EndPathMultiplicityImpl#getUpper <em>Upper</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EndPathMultiplicityImpl extends MinimalEObjectImpl.Container implements EndPathMultiplicity {
+ /**
+ * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Property()
+ * @generated
+ * @ordered
+ */
+ protected Property base_Property;
+
+ /**
+ * The default value of the '{@link #getLower() <em>Lower</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLower()
+ * @generated
+ * @ordered
+ */
+ protected static final int LOWER_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getLower() <em>Lower</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLower()
+ * @generated
+ * @ordered
+ */
+ protected int lower = LOWER_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getUpper() <em>Upper</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getUpper()
+ * @generated
+ * @ordered
+ */
+ protected static final int UPPER_EDEFAULT = -1;
+
+ /**
+ * The cached value of the '{@link #getUpper() <em>Upper</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getUpper()
+ * @generated
+ * @ordered
+ */
+ protected int upper = UPPER_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EndPathMultiplicityImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.END_PATH_MULTIPLICITY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBase_Property() {
+ if (base_Property != null && base_Property.eIsProxy()) {
+ InternalEObject oldBase_Property = (InternalEObject)base_Property;
+ base_Property = (Property)eResolveProxy(oldBase_Property);
+ if (base_Property != oldBase_Property) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.END_PATH_MULTIPLICITY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+ }
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetBase_Property() {
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Property(Property newBase_Property) {
+ Property oldBase_Property = base_Property;
+ base_Property = newBase_Property;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.END_PATH_MULTIPLICITY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getLower() {
+ return lower;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLower(int newLower) {
+ int oldLower = lower;
+ lower = newLower;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.END_PATH_MULTIPLICITY__LOWER, oldLower, lower));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getUpper() {
+ return upper;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setUpper(int newUpper) {
+ int oldUpper = upper;
+ upper = newUpper;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.END_PATH_MULTIPLICITY__UPPER, oldUpper, upper));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.END_PATH_MULTIPLICITY__BASE_PROPERTY:
+ if (resolve) return getBase_Property();
+ return basicGetBase_Property();
+ case BlocksPackage.END_PATH_MULTIPLICITY__LOWER:
+ return getLower();
+ case BlocksPackage.END_PATH_MULTIPLICITY__UPPER:
+ return getUpper();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.END_PATH_MULTIPLICITY__BASE_PROPERTY:
+ setBase_Property((Property)newValue);
+ return;
+ case BlocksPackage.END_PATH_MULTIPLICITY__LOWER:
+ setLower((Integer)newValue);
+ return;
+ case BlocksPackage.END_PATH_MULTIPLICITY__UPPER:
+ setUpper((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.END_PATH_MULTIPLICITY__BASE_PROPERTY:
+ setBase_Property((Property)null);
+ return;
+ case BlocksPackage.END_PATH_MULTIPLICITY__LOWER:
+ setLower(LOWER_EDEFAULT);
+ return;
+ case BlocksPackage.END_PATH_MULTIPLICITY__UPPER:
+ setUpper(UPPER_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.END_PATH_MULTIPLICITY__BASE_PROPERTY:
+ return base_Property != null;
+ case BlocksPackage.END_PATH_MULTIPLICITY__LOWER:
+ return lower != LOWER_EDEFAULT;
+ case BlocksPackage.END_PATH_MULTIPLICITY__UPPER:
+ return upper != UPPER_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (lower: "); //$NON-NLS-1$
+ result.append(lower);
+ result.append(", upper: "); //$NON-NLS-1$
+ result.append(upper);
+ result.append(')');
+ return result.toString();
+ }
+
+} //EndPathMultiplicityImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/NestedConnectorEndImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/NestedConnectorEndImpl.java
new file mode 100644
index 00000000000..782c256c447
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/NestedConnectorEndImpl.java
@@ -0,0 +1,163 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml14.blocks.NestedConnectorEnd;
+
+import org.eclipse.uml2.uml.ConnectorEnd;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Nested Connector End</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.NestedConnectorEndImpl#getBase_ConnectorEnd <em>Base Connector End</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class NestedConnectorEndImpl extends ElementPropertyPathImpl implements NestedConnectorEnd {
+ /**
+ * The cached value of the '{@link #getBase_ConnectorEnd() <em>Base Connector End</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_ConnectorEnd()
+ * @generated
+ * @ordered
+ */
+ protected ConnectorEnd base_ConnectorEnd;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NestedConnectorEndImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.NESTED_CONNECTOR_END;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConnectorEnd getBase_ConnectorEnd() {
+ if (base_ConnectorEnd != null && base_ConnectorEnd.eIsProxy()) {
+ InternalEObject oldBase_ConnectorEnd = (InternalEObject)base_ConnectorEnd;
+ base_ConnectorEnd = (ConnectorEnd)eResolveProxy(oldBase_ConnectorEnd);
+ if (base_ConnectorEnd != oldBase_ConnectorEnd) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.NESTED_CONNECTOR_END__BASE_CONNECTOR_END, oldBase_ConnectorEnd, base_ConnectorEnd));
+ }
+ }
+ return base_ConnectorEnd;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConnectorEnd basicGetBase_ConnectorEnd() {
+ return base_ConnectorEnd;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_ConnectorEnd(ConnectorEnd newBase_ConnectorEnd) {
+ ConnectorEnd oldBase_ConnectorEnd = base_ConnectorEnd;
+ base_ConnectorEnd = newBase_ConnectorEnd;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.NESTED_CONNECTOR_END__BASE_CONNECTOR_END, oldBase_ConnectorEnd, base_ConnectorEnd));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.NESTED_CONNECTOR_END__BASE_CONNECTOR_END:
+ if (resolve) return getBase_ConnectorEnd();
+ return basicGetBase_ConnectorEnd();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.NESTED_CONNECTOR_END__BASE_CONNECTOR_END:
+ setBase_ConnectorEnd((ConnectorEnd)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.NESTED_CONNECTOR_END__BASE_CONNECTOR_END:
+ setBase_ConnectorEnd((ConnectorEnd)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.NESTED_CONNECTOR_END__BASE_CONNECTOR_END:
+ return base_ConnectorEnd != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //NestedConnectorEndImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ParticipantPropertyImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ParticipantPropertyImpl.java
new file mode 100644
index 00000000000..6ccd0348ecd
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ParticipantPropertyImpl.java
@@ -0,0 +1,224 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml14.blocks.ParticipantProperty;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Participant Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ParticipantPropertyImpl#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ParticipantPropertyImpl#getEnd <em>End</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ParticipantPropertyImpl extends MinimalEObjectImpl.Container implements ParticipantProperty {
+ /**
+ * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Property()
+ * @generated
+ * @ordered
+ */
+ protected Property base_Property;
+
+ /**
+ * The cached value of the '{@link #getEnd() <em>End</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEnd()
+ * @generated
+ * @ordered
+ */
+ protected Property end;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ParticipantPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.PARTICIPANT_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBase_Property() {
+ if (base_Property != null && base_Property.eIsProxy()) {
+ InternalEObject oldBase_Property = (InternalEObject)base_Property;
+ base_Property = (Property)eResolveProxy(oldBase_Property);
+ if (base_Property != oldBase_Property) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.PARTICIPANT_PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+ }
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetBase_Property() {
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Property(Property newBase_Property) {
+ Property oldBase_Property = base_Property;
+ base_Property = newBase_Property;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.PARTICIPANT_PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getEnd() {
+ if (end != null && end.eIsProxy()) {
+ InternalEObject oldEnd = (InternalEObject)end;
+ end = (Property)eResolveProxy(oldEnd);
+ if (end != oldEnd) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.PARTICIPANT_PROPERTY__END, oldEnd, end));
+ }
+ }
+ return end;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetEnd() {
+ return end;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEnd(Property newEnd) {
+ Property oldEnd = end;
+ end = newEnd;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.PARTICIPANT_PROPERTY__END, oldEnd, end));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.PARTICIPANT_PROPERTY__BASE_PROPERTY:
+ if (resolve) return getBase_Property();
+ return basicGetBase_Property();
+ case BlocksPackage.PARTICIPANT_PROPERTY__END:
+ if (resolve) return getEnd();
+ return basicGetEnd();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.PARTICIPANT_PROPERTY__BASE_PROPERTY:
+ setBase_Property((Property)newValue);
+ return;
+ case BlocksPackage.PARTICIPANT_PROPERTY__END:
+ setEnd((Property)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.PARTICIPANT_PROPERTY__BASE_PROPERTY:
+ setBase_Property((Property)null);
+ return;
+ case BlocksPackage.PARTICIPANT_PROPERTY__END:
+ setEnd((Property)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.PARTICIPANT_PROPERTY__BASE_PROPERTY:
+ return base_Property != null;
+ case BlocksPackage.PARTICIPANT_PROPERTY__END:
+ return end != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ParticipantPropertyImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/PropertySpecificTypeImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/PropertySpecificTypeImpl.java
new file mode 100644
index 00000000000..83307504af0
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/PropertySpecificTypeImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml14.blocks.PropertySpecificType;
+
+import org.eclipse.uml2.uml.Classifier;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Property Specific Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.PropertySpecificTypeImpl#getBase_Classifier <em>Base Classifier</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class PropertySpecificTypeImpl extends MinimalEObjectImpl.Container implements PropertySpecificType {
+ /**
+ * The cached value of the '{@link #getBase_Classifier() <em>Base Classifier</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Classifier()
+ * @generated
+ * @ordered
+ */
+ protected Classifier base_Classifier;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected PropertySpecificTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.PROPERTY_SPECIFIC_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Classifier getBase_Classifier() {
+ if (base_Classifier != null && base_Classifier.eIsProxy()) {
+ InternalEObject oldBase_Classifier = (InternalEObject)base_Classifier;
+ base_Classifier = (Classifier)eResolveProxy(oldBase_Classifier);
+ if (base_Classifier != oldBase_Classifier) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.PROPERTY_SPECIFIC_TYPE__BASE_CLASSIFIER, oldBase_Classifier, base_Classifier));
+ }
+ }
+ return base_Classifier;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Classifier basicGetBase_Classifier() {
+ return base_Classifier;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Classifier(Classifier newBase_Classifier) {
+ Classifier oldBase_Classifier = base_Classifier;
+ base_Classifier = newBase_Classifier;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.PROPERTY_SPECIFIC_TYPE__BASE_CLASSIFIER, oldBase_Classifier, base_Classifier));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.PROPERTY_SPECIFIC_TYPE__BASE_CLASSIFIER:
+ if (resolve) return getBase_Classifier();
+ return basicGetBase_Classifier();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.PROPERTY_SPECIFIC_TYPE__BASE_CLASSIFIER:
+ setBase_Classifier((Classifier)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.PROPERTY_SPECIFIC_TYPE__BASE_CLASSIFIER:
+ setBase_Classifier((Classifier)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.PROPERTY_SPECIFIC_TYPE__BASE_CLASSIFIER:
+ return base_Classifier != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //PropertySpecificTypeImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ValueTypeImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ValueTypeImpl.java
new file mode 100644
index 00000000000..fbf4b90b84b
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/internal/impl/ValueTypeImpl.java
@@ -0,0 +1,285 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml14.blocks.ValueType;
+
+import org.eclipse.uml2.uml.DataType;
+import org.eclipse.uml2.uml.InstanceSpecification;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Value Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ValueTypeImpl#getBase_DataType <em>Base Data Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ValueTypeImpl#getUnit <em>Unit</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.blocks.internal.impl.ValueTypeImpl#getQuantityKind <em>Quantity Kind</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ValueTypeImpl extends MinimalEObjectImpl.Container implements ValueType {
+ /**
+ * The cached value of the '{@link #getBase_DataType() <em>Base Data Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_DataType()
+ * @generated
+ * @ordered
+ */
+ protected DataType base_DataType;
+
+ /**
+ * The cached value of the '{@link #getUnit() <em>Unit</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getUnit()
+ * @generated
+ * @ordered
+ */
+ protected InstanceSpecification unit;
+
+ /**
+ * The cached value of the '{@link #getQuantityKind() <em>Quantity Kind</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getQuantityKind()
+ * @generated
+ * @ordered
+ */
+ protected InstanceSpecification quantityKind;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ValueTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BlocksPackage.Literals.VALUE_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DataType getBase_DataType() {
+ if (base_DataType != null && base_DataType.eIsProxy()) {
+ InternalEObject oldBase_DataType = (InternalEObject)base_DataType;
+ base_DataType = (DataType)eResolveProxy(oldBase_DataType);
+ if (base_DataType != oldBase_DataType) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.VALUE_TYPE__BASE_DATA_TYPE, oldBase_DataType, base_DataType));
+ }
+ }
+ return base_DataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DataType basicGetBase_DataType() {
+ return base_DataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_DataType(DataType newBase_DataType) {
+ DataType oldBase_DataType = base_DataType;
+ base_DataType = newBase_DataType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.VALUE_TYPE__BASE_DATA_TYPE, oldBase_DataType, base_DataType));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InstanceSpecification getUnit() {
+ if (unit != null && unit.eIsProxy()) {
+ InternalEObject oldUnit = (InternalEObject)unit;
+ unit = (InstanceSpecification)eResolveProxy(oldUnit);
+ if (unit != oldUnit) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.VALUE_TYPE__UNIT, oldUnit, unit));
+ }
+ }
+ return unit;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InstanceSpecification basicGetUnit() {
+ return unit;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setUnit(InstanceSpecification newUnit) {
+ InstanceSpecification oldUnit = unit;
+ unit = newUnit;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.VALUE_TYPE__UNIT, oldUnit, unit));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InstanceSpecification getQuantityKind() {
+ if (quantityKind != null && quantityKind.eIsProxy()) {
+ InternalEObject oldQuantityKind = (InternalEObject)quantityKind;
+ quantityKind = (InstanceSpecification)eResolveProxy(oldQuantityKind);
+ if (quantityKind != oldQuantityKind) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BlocksPackage.VALUE_TYPE__QUANTITY_KIND, oldQuantityKind, quantityKind));
+ }
+ }
+ return quantityKind;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InstanceSpecification basicGetQuantityKind() {
+ return quantityKind;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setQuantityKind(InstanceSpecification newQuantityKind) {
+ InstanceSpecification oldQuantityKind = quantityKind;
+ quantityKind = newQuantityKind;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BlocksPackage.VALUE_TYPE__QUANTITY_KIND, oldQuantityKind, quantityKind));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BlocksPackage.VALUE_TYPE__BASE_DATA_TYPE:
+ if (resolve) return getBase_DataType();
+ return basicGetBase_DataType();
+ case BlocksPackage.VALUE_TYPE__UNIT:
+ if (resolve) return getUnit();
+ return basicGetUnit();
+ case BlocksPackage.VALUE_TYPE__QUANTITY_KIND:
+ if (resolve) return getQuantityKind();
+ return basicGetQuantityKind();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BlocksPackage.VALUE_TYPE__BASE_DATA_TYPE:
+ setBase_DataType((DataType)newValue);
+ return;
+ case BlocksPackage.VALUE_TYPE__UNIT:
+ setUnit((InstanceSpecification)newValue);
+ return;
+ case BlocksPackage.VALUE_TYPE__QUANTITY_KIND:
+ setQuantityKind((InstanceSpecification)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.VALUE_TYPE__BASE_DATA_TYPE:
+ setBase_DataType((DataType)null);
+ return;
+ case BlocksPackage.VALUE_TYPE__UNIT:
+ setUnit((InstanceSpecification)null);
+ return;
+ case BlocksPackage.VALUE_TYPE__QUANTITY_KIND:
+ setQuantityKind((InstanceSpecification)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BlocksPackage.VALUE_TYPE__BASE_DATA_TYPE:
+ return base_DataType != null;
+ case BlocksPackage.VALUE_TYPE__UNIT:
+ return unit != null;
+ case BlocksPackage.VALUE_TYPE__QUANTITY_KIND:
+ return quantityKind != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ValueTypeImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/util/BlocksAdapterFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/util/BlocksAdapterFactory.java
new file mode 100644
index 00000000000..36d916de7ea
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/util/BlocksAdapterFactory.java
@@ -0,0 +1,360 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.sysml14.blocks.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage
+ * @generated
+ */
+public class BlocksAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static BlocksPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public BlocksAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = BlocksPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected BlocksSwitch<Adapter> modelSwitch =
+ new BlocksSwitch<Adapter>() {
+ @Override
+ public Adapter caseValueType(ValueType object) {
+ return createValueTypeAdapter();
+ }
+ @Override
+ public Adapter caseDistributedProperty(DistributedProperty object) {
+ return createDistributedPropertyAdapter();
+ }
+ @Override
+ public Adapter caseConnectorProperty(ConnectorProperty object) {
+ return createConnectorPropertyAdapter();
+ }
+ @Override
+ public Adapter caseParticipantProperty(ParticipantProperty object) {
+ return createParticipantPropertyAdapter();
+ }
+ @Override
+ public Adapter caseBindingConnector(BindingConnector object) {
+ return createBindingConnectorAdapter();
+ }
+ @Override
+ public Adapter caseBlock(Block object) {
+ return createBlockAdapter();
+ }
+ @Override
+ public Adapter casePropertySpecificType(PropertySpecificType object) {
+ return createPropertySpecificTypeAdapter();
+ }
+ @Override
+ public Adapter caseNestedConnectorEnd(NestedConnectorEnd object) {
+ return createNestedConnectorEndAdapter();
+ }
+ @Override
+ public Adapter caseElementPropertyPath(ElementPropertyPath object) {
+ return createElementPropertyPathAdapter();
+ }
+ @Override
+ public Adapter caseDirectedRelationshipPropertyPath(DirectedRelationshipPropertyPath object) {
+ return createDirectedRelationshipPropertyPathAdapter();
+ }
+ @Override
+ public Adapter caseEndPathMultiplicity(EndPathMultiplicity object) {
+ return createEndPathMultiplicityAdapter();
+ }
+ @Override
+ public Adapter caseBoundReference(BoundReference object) {
+ return createBoundReferenceAdapter();
+ }
+ @Override
+ public Adapter caseAdjunctProperty(AdjunctProperty object) {
+ return createAdjunctPropertyAdapter();
+ }
+ @Override
+ public Adapter caseClassifierBehaviorProperty(ClassifierBehaviorProperty object) {
+ return createClassifierBehaviorPropertyAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.ValueType <em>Value Type</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.ValueType
+ * @generated
+ */
+ public Adapter createValueTypeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.DistributedProperty <em>Distributed Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.DistributedProperty
+ * @generated
+ */
+ public Adapter createDistributedPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.ConnectorProperty <em>Connector Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.ConnectorProperty
+ * @generated
+ */
+ public Adapter createConnectorPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.ParticipantProperty <em>Participant Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.ParticipantProperty
+ * @generated
+ */
+ public Adapter createParticipantPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.BindingConnector <em>Binding Connector</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.BindingConnector
+ * @generated
+ */
+ public Adapter createBindingConnectorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.Block <em>Block</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.Block
+ * @generated
+ */
+ public Adapter createBlockAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.PropertySpecificType <em>Property Specific Type</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.PropertySpecificType
+ * @generated
+ */
+ public Adapter createPropertySpecificTypeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.NestedConnectorEnd <em>Nested Connector End</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.NestedConnectorEnd
+ * @generated
+ */
+ public Adapter createNestedConnectorEndAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath <em>Element Property Path</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath
+ * @generated
+ */
+ public Adapter createElementPropertyPathAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath <em>Directed Relationship Property Path</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath
+ * @generated
+ */
+ public Adapter createDirectedRelationshipPropertyPathAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity <em>End Path Multiplicity</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.EndPathMultiplicity
+ * @generated
+ */
+ public Adapter createEndPathMultiplicityAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.BoundReference <em>Bound Reference</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.BoundReference
+ * @generated
+ */
+ public Adapter createBoundReferenceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.AdjunctProperty <em>Adjunct Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.AdjunctProperty
+ * @generated
+ */
+ public Adapter createAdjunctPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.ClassifierBehaviorProperty <em>Classifier Behavior Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.ClassifierBehaviorProperty
+ * @generated
+ */
+ public Adapter createClassifierBehaviorPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //BlocksAdapterFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/util/BlocksSwitch.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/util/BlocksSwitch.java
new file mode 100644
index 00000000000..8fcea5f5012
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/blocks/util/BlocksSwitch.java
@@ -0,0 +1,391 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.blocks.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.sysml14.blocks.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.blocks.BlocksPackage
+ * @generated
+ */
+public class BlocksSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static BlocksPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public BlocksSwitch() {
+ if (modelPackage == null) {
+ modelPackage = BlocksPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case BlocksPackage.VALUE_TYPE: {
+ ValueType valueType = (ValueType)theEObject;
+ T result = caseValueType(valueType);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.DISTRIBUTED_PROPERTY: {
+ DistributedProperty distributedProperty = (DistributedProperty)theEObject;
+ T result = caseDistributedProperty(distributedProperty);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.CONNECTOR_PROPERTY: {
+ ConnectorProperty connectorProperty = (ConnectorProperty)theEObject;
+ T result = caseConnectorProperty(connectorProperty);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.PARTICIPANT_PROPERTY: {
+ ParticipantProperty participantProperty = (ParticipantProperty)theEObject;
+ T result = caseParticipantProperty(participantProperty);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.BINDING_CONNECTOR: {
+ BindingConnector bindingConnector = (BindingConnector)theEObject;
+ T result = caseBindingConnector(bindingConnector);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.BLOCK: {
+ Block block = (Block)theEObject;
+ T result = caseBlock(block);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.PROPERTY_SPECIFIC_TYPE: {
+ PropertySpecificType propertySpecificType = (PropertySpecificType)theEObject;
+ T result = casePropertySpecificType(propertySpecificType);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.NESTED_CONNECTOR_END: {
+ NestedConnectorEnd nestedConnectorEnd = (NestedConnectorEnd)theEObject;
+ T result = caseNestedConnectorEnd(nestedConnectorEnd);
+ if (result == null) result = caseElementPropertyPath(nestedConnectorEnd);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.ELEMENT_PROPERTY_PATH: {
+ ElementPropertyPath elementPropertyPath = (ElementPropertyPath)theEObject;
+ T result = caseElementPropertyPath(elementPropertyPath);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH: {
+ DirectedRelationshipPropertyPath directedRelationshipPropertyPath = (DirectedRelationshipPropertyPath)theEObject;
+ T result = caseDirectedRelationshipPropertyPath(directedRelationshipPropertyPath);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.END_PATH_MULTIPLICITY: {
+ EndPathMultiplicity endPathMultiplicity = (EndPathMultiplicity)theEObject;
+ T result = caseEndPathMultiplicity(endPathMultiplicity);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.BOUND_REFERENCE: {
+ BoundReference boundReference = (BoundReference)theEObject;
+ T result = caseBoundReference(boundReference);
+ if (result == null) result = caseEndPathMultiplicity(boundReference);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.ADJUNCT_PROPERTY: {
+ AdjunctProperty adjunctProperty = (AdjunctProperty)theEObject;
+ T result = caseAdjunctProperty(adjunctProperty);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case BlocksPackage.CLASSIFIER_BEHAVIOR_PROPERTY: {
+ ClassifierBehaviorProperty classifierBehaviorProperty = (ClassifierBehaviorProperty)theEObject;
+ T result = caseClassifierBehaviorProperty(classifierBehaviorProperty);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Value Type</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Value Type</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseValueType(ValueType object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Distributed Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Distributed Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDistributedProperty(DistributedProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Connector Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Connector Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConnectorProperty(ConnectorProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Participant Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Participant Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseParticipantProperty(ParticipantProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Binding Connector</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Binding Connector</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseBindingConnector(BindingConnector object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Block</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Block</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseBlock(Block object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Property Specific Type</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Property Specific Type</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T casePropertySpecificType(PropertySpecificType object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Nested Connector End</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Nested Connector End</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNestedConnectorEnd(NestedConnectorEnd object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Element Property Path</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Element Property Path</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseElementPropertyPath(ElementPropertyPath object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Directed Relationship Property Path</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Directed Relationship Property Path</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDirectedRelationshipPropertyPath(DirectedRelationshipPropertyPath object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>End Path Multiplicity</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>End Path Multiplicity</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEndPathMultiplicity(EndPathMultiplicity object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Bound Reference</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Bound Reference</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseBoundReference(BoundReference object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Adjunct Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Adjunct Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAdjunctProperty(AdjunctProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Classifier Behavior Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Classifier Behavior Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseClassifierBehaviorProperty(ClassifierBehaviorProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //BlocksSwitch
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/ConstraintBlock.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/ConstraintBlock.java
new file mode 100644
index 00000000000..5f874cf7907
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/ConstraintBlock.java
@@ -0,0 +1,28 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.constraintblocks;
+
+import org.eclipse.papyrus.sysml14.blocks.Block;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Constraint Block</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A constraint block is a block that packages the statement of a constraint so it may be applied in a reusable way to constrain properties of other blocks. A constraint block typically defines one or more constraint parameters, which are bound to properties of other blocks in a surrounding context where the constraint is used. Binding connectors, as defined in Chapter 8: Blocks, are used to bind each parameter of the constraint block to a property in the surrounding context. All properties of a constraint block are constraint parameters, with the exception of constraint properties that hold internally nested usages of other constraint blocks.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage#getConstraintBlock()
+ * @model
+ * @generated
+ */
+public interface ConstraintBlock extends Block {
+} // ConstraintBlock
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/ConstraintblocksFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/ConstraintblocksFactory.java
new file mode 100644
index 00000000000..a25d367e1e4
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/ConstraintblocksFactory.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.constraintblocks;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage
+ * @generated
+ */
+public interface ConstraintblocksFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ConstraintblocksFactory eINSTANCE = org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintblocksFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Constraint Block</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Constraint Block</em>'.
+ * @generated
+ */
+ ConstraintBlock createConstraintBlock();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ConstraintblocksPackage getConstraintblocksPackage();
+
+} //ConstraintblocksFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/ConstraintblocksPackage.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/ConstraintblocksPackage.java
new file mode 100644
index 00000000000..2b86cd858c0
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/ConstraintblocksPackage.java
@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.constraintblocks;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='ConstraintBlocks'"
+ * @generated
+ */
+public interface ConstraintblocksPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "constraintblocks"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/1.4/SysML/ConstraintBlocks"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "ConstraintBlocks"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ConstraintblocksPackage eINSTANCE = org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintblocksPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintBlockImpl <em>Constraint Block</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintBlockImpl
+ * @see org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintblocksPackageImpl#getConstraintBlock()
+ * @generated
+ */
+ int CONSTRAINT_BLOCK = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_BLOCK__BASE_CLASS = BlocksPackage.BLOCK__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Is Encapsulated</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_BLOCK__IS_ENCAPSULATED = BlocksPackage.BLOCK__IS_ENCAPSULATED;
+
+ /**
+ * The number of structural features of the '<em>Constraint Block</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_BLOCK_FEATURE_COUNT = BlocksPackage.BLOCK_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Constraint Block</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_BLOCK_OPERATION_COUNT = BlocksPackage.BLOCK_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.constraintblocks.ConstraintBlock <em>Constraint Block</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Constraint Block</em>'.
+ * @see org.eclipse.papyrus.sysml14.constraintblocks.ConstraintBlock
+ * @generated
+ */
+ EClass getConstraintBlock();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ConstraintblocksFactory getConstraintblocksFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintBlockImpl <em>Constraint Block</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintBlockImpl
+ * @see org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintblocksPackageImpl#getConstraintBlock()
+ * @generated
+ */
+ EClass CONSTRAINT_BLOCK = eINSTANCE.getConstraintBlock();
+
+ }
+
+} //ConstraintblocksPackage
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/internal/impl/ConstraintBlockImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/internal/impl/ConstraintBlockImpl.java
new file mode 100644
index 00000000000..91777d8e372
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/internal/impl/ConstraintBlockImpl.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.constraintblocks.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.BlockImpl;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.ConstraintBlock;
+import org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Constraint Block</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class ConstraintBlockImpl extends BlockImpl implements ConstraintBlock {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ConstraintBlockImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ConstraintblocksPackage.Literals.CONSTRAINT_BLOCK;
+ }
+
+} //ConstraintBlockImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/internal/impl/ConstraintblocksFactoryImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/internal/impl/ConstraintblocksFactoryImpl.java
new file mode 100644
index 00000000000..b863e38d03f
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/internal/impl/ConstraintblocksFactoryImpl.java
@@ -0,0 +1,101 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.constraintblocks.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ConstraintblocksFactoryImpl extends EFactoryImpl implements ConstraintblocksFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static ConstraintblocksFactory init() {
+ try {
+ ConstraintblocksFactory theConstraintblocksFactory = (ConstraintblocksFactory)EPackage.Registry.INSTANCE.getEFactory(ConstraintblocksPackage.eNS_URI);
+ if (theConstraintblocksFactory != null) {
+ return theConstraintblocksFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ConstraintblocksFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConstraintblocksFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ConstraintblocksPackage.CONSTRAINT_BLOCK: return createConstraintBlock();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConstraintBlock createConstraintBlock() {
+ ConstraintBlockImpl constraintBlock = new ConstraintBlockImpl();
+ return constraintBlock;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConstraintblocksPackage getConstraintblocksPackage() {
+ return (ConstraintblocksPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ConstraintblocksPackage getPackage() {
+ return ConstraintblocksPackage.eINSTANCE;
+ }
+
+} //ConstraintblocksFactoryImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/internal/impl/ConstraintblocksPackageImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/internal/impl/ConstraintblocksPackageImpl.java
new file mode 100644
index 00000000000..527eb9565a5
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/internal/impl/ConstraintblocksPackageImpl.java
@@ -0,0 +1,251 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.constraintblocks.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl;
+
+import org.eclipse.papyrus.sysml14.allocations.AllocationsPackage;
+
+import org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.ConstraintBlock;
+import org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksFactory;
+import org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+
+import org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+
+import org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl;
+
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ConstraintblocksPackageImpl extends EPackageImpl implements ConstraintblocksPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass constraintBlockEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ConstraintblocksPackageImpl() {
+ super(eNS_URI, ConstraintblocksFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link ConstraintblocksPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static ConstraintblocksPackage init() {
+ if (isInited) return (ConstraintblocksPackage)EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI);
+
+ // Obtain or create and register package
+ ConstraintblocksPackageImpl theConstraintblocksPackage = (ConstraintblocksPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ConstraintblocksPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ConstraintblocksPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ StandardPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ BlocksPackageImpl theBlocksPackage = (BlocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) instanceof BlocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) : BlocksPackage.eINSTANCE);
+ PortandflowsPackageImpl thePortandflowsPackage = (PortandflowsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) instanceof PortandflowsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) : PortandflowsPackage.eINSTANCE);
+ ActivitiesPackageImpl theActivitiesPackage = (ActivitiesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) instanceof ActivitiesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) : ActivitiesPackage.eINSTANCE);
+ ModelelementsPackageImpl theModelelementsPackage = (ModelelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) instanceof ModelelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) : ModelelementsPackage.eINSTANCE);
+ AllocationsPackageImpl theAllocationsPackage = (AllocationsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) instanceof AllocationsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) : AllocationsPackage.eINSTANCE);
+ RequirementsPackageImpl theRequirementsPackage = (RequirementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) instanceof RequirementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) : RequirementsPackage.eINSTANCE);
+ DeprecatedelementsPackageImpl theDeprecatedelementsPackage = (DeprecatedelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) instanceof DeprecatedelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) : DeprecatedelementsPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theConstraintblocksPackage.createPackageContents();
+ theBlocksPackage.createPackageContents();
+ thePortandflowsPackage.createPackageContents();
+ theActivitiesPackage.createPackageContents();
+ theModelelementsPackage.createPackageContents();
+ theAllocationsPackage.createPackageContents();
+ theRequirementsPackage.createPackageContents();
+ theDeprecatedelementsPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theConstraintblocksPackage.initializePackageContents();
+ theBlocksPackage.initializePackageContents();
+ thePortandflowsPackage.initializePackageContents();
+ theActivitiesPackage.initializePackageContents();
+ theModelelementsPackage.initializePackageContents();
+ theAllocationsPackage.initializePackageContents();
+ theRequirementsPackage.initializePackageContents();
+ theDeprecatedelementsPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theConstraintblocksPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ConstraintblocksPackage.eNS_URI, theConstraintblocksPackage);
+ return theConstraintblocksPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getConstraintBlock() {
+ return constraintBlockEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConstraintblocksFactory getConstraintblocksFactory() {
+ return (ConstraintblocksFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ constraintBlockEClass = createEClass(CONSTRAINT_BLOCK);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ BlocksPackage theBlocksPackage = (BlocksPackage)EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ constraintBlockEClass.getESuperTypes().add(theBlocksPackage.getBlock());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(constraintBlockEClass, ConstraintBlock.class, "ConstraintBlock", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/uml2/2.0.0/UML
+ createUMLAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/uml2/2.0.0/UML</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createUMLAnnotations() {
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML"; //$NON-NLS-1$
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "originalName", "ConstraintBlocks" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+} //ConstraintblocksPackageImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/util/ConstraintblocksAdapterFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/util/ConstraintblocksAdapterFactory.java
new file mode 100644
index 00000000000..2368b25b8b3
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/util/ConstraintblocksAdapterFactory.java
@@ -0,0 +1,146 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.constraintblocks.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.sysml14.blocks.Block;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage
+ * @generated
+ */
+public class ConstraintblocksAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ConstraintblocksPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConstraintblocksAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ConstraintblocksPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ConstraintblocksSwitch<Adapter> modelSwitch =
+ new ConstraintblocksSwitch<Adapter>() {
+ @Override
+ public Adapter caseConstraintBlock(ConstraintBlock object) {
+ return createConstraintBlockAdapter();
+ }
+ @Override
+ public Adapter caseBlock(Block object) {
+ return createBlockAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.constraintblocks.ConstraintBlock <em>Constraint Block</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.constraintblocks.ConstraintBlock
+ * @generated
+ */
+ public Adapter createConstraintBlockAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.Block <em>Block</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.Block
+ * @generated
+ */
+ public Adapter createBlockAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //ConstraintblocksAdapterFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/util/ConstraintblocksSwitch.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/util/ConstraintblocksSwitch.java
new file mode 100644
index 00000000000..69112245044
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/constraintblocks/util/ConstraintblocksSwitch.java
@@ -0,0 +1,134 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.constraintblocks.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.sysml14.blocks.Block;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage
+ * @generated
+ */
+public class ConstraintblocksSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ConstraintblocksPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConstraintblocksSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ConstraintblocksPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case ConstraintblocksPackage.CONSTRAINT_BLOCK: {
+ ConstraintBlock constraintBlock = (ConstraintBlock)theEObject;
+ T result = caseConstraintBlock(constraintBlock);
+ if (result == null) result = caseBlock(constraintBlock);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Constraint Block</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Constraint Block</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConstraintBlock(ConstraintBlock object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Block</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Block</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseBlock(Block object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //ConstraintblocksSwitch
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/Allocated.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/Allocated.java
new file mode 100644
index 00000000000..6b210e417f8
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/Allocated.java
@@ -0,0 +1,145 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Allocated</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * «allocated» is a stereotype that applies to any NamedElement that has at least one allocation relationship with another NamedElement. «allocated» elements may be designated by either the /from or /to end of an «allocate» dependency. The «allocated» stereotype provides a mechanism for a particular model element to conveniently retain and display the element at the opposite end of any «allocate» dependency. This stereotype provides for the properties “allocatedFrom” and “allocatedTo,” which are derived from the «allocate» dependency.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.Allocated#getBase_NamedElement <em>Base Named Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.Allocated#getAllocatedFrom <em>Allocated From</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.Allocated#getAllocatedTo <em>Allocated To</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getAllocated()
+ * @model
+ * @generated
+ */
+public interface Allocated extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Named Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Named Element</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Named Element</em>' reference.
+ * @see #setBase_NamedElement(NamedElement)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getAllocated_Base_NamedElement()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ NamedElement getBase_NamedElement();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Allocated#getBase_NamedElement <em>Base Named Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Named Element</em>' reference.
+ * @see #getBase_NamedElement()
+ * @generated
+ */
+ void setBase_NamedElement(NamedElement value);
+
+ /**
+ * Returns the value of the '<em><b>Allocated From</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.NamedElement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Reverse of allocatedTo: the element types and names of the set of elements that are clients (from) of an «allocate» whose supplier is extended by this stereotype (instance). The same characteristics apply as to /allocatedTo. Each allocatedFrom property will be expressed as «elementType» ElementName.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Allocated From</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getAllocated_AllocatedFrom()
+ * @model required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<NamedElement> getAllocatedFrom();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Allocated From</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getAllocatedFrom()
+ * @generated
+ */
+ NamedElement getAllocatedFrom(String name);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Allocated From</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getAllocatedFrom()
+ * @generated
+ */
+ NamedElement getAllocatedFrom(String name, boolean ignoreCase, EClass eClass);
+
+ /**
+ * Returns the value of the '<em><b>Allocated To</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.NamedElement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The element types and names of the set of elements that are suppliers (“to” end of the concrete syntax) of an «allocate» whose client is extended by this stereotype (instance). This property is the union of all suppliers to which this instance is the client, i.e., there may be more than one /allocatedTo property per allocated model element. Each allocatedTo property will be expressed as «elementType» ElementName.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Allocated To</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getAllocated_AllocatedTo()
+ * @model required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<NamedElement> getAllocatedTo();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Allocated To</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getAllocatedTo()
+ * @generated
+ */
+ NamedElement getAllocatedTo(String name);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Allocated To</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getAllocatedTo()
+ * @generated
+ */
+ NamedElement getAllocatedTo(String name, boolean ignoreCase, EClass eClass);
+
+} // Allocated
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/Deprecated.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/Deprecated.java
new file mode 100644
index 00000000000..9880819c072
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/Deprecated.java
@@ -0,0 +1,252 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Association;
+import org.eclipse.uml2.uml.DataType;
+import org.eclipse.uml2.uml.Generalization;
+import org.eclipse.uml2.uml.InstanceSpecification;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.ValueSpecification;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Deprecated</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_ValueSpecification <em>Base Value Specification</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_InstanceSpecification <em>Base Instance Specification</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Class <em>Base Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Association <em>Base Association</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getDeprecatedReason <em>Deprecated Reason</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Generalization <em>Base Generalization</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_DataType <em>Base Data Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getDeprecated()
+ * @model
+ * @generated
+ */
+public interface Deprecated extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Value Specification</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Value Specification</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Value Specification</em>' reference.
+ * @see #setBase_ValueSpecification(ValueSpecification)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getDeprecated_Base_ValueSpecification()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ ValueSpecification getBase_ValueSpecification();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_ValueSpecification <em>Base Value Specification</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Value Specification</em>' reference.
+ * @see #getBase_ValueSpecification()
+ * @generated
+ */
+ void setBase_ValueSpecification(ValueSpecification value);
+
+ /**
+ * Returns the value of the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Property</em>' reference.
+ * @see #setBase_Property(Property)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getDeprecated_Base_Property()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Property getBase_Property();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Property <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Property</em>' reference.
+ * @see #getBase_Property()
+ * @generated
+ */
+ void setBase_Property(Property value);
+
+ /**
+ * Returns the value of the '<em><b>Base Instance Specification</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Instance Specification</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Instance Specification</em>' reference.
+ * @see #setBase_InstanceSpecification(InstanceSpecification)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getDeprecated_Base_InstanceSpecification()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ InstanceSpecification getBase_InstanceSpecification();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_InstanceSpecification <em>Base Instance Specification</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Instance Specification</em>' reference.
+ * @see #getBase_InstanceSpecification()
+ * @generated
+ */
+ void setBase_InstanceSpecification(InstanceSpecification value);
+
+ /**
+ * Returns the value of the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Class</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Class</em>' reference.
+ * @see #setBase_Class(org.eclipse.uml2.uml.Class)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getDeprecated_Base_Class()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ org.eclipse.uml2.uml.Class getBase_Class();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Class <em>Base Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Class</em>' reference.
+ * @see #getBase_Class()
+ * @generated
+ */
+ void setBase_Class(org.eclipse.uml2.uml.Class value);
+
+ /**
+ * Returns the value of the '<em><b>Base Association</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Association</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Association</em>' reference.
+ * @see #setBase_Association(Association)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getDeprecated_Base_Association()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Association getBase_Association();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Association <em>Base Association</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Association</em>' reference.
+ * @see #getBase_Association()
+ * @generated
+ */
+ void setBase_Association(Association value);
+
+ /**
+ * Returns the value of the '<em><b>Deprecated Reason</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Deprecated Reason</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Deprecated Reason</em>' attribute.
+ * @see #setDeprecatedReason(String)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getDeprecated_DeprecatedReason()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getDeprecatedReason();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getDeprecatedReason <em>Deprecated Reason</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Deprecated Reason</em>' attribute.
+ * @see #getDeprecatedReason()
+ * @generated
+ */
+ void setDeprecatedReason(String value);
+
+ /**
+ * Returns the value of the '<em><b>Base Generalization</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Generalization</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Generalization</em>' reference.
+ * @see #setBase_Generalization(Generalization)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getDeprecated_Base_Generalization()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Generalization getBase_Generalization();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Generalization <em>Base Generalization</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Generalization</em>' reference.
+ * @see #getBase_Generalization()
+ * @generated
+ */
+ void setBase_Generalization(Generalization value);
+
+ /**
+ * Returns the value of the '<em><b>Base Data Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Data Type</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Data Type</em>' reference.
+ * @see #setBase_DataType(DataType)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getDeprecated_Base_DataType()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ DataType getBase_DataType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_DataType <em>Base Data Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Data Type</em>' reference.
+ * @see #getBase_DataType()
+ * @generated
+ */
+ void setBase_DataType(DataType value);
+
+} // Deprecated
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/DeprecatedelementsFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/DeprecatedelementsFactory.java
new file mode 100644
index 00000000000..13956df2937
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/DeprecatedelementsFactory.java
@@ -0,0 +1,84 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage
+ * @generated
+ */
+public interface DeprecatedelementsFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ DeprecatedelementsFactory eINSTANCE = org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Flow Port</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Flow Port</em>'.
+ * @generated
+ */
+ FlowPort createFlowPort();
+
+ /**
+ * Returns a new object of class '<em>Flow Specification</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Flow Specification</em>'.
+ * @generated
+ */
+ FlowSpecification createFlowSpecification();
+
+ /**
+ * Returns a new object of class '<em>Allocated</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Allocated</em>'.
+ * @generated
+ */
+ Allocated createAllocated();
+
+ /**
+ * Returns a new object of class '<em>Requirement Related</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Requirement Related</em>'.
+ * @generated
+ */
+ RequirementRelated createRequirementRelated();
+
+ /**
+ * Returns a new object of class '<em>Deprecated</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Deprecated</em>'.
+ * @generated
+ */
+ Deprecated createDeprecated();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ DeprecatedelementsPackage getDeprecatedelementsPackage();
+
+} //DeprecatedelementsFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/DeprecatedelementsPackage.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/DeprecatedelementsPackage.java
new file mode 100644
index 00000000000..1d51d3e5f6e
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/DeprecatedelementsPackage.java
@@ -0,0 +1,892 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='DeprecatedElements'"
+ * @generated
+ */
+public interface DeprecatedelementsPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "deprecatedelements"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/1.4/SysML/DeprecatedElements"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "DeprecatedElements"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ DeprecatedelementsPackage eINSTANCE = org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.FlowPortImpl <em>Flow Port</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.FlowPortImpl
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl#getFlowPort()
+ * @generated
+ */
+ int FLOW_PORT = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Port</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FLOW_PORT__BASE_PORT = 0;
+
+ /**
+ * The feature id for the '<em><b>Direction</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FLOW_PORT__DIRECTION = 1;
+
+ /**
+ * The feature id for the '<em><b>Is Atomic</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FLOW_PORT__IS_ATOMIC = 2;
+
+ /**
+ * The number of structural features of the '<em>Flow Port</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FLOW_PORT_FEATURE_COUNT = 3;
+
+ /**
+ * The number of operations of the '<em>Flow Port</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FLOW_PORT_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.FlowSpecificationImpl <em>Flow Specification</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.FlowSpecificationImpl
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl#getFlowSpecification()
+ * @generated
+ */
+ int FLOW_SPECIFICATION = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Interface</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FLOW_SPECIFICATION__BASE_INTERFACE = 0;
+
+ /**
+ * The number of structural features of the '<em>Flow Specification</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FLOW_SPECIFICATION_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Flow Specification</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FLOW_SPECIFICATION_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.AllocatedImpl <em>Allocated</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.AllocatedImpl
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl#getAllocated()
+ * @generated
+ */
+ int ALLOCATED = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Named Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED__BASE_NAMED_ELEMENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Allocated From</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED__ALLOCATED_FROM = 1;
+
+ /**
+ * The feature id for the '<em><b>Allocated To</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED__ALLOCATED_TO = 2;
+
+ /**
+ * The number of structural features of the '<em>Allocated</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED_FEATURE_COUNT = 3;
+
+ /**
+ * The number of operations of the '<em>Allocated</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ALLOCATED_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.RequirementRelatedImpl <em>Requirement Related</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.RequirementRelatedImpl
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl#getRequirementRelated()
+ * @generated
+ */
+ int REQUIREMENT_RELATED = 3;
+
+ /**
+ * The feature id for the '<em><b>Base Named Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT_RELATED__BASE_NAMED_ELEMENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Traced From</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT_RELATED__TRACED_FROM = 1;
+
+ /**
+ * The feature id for the '<em><b>Satisfies</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT_RELATED__SATISFIES = 2;
+
+ /**
+ * The feature id for the '<em><b>Refines</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT_RELATED__REFINES = 3;
+
+ /**
+ * The feature id for the '<em><b>Verifies</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT_RELATED__VERIFIES = 4;
+
+ /**
+ * The number of structural features of the '<em>Requirement Related</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT_RELATED_FEATURE_COUNT = 5;
+
+ /**
+ * The number of operations of the '<em>Requirement Related</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT_RELATED_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedImpl <em>Deprecated</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedImpl
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl#getDeprecated()
+ * @generated
+ */
+ int DEPRECATED = 4;
+
+ /**
+ * The feature id for the '<em><b>Base Value Specification</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPRECATED__BASE_VALUE_SPECIFICATION = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPRECATED__BASE_PROPERTY = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Instance Specification</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPRECATED__BASE_INSTANCE_SPECIFICATION = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPRECATED__BASE_CLASS = 3;
+
+ /**
+ * The feature id for the '<em><b>Base Association</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPRECATED__BASE_ASSOCIATION = 4;
+
+ /**
+ * The feature id for the '<em><b>Deprecated Reason</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPRECATED__DEPRECATED_REASON = 5;
+
+ /**
+ * The feature id for the '<em><b>Base Generalization</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPRECATED__BASE_GENERALIZATION = 6;
+
+ /**
+ * The feature id for the '<em><b>Base Data Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPRECATED__BASE_DATA_TYPE = 7;
+
+ /**
+ * The number of structural features of the '<em>Deprecated</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPRECATED_FEATURE_COUNT = 8;
+
+ /**
+ * The number of operations of the '<em>Deprecated</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DEPRECATED_OPERATION_COUNT = 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort <em>Flow Port</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Flow Port</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort
+ * @generated
+ */
+ EClass getFlowPort();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort#getBase_Port <em>Base Port</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Port</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort#getBase_Port()
+ * @see #getFlowPort()
+ * @generated
+ */
+ EReference getFlowPort_Base_Port();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort#getDirection <em>Direction</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Direction</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort#getDirection()
+ * @see #getFlowPort()
+ * @generated
+ */
+ EAttribute getFlowPort_Direction();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort#isAtomic <em>Is Atomic</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Is Atomic</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort#isAtomic()
+ * @see #getFlowPort()
+ * @generated
+ */
+ EAttribute getFlowPort_IsAtomic();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification <em>Flow Specification</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Flow Specification</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification
+ * @generated
+ */
+ EClass getFlowSpecification();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification#getBase_Interface <em>Base Interface</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Interface</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification#getBase_Interface()
+ * @see #getFlowSpecification()
+ * @generated
+ */
+ EReference getFlowSpecification_Base_Interface();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Allocated <em>Allocated</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Allocated</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Allocated
+ * @generated
+ */
+ EClass getAllocated();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Allocated#getBase_NamedElement <em>Base Named Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Named Element</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Allocated#getBase_NamedElement()
+ * @see #getAllocated()
+ * @generated
+ */
+ EReference getAllocated_Base_NamedElement();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Allocated#getAllocatedFrom <em>Allocated From</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Allocated From</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Allocated#getAllocatedFrom()
+ * @see #getAllocated()
+ * @generated
+ */
+ EReference getAllocated_AllocatedFrom();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Allocated#getAllocatedTo <em>Allocated To</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Allocated To</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Allocated#getAllocatedTo()
+ * @see #getAllocated()
+ * @generated
+ */
+ EReference getAllocated_AllocatedTo();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated <em>Requirement Related</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Requirement Related</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated
+ * @generated
+ */
+ EClass getRequirementRelated();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getBase_NamedElement <em>Base Named Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Named Element</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getBase_NamedElement()
+ * @see #getRequirementRelated()
+ * @generated
+ */
+ EReference getRequirementRelated_Base_NamedElement();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getTracedFrom <em>Traced From</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Traced From</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getTracedFrom()
+ * @see #getRequirementRelated()
+ * @generated
+ */
+ EReference getRequirementRelated_TracedFrom();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getSatisfies <em>Satisfies</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Satisfies</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getSatisfies()
+ * @see #getRequirementRelated()
+ * @generated
+ */
+ EReference getRequirementRelated_Satisfies();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getRefines <em>Refines</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Refines</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getRefines()
+ * @see #getRequirementRelated()
+ * @generated
+ */
+ EReference getRequirementRelated_Refines();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getVerifies <em>Verifies</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Verifies</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getVerifies()
+ * @see #getRequirementRelated()
+ * @generated
+ */
+ EReference getRequirementRelated_Verifies();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated <em>Deprecated</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Deprecated</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated
+ * @generated
+ */
+ EClass getDeprecated();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_ValueSpecification <em>Base Value Specification</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Value Specification</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_ValueSpecification()
+ * @see #getDeprecated()
+ * @generated
+ */
+ EReference getDeprecated_Base_ValueSpecification();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Property <em>Base Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Property()
+ * @see #getDeprecated()
+ * @generated
+ */
+ EReference getDeprecated_Base_Property();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_InstanceSpecification <em>Base Instance Specification</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Instance Specification</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_InstanceSpecification()
+ * @see #getDeprecated()
+ * @generated
+ */
+ EReference getDeprecated_Base_InstanceSpecification();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Class <em>Base Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Class</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Class()
+ * @see #getDeprecated()
+ * @generated
+ */
+ EReference getDeprecated_Base_Class();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Association <em>Base Association</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Association</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Association()
+ * @see #getDeprecated()
+ * @generated
+ */
+ EReference getDeprecated_Base_Association();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getDeprecatedReason <em>Deprecated Reason</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Deprecated Reason</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getDeprecatedReason()
+ * @see #getDeprecated()
+ * @generated
+ */
+ EAttribute getDeprecated_DeprecatedReason();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Generalization <em>Base Generalization</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Generalization</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_Generalization()
+ * @see #getDeprecated()
+ * @generated
+ */
+ EReference getDeprecated_Base_Generalization();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_DataType <em>Base Data Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Data Type</em>'.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated#getBase_DataType()
+ * @see #getDeprecated()
+ * @generated
+ */
+ EReference getDeprecated_Base_DataType();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ DeprecatedelementsFactory getDeprecatedelementsFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.FlowPortImpl <em>Flow Port</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.FlowPortImpl
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl#getFlowPort()
+ * @generated
+ */
+ EClass FLOW_PORT = eINSTANCE.getFlowPort();
+
+ /**
+ * The meta object literal for the '<em><b>Base Port</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FLOW_PORT__BASE_PORT = eINSTANCE.getFlowPort_Base_Port();
+
+ /**
+ * The meta object literal for the '<em><b>Direction</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute FLOW_PORT__DIRECTION = eINSTANCE.getFlowPort_Direction();
+
+ /**
+ * The meta object literal for the '<em><b>Is Atomic</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute FLOW_PORT__IS_ATOMIC = eINSTANCE.getFlowPort_IsAtomic();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.FlowSpecificationImpl <em>Flow Specification</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.FlowSpecificationImpl
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl#getFlowSpecification()
+ * @generated
+ */
+ EClass FLOW_SPECIFICATION = eINSTANCE.getFlowSpecification();
+
+ /**
+ * The meta object literal for the '<em><b>Base Interface</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FLOW_SPECIFICATION__BASE_INTERFACE = eINSTANCE.getFlowSpecification_Base_Interface();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.AllocatedImpl <em>Allocated</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.AllocatedImpl
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl#getAllocated()
+ * @generated
+ */
+ EClass ALLOCATED = eINSTANCE.getAllocated();
+
+ /**
+ * The meta object literal for the '<em><b>Base Named Element</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ALLOCATED__BASE_NAMED_ELEMENT = eINSTANCE.getAllocated_Base_NamedElement();
+
+ /**
+ * The meta object literal for the '<em><b>Allocated From</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ALLOCATED__ALLOCATED_FROM = eINSTANCE.getAllocated_AllocatedFrom();
+
+ /**
+ * The meta object literal for the '<em><b>Allocated To</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ALLOCATED__ALLOCATED_TO = eINSTANCE.getAllocated_AllocatedTo();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.RequirementRelatedImpl <em>Requirement Related</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.RequirementRelatedImpl
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl#getRequirementRelated()
+ * @generated
+ */
+ EClass REQUIREMENT_RELATED = eINSTANCE.getRequirementRelated();
+
+ /**
+ * The meta object literal for the '<em><b>Base Named Element</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT_RELATED__BASE_NAMED_ELEMENT = eINSTANCE.getRequirementRelated_Base_NamedElement();
+
+ /**
+ * The meta object literal for the '<em><b>Traced From</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT_RELATED__TRACED_FROM = eINSTANCE.getRequirementRelated_TracedFrom();
+
+ /**
+ * The meta object literal for the '<em><b>Satisfies</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT_RELATED__SATISFIES = eINSTANCE.getRequirementRelated_Satisfies();
+
+ /**
+ * The meta object literal for the '<em><b>Refines</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT_RELATED__REFINES = eINSTANCE.getRequirementRelated_Refines();
+
+ /**
+ * The meta object literal for the '<em><b>Verifies</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT_RELATED__VERIFIES = eINSTANCE.getRequirementRelated_Verifies();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedImpl <em>Deprecated</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedImpl
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl#getDeprecated()
+ * @generated
+ */
+ EClass DEPRECATED = eINSTANCE.getDeprecated();
+
+ /**
+ * The meta object literal for the '<em><b>Base Value Specification</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DEPRECATED__BASE_VALUE_SPECIFICATION = eINSTANCE.getDeprecated_Base_ValueSpecification();
+
+ /**
+ * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DEPRECATED__BASE_PROPERTY = eINSTANCE.getDeprecated_Base_Property();
+
+ /**
+ * The meta object literal for the '<em><b>Base Instance Specification</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DEPRECATED__BASE_INSTANCE_SPECIFICATION = eINSTANCE.getDeprecated_Base_InstanceSpecification();
+
+ /**
+ * The meta object literal for the '<em><b>Base Class</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DEPRECATED__BASE_CLASS = eINSTANCE.getDeprecated_Base_Class();
+
+ /**
+ * The meta object literal for the '<em><b>Base Association</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DEPRECATED__BASE_ASSOCIATION = eINSTANCE.getDeprecated_Base_Association();
+
+ /**
+ * The meta object literal for the '<em><b>Deprecated Reason</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DEPRECATED__DEPRECATED_REASON = eINSTANCE.getDeprecated_DeprecatedReason();
+
+ /**
+ * The meta object literal for the '<em><b>Base Generalization</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DEPRECATED__BASE_GENERALIZATION = eINSTANCE.getDeprecated_Base_Generalization();
+
+ /**
+ * The meta object literal for the '<em><b>Base Data Type</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DEPRECATED__BASE_DATA_TYPE = eINSTANCE.getDeprecated_Base_DataType();
+
+ }
+
+} //DeprecatedelementsPackage
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/FlowPort.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/FlowPort.java
new file mode 100644
index 00000000000..7b8284227db
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/FlowPort.java
@@ -0,0 +1,120 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.sysml14.portandflows.FlowDirection;
+
+import org.eclipse.uml2.uml.Port;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Flow Port</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A FlowPort is an interaction point through which input and/or output of items such as data, material, or energy may flow. This enables the owning block to declare which items it may exchange with its environment and the interaction points through which the exchange is made. We distinguish between atomic flow port and a nonatomic flow port. Atomic flow ports relay items that are classified by a single Block, ValueType, DataType, or Signal classifier. A nonatomic flow port relays items of several types as specified by a FlowSpecification. Flow ports and associated flow specifications define “what can flow” between the block and its environment, whereas item flows specify “what does flow” in a specific usage context. Flow ports relay items to their owning block or to a connector that connects them with their owner’s internal parts (internal connector).
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort#getBase_Port <em>Base Port</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort#getDirection <em>Direction</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort#isAtomic <em>Is Atomic</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getFlowPort()
+ * @model
+ * @generated
+ */
+public interface FlowPort extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Port</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Port</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Port</em>' reference.
+ * @see #setBase_Port(Port)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getFlowPort_Base_Port()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Port getBase_Port();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort#getBase_Port <em>Base Port</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Port</em>' reference.
+ * @see #getBase_Port()
+ * @generated
+ */
+ void setBase_Port(Port value);
+
+ /**
+ * Returns the value of the '<em><b>Direction</b></em>' attribute.
+ * The default value is <code>"inout"</code>.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.sysml14.portandflows.FlowDirection}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Indicates the direction in which an atomic flow port relays its items. If the direction is set to “in,” then the items are relayed from an external connector via the flow port into the flow port’s owner (or one of its parts). If the direction is set to “out,” then the items are relayed from the flow port’s owner, via the flow port, through an external connector attached to the flow port. If the direction is set to “inout,” then items can flow both ways. By default, the value is inout.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Direction</em>' attribute.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FlowDirection
+ * @see #setDirection(FlowDirection)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getFlowPort_Direction()
+ * @model default="inout" required="true" ordered="false"
+ * @generated
+ */
+ FlowDirection getDirection();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort#getDirection <em>Direction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Direction</em>' attribute.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FlowDirection
+ * @see #getDirection()
+ * @generated
+ */
+ void setDirection(FlowDirection value);
+
+ /**
+ * Returns the value of the '<em><b>Is Atomic</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This is a derived attribute (derived from the flow port’s type). For a flow port typed by a flow specification the value of this attribute is False, otherwise the value is True.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Is Atomic</em>' attribute.
+ * @see #setIsAtomic(boolean)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getFlowPort_IsAtomic()
+ * @model dataType="org.eclipse.uml2.types.Boolean" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ boolean isAtomic();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort#isAtomic <em>Is Atomic</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Is Atomic</em>' attribute.
+ * @see #isAtomic()
+ * @generated
+ */
+ void setIsAtomic(boolean value);
+
+} // FlowPort
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/FlowSpecification.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/FlowSpecification.java
new file mode 100644
index 00000000000..8ee030cb9da
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/FlowSpecification.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Interface;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Flow Specification</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A FlowSpecification specifies inputs and outputs as a set of flow properties. A flow specification is used by flow ports to specify what items can flow via the port.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification#getBase_Interface <em>Base Interface</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getFlowSpecification()
+ * @model
+ * @generated
+ */
+public interface FlowSpecification extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Interface</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Interface</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Interface</em>' reference.
+ * @see #setBase_Interface(Interface)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getFlowSpecification_Base_Interface()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Interface getBase_Interface();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification#getBase_Interface <em>Base Interface</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Interface</em>' reference.
+ * @see #getBase_Interface()
+ * @generated
+ */
+ void setBase_Interface(Interface value);
+
+} // FlowSpecification
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/RequirementRelated.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/RequirementRelated.java
new file mode 100644
index 00000000000..2d1e448df1d
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/RequirementRelated.java
@@ -0,0 +1,130 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.sysml14.requirements.Requirement;
+
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Requirement Related</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This stereotype is used to add properties to those elements that are related to requirements via the various dependencies.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getBase_NamedElement <em>Base Named Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getTracedFrom <em>Traced From</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getSatisfies <em>Satisfies</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getRefines <em>Refines</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getVerifies <em>Verifies</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getRequirementRelated()
+ * @model
+ * @generated
+ */
+public interface RequirementRelated extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Named Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Named Element</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Named Element</em>' reference.
+ * @see #setBase_NamedElement(NamedElement)
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getRequirementRelated_Base_NamedElement()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ NamedElement getBase_NamedElement();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated#getBase_NamedElement <em>Base Named Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Named Element</em>' reference.
+ * @see #getBase_NamedElement()
+ * @generated
+ */
+ void setBase_NamedElement(NamedElement value);
+
+ /**
+ * Returns the value of the '<em><b>Traced From</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.sysml14.requirements.Requirement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Derived from all requirements that are the supplier of a «trace» relationship for which this element is a client.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Traced From</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getRequirementRelated_TracedFrom()
+ * @model required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<Requirement> getTracedFrom();
+
+ /**
+ * Returns the value of the '<em><b>Satisfies</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.sysml14.requirements.Requirement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Derived from all requirements that are the supplier of a «satisfy» relationship for which this element is a client.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Satisfies</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getRequirementRelated_Satisfies()
+ * @model required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<Requirement> getSatisfies();
+
+ /**
+ * Returns the value of the '<em><b>Refines</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.sysml14.requirements.Requirement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Derived from all requirements that are the supplier of a «refine» relationship for which this element is a client.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Refines</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getRequirementRelated_Refines()
+ * @model required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<Requirement> getRefines();
+
+ /**
+ * Returns the value of the '<em><b>Verifies</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.sysml14.requirements.Requirement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Derived from all requirements that are the supplier of a «verify» relationship for which this element is a client.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Verifies</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#getRequirementRelated_Verifies()
+ * @model required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<Requirement> getVerifies();
+
+} // RequirementRelated
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/AllocatedImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/AllocatedImpl.java
new file mode 100644
index 00000000000..a6866268a51
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/AllocatedImpl.java
@@ -0,0 +1,265 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.Allocated;
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Allocated</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.AllocatedImpl#getBase_NamedElement <em>Base Named Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.AllocatedImpl#getAllocatedFrom <em>Allocated From</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.AllocatedImpl#getAllocatedTo <em>Allocated To</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AllocatedImpl extends MinimalEObjectImpl.Container implements Allocated {
+ /**
+ * The cached value of the '{@link #getBase_NamedElement() <em>Base Named Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_NamedElement()
+ * @generated
+ * @ordered
+ */
+ protected NamedElement base_NamedElement;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AllocatedImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DeprecatedelementsPackage.Literals.ALLOCATED;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getBase_NamedElement() {
+ if (base_NamedElement != null && base_NamedElement.eIsProxy()) {
+ InternalEObject oldBase_NamedElement = (InternalEObject)base_NamedElement;
+ base_NamedElement = (NamedElement)eResolveProxy(oldBase_NamedElement);
+ if (base_NamedElement != oldBase_NamedElement) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeprecatedelementsPackage.ALLOCATED__BASE_NAMED_ELEMENT, oldBase_NamedElement, base_NamedElement));
+ }
+ }
+ return base_NamedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement basicGetBase_NamedElement() {
+ return base_NamedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_NamedElement(NamedElement newBase_NamedElement) {
+ NamedElement oldBase_NamedElement = base_NamedElement;
+ base_NamedElement = newBase_NamedElement;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.ALLOCATED__BASE_NAMED_ELEMENT, oldBase_NamedElement, base_NamedElement));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<NamedElement> getAllocatedFrom() {
+ // TODO: implement this method to return the 'Allocated From' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getAllocatedFrom(String name) {
+ return getAllocatedFrom(name, false, null);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getAllocatedFrom(String name, boolean ignoreCase, EClass eClass) {
+ allocatedFromLoop: for (NamedElement allocatedFrom : getAllocatedFrom()) {
+ if (eClass != null && !eClass.isInstance(allocatedFrom))
+ continue allocatedFromLoop;
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(allocatedFrom.getName()) : name.equals(allocatedFrom.getName())))
+ continue allocatedFromLoop;
+ return allocatedFrom;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<NamedElement> getAllocatedTo() {
+ // TODO: implement this method to return the 'Allocated To' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getAllocatedTo(String name) {
+ return getAllocatedTo(name, false, null);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getAllocatedTo(String name, boolean ignoreCase, EClass eClass) {
+ allocatedToLoop: for (NamedElement allocatedTo : getAllocatedTo()) {
+ if (eClass != null && !eClass.isInstance(allocatedTo))
+ continue allocatedToLoop;
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(allocatedTo.getName()) : name.equals(allocatedTo.getName())))
+ continue allocatedToLoop;
+ return allocatedTo;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.ALLOCATED__BASE_NAMED_ELEMENT:
+ if (resolve) return getBase_NamedElement();
+ return basicGetBase_NamedElement();
+ case DeprecatedelementsPackage.ALLOCATED__ALLOCATED_FROM:
+ return getAllocatedFrom();
+ case DeprecatedelementsPackage.ALLOCATED__ALLOCATED_TO:
+ return getAllocatedTo();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.ALLOCATED__BASE_NAMED_ELEMENT:
+ setBase_NamedElement((NamedElement)newValue);
+ return;
+ case DeprecatedelementsPackage.ALLOCATED__ALLOCATED_FROM:
+ getAllocatedFrom().clear();
+ getAllocatedFrom().addAll((Collection<? extends NamedElement>)newValue);
+ return;
+ case DeprecatedelementsPackage.ALLOCATED__ALLOCATED_TO:
+ getAllocatedTo().clear();
+ getAllocatedTo().addAll((Collection<? extends NamedElement>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.ALLOCATED__BASE_NAMED_ELEMENT:
+ setBase_NamedElement((NamedElement)null);
+ return;
+ case DeprecatedelementsPackage.ALLOCATED__ALLOCATED_FROM:
+ getAllocatedFrom().clear();
+ return;
+ case DeprecatedelementsPackage.ALLOCATED__ALLOCATED_TO:
+ getAllocatedTo().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.ALLOCATED__BASE_NAMED_ELEMENT:
+ return base_NamedElement != null;
+ case DeprecatedelementsPackage.ALLOCATED__ALLOCATED_FROM:
+ return !getAllocatedFrom().isEmpty();
+ case DeprecatedelementsPackage.ALLOCATED__ALLOCATED_TO:
+ return !getAllocatedTo().isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //AllocatedImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/DeprecatedImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/DeprecatedImpl.java
new file mode 100644
index 00000000000..dbef42e9bf6
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/DeprecatedImpl.java
@@ -0,0 +1,596 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+
+import org.eclipse.uml2.uml.Association;
+import org.eclipse.uml2.uml.DataType;
+import org.eclipse.uml2.uml.Generalization;
+import org.eclipse.uml2.uml.InstanceSpecification;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.ValueSpecification;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Deprecated</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedImpl#getBase_ValueSpecification <em>Base Value Specification</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedImpl#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedImpl#getBase_InstanceSpecification <em>Base Instance Specification</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedImpl#getBase_Class <em>Base Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedImpl#getBase_Association <em>Base Association</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedImpl#getDeprecatedReason <em>Deprecated Reason</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedImpl#getBase_Generalization <em>Base Generalization</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedImpl#getBase_DataType <em>Base Data Type</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DeprecatedImpl extends MinimalEObjectImpl.Container implements org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated {
+ /**
+ * The cached value of the '{@link #getBase_ValueSpecification() <em>Base Value Specification</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_ValueSpecification()
+ * @generated
+ * @ordered
+ */
+ protected ValueSpecification base_ValueSpecification;
+
+ /**
+ * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Property()
+ * @generated
+ * @ordered
+ */
+ protected Property base_Property;
+
+ /**
+ * The cached value of the '{@link #getBase_InstanceSpecification() <em>Base Instance Specification</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_InstanceSpecification()
+ * @generated
+ * @ordered
+ */
+ protected InstanceSpecification base_InstanceSpecification;
+
+ /**
+ * The cached value of the '{@link #getBase_Class() <em>Base Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Class()
+ * @generated
+ * @ordered
+ */
+ protected org.eclipse.uml2.uml.Class base_Class;
+
+ /**
+ * The cached value of the '{@link #getBase_Association() <em>Base Association</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Association()
+ * @generated
+ * @ordered
+ */
+ protected Association base_Association;
+
+ /**
+ * The default value of the '{@link #getDeprecatedReason() <em>Deprecated Reason</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDeprecatedReason()
+ * @generated
+ * @ordered
+ */
+ protected static final String DEPRECATED_REASON_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDeprecatedReason() <em>Deprecated Reason</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDeprecatedReason()
+ * @generated
+ * @ordered
+ */
+ protected String deprecatedReason = DEPRECATED_REASON_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getBase_Generalization() <em>Base Generalization</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Generalization()
+ * @generated
+ * @ordered
+ */
+ protected Generalization base_Generalization;
+
+ /**
+ * The cached value of the '{@link #getBase_DataType() <em>Base Data Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_DataType()
+ * @generated
+ * @ordered
+ */
+ protected DataType base_DataType;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DeprecatedImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DeprecatedelementsPackage.Literals.DEPRECATED;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ValueSpecification getBase_ValueSpecification() {
+ if (base_ValueSpecification != null && base_ValueSpecification.eIsProxy()) {
+ InternalEObject oldBase_ValueSpecification = (InternalEObject)base_ValueSpecification;
+ base_ValueSpecification = (ValueSpecification)eResolveProxy(oldBase_ValueSpecification);
+ if (base_ValueSpecification != oldBase_ValueSpecification) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeprecatedelementsPackage.DEPRECATED__BASE_VALUE_SPECIFICATION, oldBase_ValueSpecification, base_ValueSpecification));
+ }
+ }
+ return base_ValueSpecification;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ValueSpecification basicGetBase_ValueSpecification() {
+ return base_ValueSpecification;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_ValueSpecification(ValueSpecification newBase_ValueSpecification) {
+ ValueSpecification oldBase_ValueSpecification = base_ValueSpecification;
+ base_ValueSpecification = newBase_ValueSpecification;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.DEPRECATED__BASE_VALUE_SPECIFICATION, oldBase_ValueSpecification, base_ValueSpecification));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBase_Property() {
+ if (base_Property != null && base_Property.eIsProxy()) {
+ InternalEObject oldBase_Property = (InternalEObject)base_Property;
+ base_Property = (Property)eResolveProxy(oldBase_Property);
+ if (base_Property != oldBase_Property) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeprecatedelementsPackage.DEPRECATED__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+ }
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetBase_Property() {
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Property(Property newBase_Property) {
+ Property oldBase_Property = base_Property;
+ base_Property = newBase_Property;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.DEPRECATED__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InstanceSpecification getBase_InstanceSpecification() {
+ if (base_InstanceSpecification != null && base_InstanceSpecification.eIsProxy()) {
+ InternalEObject oldBase_InstanceSpecification = (InternalEObject)base_InstanceSpecification;
+ base_InstanceSpecification = (InstanceSpecification)eResolveProxy(oldBase_InstanceSpecification);
+ if (base_InstanceSpecification != oldBase_InstanceSpecification) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeprecatedelementsPackage.DEPRECATED__BASE_INSTANCE_SPECIFICATION, oldBase_InstanceSpecification, base_InstanceSpecification));
+ }
+ }
+ return base_InstanceSpecification;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InstanceSpecification basicGetBase_InstanceSpecification() {
+ return base_InstanceSpecification;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_InstanceSpecification(InstanceSpecification newBase_InstanceSpecification) {
+ InstanceSpecification oldBase_InstanceSpecification = base_InstanceSpecification;
+ base_InstanceSpecification = newBase_InstanceSpecification;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.DEPRECATED__BASE_INSTANCE_SPECIFICATION, oldBase_InstanceSpecification, base_InstanceSpecification));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Class getBase_Class() {
+ if (base_Class != null && base_Class.eIsProxy()) {
+ InternalEObject oldBase_Class = (InternalEObject)base_Class;
+ base_Class = (org.eclipse.uml2.uml.Class)eResolveProxy(oldBase_Class);
+ if (base_Class != oldBase_Class) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeprecatedelementsPackage.DEPRECATED__BASE_CLASS, oldBase_Class, base_Class));
+ }
+ }
+ return base_Class;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Class basicGetBase_Class() {
+ return base_Class;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Class(org.eclipse.uml2.uml.Class newBase_Class) {
+ org.eclipse.uml2.uml.Class oldBase_Class = base_Class;
+ base_Class = newBase_Class;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.DEPRECATED__BASE_CLASS, oldBase_Class, base_Class));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Association getBase_Association() {
+ if (base_Association != null && base_Association.eIsProxy()) {
+ InternalEObject oldBase_Association = (InternalEObject)base_Association;
+ base_Association = (Association)eResolveProxy(oldBase_Association);
+ if (base_Association != oldBase_Association) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeprecatedelementsPackage.DEPRECATED__BASE_ASSOCIATION, oldBase_Association, base_Association));
+ }
+ }
+ return base_Association;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Association basicGetBase_Association() {
+ return base_Association;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Association(Association newBase_Association) {
+ Association oldBase_Association = base_Association;
+ base_Association = newBase_Association;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.DEPRECATED__BASE_ASSOCIATION, oldBase_Association, base_Association));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDeprecatedReason() {
+ return deprecatedReason;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDeprecatedReason(String newDeprecatedReason) {
+ String oldDeprecatedReason = deprecatedReason;
+ deprecatedReason = newDeprecatedReason;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.DEPRECATED__DEPRECATED_REASON, oldDeprecatedReason, deprecatedReason));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Generalization getBase_Generalization() {
+ if (base_Generalization != null && base_Generalization.eIsProxy()) {
+ InternalEObject oldBase_Generalization = (InternalEObject)base_Generalization;
+ base_Generalization = (Generalization)eResolveProxy(oldBase_Generalization);
+ if (base_Generalization != oldBase_Generalization) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeprecatedelementsPackage.DEPRECATED__BASE_GENERALIZATION, oldBase_Generalization, base_Generalization));
+ }
+ }
+ return base_Generalization;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Generalization basicGetBase_Generalization() {
+ return base_Generalization;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Generalization(Generalization newBase_Generalization) {
+ Generalization oldBase_Generalization = base_Generalization;
+ base_Generalization = newBase_Generalization;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.DEPRECATED__BASE_GENERALIZATION, oldBase_Generalization, base_Generalization));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DataType getBase_DataType() {
+ if (base_DataType != null && base_DataType.eIsProxy()) {
+ InternalEObject oldBase_DataType = (InternalEObject)base_DataType;
+ base_DataType = (DataType)eResolveProxy(oldBase_DataType);
+ if (base_DataType != oldBase_DataType) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeprecatedelementsPackage.DEPRECATED__BASE_DATA_TYPE, oldBase_DataType, base_DataType));
+ }
+ }
+ return base_DataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DataType basicGetBase_DataType() {
+ return base_DataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_DataType(DataType newBase_DataType) {
+ DataType oldBase_DataType = base_DataType;
+ base_DataType = newBase_DataType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.DEPRECATED__BASE_DATA_TYPE, oldBase_DataType, base_DataType));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.DEPRECATED__BASE_VALUE_SPECIFICATION:
+ if (resolve) return getBase_ValueSpecification();
+ return basicGetBase_ValueSpecification();
+ case DeprecatedelementsPackage.DEPRECATED__BASE_PROPERTY:
+ if (resolve) return getBase_Property();
+ return basicGetBase_Property();
+ case DeprecatedelementsPackage.DEPRECATED__BASE_INSTANCE_SPECIFICATION:
+ if (resolve) return getBase_InstanceSpecification();
+ return basicGetBase_InstanceSpecification();
+ case DeprecatedelementsPackage.DEPRECATED__BASE_CLASS:
+ if (resolve) return getBase_Class();
+ return basicGetBase_Class();
+ case DeprecatedelementsPackage.DEPRECATED__BASE_ASSOCIATION:
+ if (resolve) return getBase_Association();
+ return basicGetBase_Association();
+ case DeprecatedelementsPackage.DEPRECATED__DEPRECATED_REASON:
+ return getDeprecatedReason();
+ case DeprecatedelementsPackage.DEPRECATED__BASE_GENERALIZATION:
+ if (resolve) return getBase_Generalization();
+ return basicGetBase_Generalization();
+ case DeprecatedelementsPackage.DEPRECATED__BASE_DATA_TYPE:
+ if (resolve) return getBase_DataType();
+ return basicGetBase_DataType();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.DEPRECATED__BASE_VALUE_SPECIFICATION:
+ setBase_ValueSpecification((ValueSpecification)newValue);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_PROPERTY:
+ setBase_Property((Property)newValue);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_INSTANCE_SPECIFICATION:
+ setBase_InstanceSpecification((InstanceSpecification)newValue);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_CLASS:
+ setBase_Class((org.eclipse.uml2.uml.Class)newValue);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_ASSOCIATION:
+ setBase_Association((Association)newValue);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__DEPRECATED_REASON:
+ setDeprecatedReason((String)newValue);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_GENERALIZATION:
+ setBase_Generalization((Generalization)newValue);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_DATA_TYPE:
+ setBase_DataType((DataType)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.DEPRECATED__BASE_VALUE_SPECIFICATION:
+ setBase_ValueSpecification((ValueSpecification)null);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_PROPERTY:
+ setBase_Property((Property)null);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_INSTANCE_SPECIFICATION:
+ setBase_InstanceSpecification((InstanceSpecification)null);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_CLASS:
+ setBase_Class((org.eclipse.uml2.uml.Class)null);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_ASSOCIATION:
+ setBase_Association((Association)null);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__DEPRECATED_REASON:
+ setDeprecatedReason(DEPRECATED_REASON_EDEFAULT);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_GENERALIZATION:
+ setBase_Generalization((Generalization)null);
+ return;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_DATA_TYPE:
+ setBase_DataType((DataType)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.DEPRECATED__BASE_VALUE_SPECIFICATION:
+ return base_ValueSpecification != null;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_PROPERTY:
+ return base_Property != null;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_INSTANCE_SPECIFICATION:
+ return base_InstanceSpecification != null;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_CLASS:
+ return base_Class != null;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_ASSOCIATION:
+ return base_Association != null;
+ case DeprecatedelementsPackage.DEPRECATED__DEPRECATED_REASON:
+ return DEPRECATED_REASON_EDEFAULT == null ? deprecatedReason != null : !DEPRECATED_REASON_EDEFAULT.equals(deprecatedReason);
+ case DeprecatedelementsPackage.DEPRECATED__BASE_GENERALIZATION:
+ return base_Generalization != null;
+ case DeprecatedelementsPackage.DEPRECATED__BASE_DATA_TYPE:
+ return base_DataType != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (deprecatedReason: "); //$NON-NLS-1$
+ result.append(deprecatedReason);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DeprecatedImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/DeprecatedelementsFactoryImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/DeprecatedelementsFactoryImpl.java
new file mode 100644
index 00000000000..c7167ba6ceb
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/DeprecatedelementsFactoryImpl.java
@@ -0,0 +1,150 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.Allocated;
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsFactory;
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+import org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort;
+import org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification;
+import org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DeprecatedelementsFactoryImpl extends EFactoryImpl implements DeprecatedelementsFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static DeprecatedelementsFactory init() {
+ try {
+ DeprecatedelementsFactory theDeprecatedelementsFactory = (DeprecatedelementsFactory)EPackage.Registry.INSTANCE.getEFactory(DeprecatedelementsPackage.eNS_URI);
+ if (theDeprecatedelementsFactory != null) {
+ return theDeprecatedelementsFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new DeprecatedelementsFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeprecatedelementsFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case DeprecatedelementsPackage.FLOW_PORT: return createFlowPort();
+ case DeprecatedelementsPackage.FLOW_SPECIFICATION: return createFlowSpecification();
+ case DeprecatedelementsPackage.ALLOCATED: return createAllocated();
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED: return createRequirementRelated();
+ case DeprecatedelementsPackage.DEPRECATED: return createDeprecated();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FlowPort createFlowPort() {
+ FlowPortImpl flowPort = new FlowPortImpl();
+ return flowPort;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FlowSpecification createFlowSpecification() {
+ FlowSpecificationImpl flowSpecification = new FlowSpecificationImpl();
+ return flowSpecification;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Allocated createAllocated() {
+ AllocatedImpl allocated = new AllocatedImpl();
+ return allocated;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RequirementRelated createRequirementRelated() {
+ RequirementRelatedImpl requirementRelated = new RequirementRelatedImpl();
+ return requirementRelated;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated createDeprecated() {
+ DeprecatedImpl deprecated = new DeprecatedImpl();
+ return deprecated;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeprecatedelementsPackage getDeprecatedelementsPackage() {
+ return (DeprecatedelementsPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static DeprecatedelementsPackage getPackage() {
+ return DeprecatedelementsPackage.eINSTANCE;
+ }
+
+} //DeprecatedelementsFactoryImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/DeprecatedelementsPackageImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/DeprecatedelementsPackageImpl.java
new file mode 100644
index 00000000000..0e5d2eb1718
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/DeprecatedelementsPackageImpl.java
@@ -0,0 +1,562 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl;
+
+import org.eclipse.papyrus.sysml14.allocations.AllocationsPackage;
+
+import org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintblocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.Allocated;
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsFactory;
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+import org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort;
+import org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification;
+import org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated;
+
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+
+import org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+
+import org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DeprecatedelementsPackageImpl extends EPackageImpl implements DeprecatedelementsPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass flowPortEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass flowSpecificationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass allocatedEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass requirementRelatedEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass deprecatedEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private DeprecatedelementsPackageImpl() {
+ super(eNS_URI, DeprecatedelementsFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link DeprecatedelementsPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static DeprecatedelementsPackage init() {
+ if (isInited) return (DeprecatedelementsPackage)EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI);
+
+ // Obtain or create and register package
+ DeprecatedelementsPackageImpl theDeprecatedelementsPackage = (DeprecatedelementsPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof DeprecatedelementsPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new DeprecatedelementsPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ StandardPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ BlocksPackageImpl theBlocksPackage = (BlocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) instanceof BlocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) : BlocksPackage.eINSTANCE);
+ PortandflowsPackageImpl thePortandflowsPackage = (PortandflowsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) instanceof PortandflowsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) : PortandflowsPackage.eINSTANCE);
+ ActivitiesPackageImpl theActivitiesPackage = (ActivitiesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) instanceof ActivitiesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) : ActivitiesPackage.eINSTANCE);
+ ModelelementsPackageImpl theModelelementsPackage = (ModelelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) instanceof ModelelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) : ModelelementsPackage.eINSTANCE);
+ ConstraintblocksPackageImpl theConstraintblocksPackage = (ConstraintblocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) instanceof ConstraintblocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) : ConstraintblocksPackage.eINSTANCE);
+ AllocationsPackageImpl theAllocationsPackage = (AllocationsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) instanceof AllocationsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) : AllocationsPackage.eINSTANCE);
+ RequirementsPackageImpl theRequirementsPackage = (RequirementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) instanceof RequirementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) : RequirementsPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theDeprecatedelementsPackage.createPackageContents();
+ theBlocksPackage.createPackageContents();
+ thePortandflowsPackage.createPackageContents();
+ theActivitiesPackage.createPackageContents();
+ theModelelementsPackage.createPackageContents();
+ theConstraintblocksPackage.createPackageContents();
+ theAllocationsPackage.createPackageContents();
+ theRequirementsPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theDeprecatedelementsPackage.initializePackageContents();
+ theBlocksPackage.initializePackageContents();
+ thePortandflowsPackage.initializePackageContents();
+ theActivitiesPackage.initializePackageContents();
+ theModelelementsPackage.initializePackageContents();
+ theConstraintblocksPackage.initializePackageContents();
+ theAllocationsPackage.initializePackageContents();
+ theRequirementsPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theDeprecatedelementsPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(DeprecatedelementsPackage.eNS_URI, theDeprecatedelementsPackage);
+ return theDeprecatedelementsPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFlowPort() {
+ return flowPortEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFlowPort_Base_Port() {
+ return (EReference)flowPortEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getFlowPort_Direction() {
+ return (EAttribute)flowPortEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getFlowPort_IsAtomic() {
+ return (EAttribute)flowPortEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFlowSpecification() {
+ return flowSpecificationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFlowSpecification_Base_Interface() {
+ return (EReference)flowSpecificationEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAllocated() {
+ return allocatedEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAllocated_Base_NamedElement() {
+ return (EReference)allocatedEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAllocated_AllocatedFrom() {
+ return (EReference)allocatedEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAllocated_AllocatedTo() {
+ return (EReference)allocatedEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getRequirementRelated() {
+ return requirementRelatedEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirementRelated_Base_NamedElement() {
+ return (EReference)requirementRelatedEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirementRelated_TracedFrom() {
+ return (EReference)requirementRelatedEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirementRelated_Satisfies() {
+ return (EReference)requirementRelatedEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirementRelated_Refines() {
+ return (EReference)requirementRelatedEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirementRelated_Verifies() {
+ return (EReference)requirementRelatedEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDeprecated() {
+ return deprecatedEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeprecated_Base_ValueSpecification() {
+ return (EReference)deprecatedEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeprecated_Base_Property() {
+ return (EReference)deprecatedEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeprecated_Base_InstanceSpecification() {
+ return (EReference)deprecatedEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeprecated_Base_Class() {
+ return (EReference)deprecatedEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeprecated_Base_Association() {
+ return (EReference)deprecatedEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDeprecated_DeprecatedReason() {
+ return (EAttribute)deprecatedEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeprecated_Base_Generalization() {
+ return (EReference)deprecatedEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDeprecated_Base_DataType() {
+ return (EReference)deprecatedEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeprecatedelementsFactory getDeprecatedelementsFactory() {
+ return (DeprecatedelementsFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ flowPortEClass = createEClass(FLOW_PORT);
+ createEReference(flowPortEClass, FLOW_PORT__BASE_PORT);
+ createEAttribute(flowPortEClass, FLOW_PORT__DIRECTION);
+ createEAttribute(flowPortEClass, FLOW_PORT__IS_ATOMIC);
+
+ flowSpecificationEClass = createEClass(FLOW_SPECIFICATION);
+ createEReference(flowSpecificationEClass, FLOW_SPECIFICATION__BASE_INTERFACE);
+
+ allocatedEClass = createEClass(ALLOCATED);
+ createEReference(allocatedEClass, ALLOCATED__BASE_NAMED_ELEMENT);
+ createEReference(allocatedEClass, ALLOCATED__ALLOCATED_FROM);
+ createEReference(allocatedEClass, ALLOCATED__ALLOCATED_TO);
+
+ requirementRelatedEClass = createEClass(REQUIREMENT_RELATED);
+ createEReference(requirementRelatedEClass, REQUIREMENT_RELATED__BASE_NAMED_ELEMENT);
+ createEReference(requirementRelatedEClass, REQUIREMENT_RELATED__TRACED_FROM);
+ createEReference(requirementRelatedEClass, REQUIREMENT_RELATED__SATISFIES);
+ createEReference(requirementRelatedEClass, REQUIREMENT_RELATED__REFINES);
+ createEReference(requirementRelatedEClass, REQUIREMENT_RELATED__VERIFIES);
+
+ deprecatedEClass = createEClass(DEPRECATED);
+ createEReference(deprecatedEClass, DEPRECATED__BASE_VALUE_SPECIFICATION);
+ createEReference(deprecatedEClass, DEPRECATED__BASE_PROPERTY);
+ createEReference(deprecatedEClass, DEPRECATED__BASE_INSTANCE_SPECIFICATION);
+ createEReference(deprecatedEClass, DEPRECATED__BASE_CLASS);
+ createEReference(deprecatedEClass, DEPRECATED__BASE_ASSOCIATION);
+ createEAttribute(deprecatedEClass, DEPRECATED__DEPRECATED_REASON);
+ createEReference(deprecatedEClass, DEPRECATED__BASE_GENERALIZATION);
+ createEReference(deprecatedEClass, DEPRECATED__BASE_DATA_TYPE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ UMLPackage theUMLPackage = (UMLPackage)EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
+ PortandflowsPackage thePortandflowsPackage = (PortandflowsPackage)EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI);
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+ RequirementsPackage theRequirementsPackage = (RequirementsPackage)EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(flowPortEClass, FlowPort.class, "FlowPort", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getFlowPort_Base_Port(), theUMLPackage.getPort(), null, "base_Port", null, 1, 1, FlowPort.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getFlowPort_Direction(), thePortandflowsPackage.getFlowDirection(), "direction", "inout", 1, 1, FlowPort.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$
+ initEAttribute(getFlowPort_IsAtomic(), theTypesPackage.getBoolean(), "isAtomic", null, 1, 1, FlowPort.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(flowSpecificationEClass, FlowSpecification.class, "FlowSpecification", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getFlowSpecification_Base_Interface(), theUMLPackage.getInterface(), null, "base_Interface", null, 1, 1, FlowSpecification.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(allocatedEClass, Allocated.class, "Allocated", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getAllocated_Base_NamedElement(), theUMLPackage.getNamedElement(), null, "base_NamedElement", null, 1, 1, Allocated.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getAllocated_AllocatedFrom(), theUMLPackage.getNamedElement(), null, "allocatedFrom", null, 1, -1, Allocated.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getAllocated_AllocatedTo(), theUMLPackage.getNamedElement(), null, "allocatedTo", null, 1, -1, Allocated.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(requirementRelatedEClass, RequirementRelated.class, "RequirementRelated", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getRequirementRelated_Base_NamedElement(), theUMLPackage.getNamedElement(), null, "base_NamedElement", null, 1, 1, RequirementRelated.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRequirementRelated_TracedFrom(), theRequirementsPackage.getRequirement(), null, "TracedFrom", null, 1, -1, RequirementRelated.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRequirementRelated_Satisfies(), theRequirementsPackage.getRequirement(), null, "Satisfies", null, 1, -1, RequirementRelated.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRequirementRelated_Refines(), theRequirementsPackage.getRequirement(), null, "Refines", null, 1, -1, RequirementRelated.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRequirementRelated_Verifies(), theRequirementsPackage.getRequirement(), null, "Verifies", null, 1, -1, RequirementRelated.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(deprecatedEClass, org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated.class, "Deprecated", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getDeprecated_Base_ValueSpecification(), theUMLPackage.getValueSpecification(), null, "base_ValueSpecification", null, 1, 1, org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getDeprecated_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 1, 1, org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getDeprecated_Base_InstanceSpecification(), theUMLPackage.getInstanceSpecification(), null, "base_InstanceSpecification", null, 1, 1, org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getDeprecated_Base_Class(), theUMLPackage.getClass_(), null, "base_Class", null, 1, 1, org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getDeprecated_Base_Association(), theUMLPackage.getAssociation(), null, "base_Association", null, 1, 1, org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDeprecated_DeprecatedReason(), theTypesPackage.getString(), "deprecatedReason", null, 1, 1, org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getDeprecated_Base_Generalization(), theUMLPackage.getGeneralization(), null, "base_Generalization", null, 1, 1, org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getDeprecated_Base_DataType(), theUMLPackage.getDataType(), null, "base_DataType", null, 1, 1, org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/uml2/2.0.0/UML
+ createUMLAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/uml2/2.0.0/UML</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createUMLAnnotations() {
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML"; //$NON-NLS-1$
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "originalName", "DeprecatedElements" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+} //DeprecatedelementsPackageImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/FlowPortImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/FlowPortImpl.java
new file mode 100644
index 00000000000..f0150596745
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/FlowPortImpl.java
@@ -0,0 +1,277 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+import org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort;
+
+import org.eclipse.papyrus.sysml14.portandflows.FlowDirection;
+
+import org.eclipse.uml2.uml.Port;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Flow Port</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.FlowPortImpl#getBase_Port <em>Base Port</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.FlowPortImpl#getDirection <em>Direction</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.FlowPortImpl#isAtomic <em>Is Atomic</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FlowPortImpl extends MinimalEObjectImpl.Container implements FlowPort {
+ /**
+ * The cached value of the '{@link #getBase_Port() <em>Base Port</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Port()
+ * @generated
+ * @ordered
+ */
+ protected Port base_Port;
+
+ /**
+ * The default value of the '{@link #getDirection() <em>Direction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDirection()
+ * @generated
+ * @ordered
+ */
+ protected static final FlowDirection DIRECTION_EDEFAULT = FlowDirection.INOUT;
+
+ /**
+ * The cached value of the '{@link #getDirection() <em>Direction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDirection()
+ * @generated
+ * @ordered
+ */
+ protected FlowDirection direction = DIRECTION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isAtomic() <em>Is Atomic</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isAtomic()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean IS_ATOMIC_EDEFAULT = false;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FlowPortImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DeprecatedelementsPackage.Literals.FLOW_PORT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Port getBase_Port() {
+ if (base_Port != null && base_Port.eIsProxy()) {
+ InternalEObject oldBase_Port = (InternalEObject)base_Port;
+ base_Port = (Port)eResolveProxy(oldBase_Port);
+ if (base_Port != oldBase_Port) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeprecatedelementsPackage.FLOW_PORT__BASE_PORT, oldBase_Port, base_Port));
+ }
+ }
+ return base_Port;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Port basicGetBase_Port() {
+ return base_Port;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Port(Port newBase_Port) {
+ Port oldBase_Port = base_Port;
+ base_Port = newBase_Port;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.FLOW_PORT__BASE_PORT, oldBase_Port, base_Port));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FlowDirection getDirection() {
+ return direction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDirection(FlowDirection newDirection) {
+ FlowDirection oldDirection = direction;
+ direction = newDirection == null ? DIRECTION_EDEFAULT : newDirection;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.FLOW_PORT__DIRECTION, oldDirection, direction));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isAtomic() {
+ // TODO: implement this method to return the 'Is Atomic' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setIsAtomic(boolean newIsAtomic) {
+ // TODO: implement this method to set the 'Is Atomic' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.FLOW_PORT__BASE_PORT:
+ if (resolve) return getBase_Port();
+ return basicGetBase_Port();
+ case DeprecatedelementsPackage.FLOW_PORT__DIRECTION:
+ return getDirection();
+ case DeprecatedelementsPackage.FLOW_PORT__IS_ATOMIC:
+ return isAtomic();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.FLOW_PORT__BASE_PORT:
+ setBase_Port((Port)newValue);
+ return;
+ case DeprecatedelementsPackage.FLOW_PORT__DIRECTION:
+ setDirection((FlowDirection)newValue);
+ return;
+ case DeprecatedelementsPackage.FLOW_PORT__IS_ATOMIC:
+ setIsAtomic((Boolean)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.FLOW_PORT__BASE_PORT:
+ setBase_Port((Port)null);
+ return;
+ case DeprecatedelementsPackage.FLOW_PORT__DIRECTION:
+ setDirection(DIRECTION_EDEFAULT);
+ return;
+ case DeprecatedelementsPackage.FLOW_PORT__IS_ATOMIC:
+ setIsAtomic(IS_ATOMIC_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.FLOW_PORT__BASE_PORT:
+ return base_Port != null;
+ case DeprecatedelementsPackage.FLOW_PORT__DIRECTION:
+ return direction != DIRECTION_EDEFAULT;
+ case DeprecatedelementsPackage.FLOW_PORT__IS_ATOMIC:
+ return isAtomic() != IS_ATOMIC_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (direction: "); //$NON-NLS-1$
+ result.append(direction);
+ result.append(')');
+ return result.toString();
+ }
+
+} //FlowPortImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/FlowSpecificationImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/FlowSpecificationImpl.java
new file mode 100644
index 00000000000..8b0634710fc
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/FlowSpecificationImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+import org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification;
+
+import org.eclipse.uml2.uml.Interface;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Flow Specification</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.FlowSpecificationImpl#getBase_Interface <em>Base Interface</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FlowSpecificationImpl extends MinimalEObjectImpl.Container implements FlowSpecification {
+ /**
+ * The cached value of the '{@link #getBase_Interface() <em>Base Interface</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Interface()
+ * @generated
+ * @ordered
+ */
+ protected Interface base_Interface;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FlowSpecificationImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DeprecatedelementsPackage.Literals.FLOW_SPECIFICATION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Interface getBase_Interface() {
+ if (base_Interface != null && base_Interface.eIsProxy()) {
+ InternalEObject oldBase_Interface = (InternalEObject)base_Interface;
+ base_Interface = (Interface)eResolveProxy(oldBase_Interface);
+ if (base_Interface != oldBase_Interface) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeprecatedelementsPackage.FLOW_SPECIFICATION__BASE_INTERFACE, oldBase_Interface, base_Interface));
+ }
+ }
+ return base_Interface;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Interface basicGetBase_Interface() {
+ return base_Interface;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Interface(Interface newBase_Interface) {
+ Interface oldBase_Interface = base_Interface;
+ base_Interface = newBase_Interface;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.FLOW_SPECIFICATION__BASE_INTERFACE, oldBase_Interface, base_Interface));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.FLOW_SPECIFICATION__BASE_INTERFACE:
+ if (resolve) return getBase_Interface();
+ return basicGetBase_Interface();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.FLOW_SPECIFICATION__BASE_INTERFACE:
+ setBase_Interface((Interface)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.FLOW_SPECIFICATION__BASE_INTERFACE:
+ setBase_Interface((Interface)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.FLOW_SPECIFICATION__BASE_INTERFACE:
+ return base_Interface != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //FlowSpecificationImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/RequirementRelatedImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/RequirementRelatedImpl.java
new file mode 100644
index 00000000000..77455712d78
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/internal/impl/RequirementRelatedImpl.java
@@ -0,0 +1,263 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+import org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated;
+
+import org.eclipse.papyrus.sysml14.requirements.Requirement;
+
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Requirement Related</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.RequirementRelatedImpl#getBase_NamedElement <em>Base Named Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.RequirementRelatedImpl#getTracedFrom <em>Traced From</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.RequirementRelatedImpl#getSatisfies <em>Satisfies</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.RequirementRelatedImpl#getRefines <em>Refines</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.RequirementRelatedImpl#getVerifies <em>Verifies</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class RequirementRelatedImpl extends MinimalEObjectImpl.Container implements RequirementRelated {
+ /**
+ * The cached value of the '{@link #getBase_NamedElement() <em>Base Named Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_NamedElement()
+ * @generated
+ * @ordered
+ */
+ protected NamedElement base_NamedElement;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected RequirementRelatedImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DeprecatedelementsPackage.Literals.REQUIREMENT_RELATED;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getBase_NamedElement() {
+ if (base_NamedElement != null && base_NamedElement.eIsProxy()) {
+ InternalEObject oldBase_NamedElement = (InternalEObject)base_NamedElement;
+ base_NamedElement = (NamedElement)eResolveProxy(oldBase_NamedElement);
+ if (base_NamedElement != oldBase_NamedElement) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DeprecatedelementsPackage.REQUIREMENT_RELATED__BASE_NAMED_ELEMENT, oldBase_NamedElement, base_NamedElement));
+ }
+ }
+ return base_NamedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement basicGetBase_NamedElement() {
+ return base_NamedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_NamedElement(NamedElement newBase_NamedElement) {
+ NamedElement oldBase_NamedElement = base_NamedElement;
+ base_NamedElement = newBase_NamedElement;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DeprecatedelementsPackage.REQUIREMENT_RELATED__BASE_NAMED_ELEMENT, oldBase_NamedElement, base_NamedElement));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Requirement> getTracedFrom() {
+ // TODO: implement this method to return the 'Traced From' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Requirement> getSatisfies() {
+ // TODO: implement this method to return the 'Satisfies' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Requirement> getRefines() {
+ // TODO: implement this method to return the 'Refines' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Requirement> getVerifies() {
+ // TODO: implement this method to return the 'Verifies' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__BASE_NAMED_ELEMENT:
+ if (resolve) return getBase_NamedElement();
+ return basicGetBase_NamedElement();
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__TRACED_FROM:
+ return getTracedFrom();
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__SATISFIES:
+ return getSatisfies();
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__REFINES:
+ return getRefines();
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__VERIFIES:
+ return getVerifies();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__BASE_NAMED_ELEMENT:
+ setBase_NamedElement((NamedElement)newValue);
+ return;
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__TRACED_FROM:
+ getTracedFrom().clear();
+ getTracedFrom().addAll((Collection<? extends Requirement>)newValue);
+ return;
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__SATISFIES:
+ getSatisfies().clear();
+ getSatisfies().addAll((Collection<? extends Requirement>)newValue);
+ return;
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__REFINES:
+ getRefines().clear();
+ getRefines().addAll((Collection<? extends Requirement>)newValue);
+ return;
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__VERIFIES:
+ getVerifies().clear();
+ getVerifies().addAll((Collection<? extends Requirement>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__BASE_NAMED_ELEMENT:
+ setBase_NamedElement((NamedElement)null);
+ return;
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__TRACED_FROM:
+ getTracedFrom().clear();
+ return;
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__SATISFIES:
+ getSatisfies().clear();
+ return;
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__REFINES:
+ getRefines().clear();
+ return;
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__VERIFIES:
+ getVerifies().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__BASE_NAMED_ELEMENT:
+ return base_NamedElement != null;
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__TRACED_FROM:
+ return !getTracedFrom().isEmpty();
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__SATISFIES:
+ return !getSatisfies().isEmpty();
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__REFINES:
+ return !getRefines().isEmpty();
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED__VERIFIES:
+ return !getVerifies().isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //RequirementRelatedImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/util/DeprecatedelementsAdapterFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/util/DeprecatedelementsAdapterFactory.java
new file mode 100644
index 00000000000..a3ce8ba4107
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/util/DeprecatedelementsAdapterFactory.java
@@ -0,0 +1,202 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.Allocated;
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+import org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort;
+import org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification;
+import org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage
+ * @generated
+ */
+public class DeprecatedelementsAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static DeprecatedelementsPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeprecatedelementsAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = DeprecatedelementsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DeprecatedelementsSwitch<Adapter> modelSwitch =
+ new DeprecatedelementsSwitch<Adapter>() {
+ @Override
+ public Adapter caseFlowPort(FlowPort object) {
+ return createFlowPortAdapter();
+ }
+ @Override
+ public Adapter caseFlowSpecification(FlowSpecification object) {
+ return createFlowSpecificationAdapter();
+ }
+ @Override
+ public Adapter caseAllocated(Allocated object) {
+ return createAllocatedAdapter();
+ }
+ @Override
+ public Adapter caseRequirementRelated(RequirementRelated object) {
+ return createRequirementRelatedAdapter();
+ }
+ @Override
+ public Adapter caseDeprecated(org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated object) {
+ return createDeprecatedAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort <em>Flow Port</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort
+ * @generated
+ */
+ public Adapter createFlowPortAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification <em>Flow Specification</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification
+ * @generated
+ */
+ public Adapter createFlowSpecificationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Allocated <em>Allocated</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Allocated
+ * @generated
+ */
+ public Adapter createAllocatedAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated <em>Requirement Related</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated
+ * @generated
+ */
+ public Adapter createRequirementRelatedAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated <em>Deprecated</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated
+ * @generated
+ */
+ public Adapter createDeprecatedAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //DeprecatedelementsAdapterFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/util/DeprecatedelementsSwitch.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/util/DeprecatedelementsSwitch.java
new file mode 100644
index 00000000000..6454d1434cb
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/deprecatedelements/util/DeprecatedelementsSwitch.java
@@ -0,0 +1,204 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.deprecatedelements.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.Allocated;
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+import org.eclipse.papyrus.sysml14.deprecatedelements.FlowPort;
+import org.eclipse.papyrus.sysml14.deprecatedelements.FlowSpecification;
+import org.eclipse.papyrus.sysml14.deprecatedelements.RequirementRelated;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage
+ * @generated
+ */
+public class DeprecatedelementsSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static DeprecatedelementsPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeprecatedelementsSwitch() {
+ if (modelPackage == null) {
+ modelPackage = DeprecatedelementsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case DeprecatedelementsPackage.FLOW_PORT: {
+ FlowPort flowPort = (FlowPort)theEObject;
+ T result = caseFlowPort(flowPort);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DeprecatedelementsPackage.FLOW_SPECIFICATION: {
+ FlowSpecification flowSpecification = (FlowSpecification)theEObject;
+ T result = caseFlowSpecification(flowSpecification);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DeprecatedelementsPackage.ALLOCATED: {
+ Allocated allocated = (Allocated)theEObject;
+ T result = caseAllocated(allocated);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DeprecatedelementsPackage.REQUIREMENT_RELATED: {
+ RequirementRelated requirementRelated = (RequirementRelated)theEObject;
+ T result = caseRequirementRelated(requirementRelated);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case DeprecatedelementsPackage.DEPRECATED: {
+ org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated deprecated = (org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated)theEObject;
+ T result = caseDeprecated(deprecated);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Flow Port</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Flow Port</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFlowPort(FlowPort object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Flow Specification</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Flow Specification</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFlowSpecification(FlowSpecification object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Allocated</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Allocated</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAllocated(Allocated object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Requirement Related</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Requirement Related</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseRequirementRelated(RequirementRelated object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Deprecated</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Deprecated</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDeprecated(org.eclipse.papyrus.sysml14.deprecatedelements.Deprecated object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //DeprecatedelementsSwitch
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Conform.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Conform.java
new file mode 100644
index 00000000000..c076d5b5ee7
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Conform.java
@@ -0,0 +1,90 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Dependency;
+import org.eclipse.uml2.uml.Generalization;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Conform</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A Conform relationship is a dependency between a view and a viewpoint. The view conforms to the specified rules and conventions detailed in the viewpoint. Conform is a specialization of the UML dependency, and as with other dependencies the arrow direction points from the (client/source) to the (supplier/target).
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.Conform#getBase_Dependency <em>Base Dependency</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.Conform#getBase_Generalization <em>Base Generalization</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getConform()
+ * @model
+ * @generated
+ */
+public interface Conform extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Dependency</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Dependency</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Dependency</em>' reference.
+ * @see #setBase_Dependency(Dependency)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getConform_Base_Dependency()
+ * @model ordered="false"
+ * @generated
+ */
+ Dependency getBase_Dependency();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.Conform#getBase_Dependency <em>Base Dependency</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Dependency</em>' reference.
+ * @see #getBase_Dependency()
+ * @generated
+ */
+ void setBase_Dependency(Dependency value);
+
+ /**
+ * Returns the value of the '<em><b>Base Generalization</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Generalization</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Generalization</em>' reference.
+ * @see #setBase_Generalization(Generalization)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getConform_Base_Generalization()
+ * @model ordered="false"
+ * @generated
+ */
+ Generalization getBase_Generalization();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.Conform#getBase_Generalization <em>Base Generalization</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Generalization</em>' reference.
+ * @see #getBase_Generalization()
+ * @generated
+ */
+ void setBase_Generalization(Generalization value);
+
+} // Conform
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ElementGroup.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ElementGroup.java
new file mode 100644
index 00000000000..4efd8e8b972
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ElementGroup.java
@@ -0,0 +1,219 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Comment;
+import org.eclipse.uml2.uml.Element;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Element Group</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * The ElementGroup stereotype provides a lightweight mechanism for grouping various and possibly heterogeneous model elements by extending the capability of comments to refer to multiple annotated elements. For example, it can group elements that are associated with a particular release of the model, have a certain risk level, or are associated with a legacy design.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getBase_Comment <em>Base Comment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getCriterion <em>Criterion</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getSize <em>Size</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getMember <em>Member</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getOrderedMember <em>Ordered Member</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getElementGroup()
+ * @model
+ * @generated
+ */
+public interface ElementGroup extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Comment</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Comment</em>' reference.
+ * @see #setBase_Comment(Comment)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getElementGroup_Base_Comment()
+ * @model ordered="false"
+ * @generated
+ */
+ Comment getBase_Comment();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getBase_Comment <em>Base Comment</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Comment</em>' reference.
+ * @see #getBase_Comment()
+ * @generated
+ */
+ void setBase_Comment(Comment value);
+
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getElementGroup_Name()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Criterion</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Criterion</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Criterion</em>' attribute.
+ * @see #setCriterion(String)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getElementGroup_Criterion()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ String getCriterion();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getCriterion <em>Criterion</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Criterion</em>' attribute.
+ * @see #getCriterion()
+ * @generated
+ */
+ void setCriterion(String value);
+
+ /**
+ * Returns the value of the '<em><b>Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Size</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Size</em>' attribute.
+ * @see #setSize(int)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getElementGroup_Size()
+ * @model dataType="org.eclipse.uml2.types.Integer" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ int getSize();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getSize <em>Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Size</em>' attribute.
+ * @see #getSize()
+ * @generated
+ */
+ void setSize(int value);
+
+ /**
+ * Returns the value of the '<em><b>Member</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.Element}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Set specifying the members of the group.
+ * Derived from Comment::annotatedElement.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Member</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getElementGroup_Member()
+ * @model transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<Element> getMember();
+
+ /**
+ * Returns the value of the '<em><b>Ordered Member</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.Element}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Organize member according to an arbitrary order. Optional.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Ordered Member</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getElementGroup_OrderedMember()
+ * @model
+ * @generated
+ */
+ EList<Element> getOrderedMember();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Specifies the rationale for being member of the group. Adding an element to the group asserts that the criterion
+ * applies to this element.
+ * Derived from Comment::body.
+ * <!-- end-model-doc -->
+ * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+ * @generated
+ */
+ String criterion();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Number of members in the group. Derived.
+ * <!-- end-model-doc -->
+ * @model dataType="org.eclipse.uml2.types.Integer" required="true" ordered="false"
+ * @generated
+ */
+ int size();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model ordered="false"
+ * @generated
+ */
+ EList<Element> member();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model ordered="false" eRequired="true" eOrdered="false"
+ * @generated
+ */
+ EList<ElementGroup> allGroups(Element e);
+
+} // ElementGroup
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Expose.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Expose.java
new file mode 100644
index 00000000000..c116513a75b
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Expose.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Dependency;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Expose</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.Expose#getBase_Dependency <em>Base Dependency</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getExpose()
+ * @model
+ * @generated
+ */
+public interface Expose extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Dependency</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Dependency</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Dependency</em>' reference.
+ * @see #setBase_Dependency(Dependency)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getExpose_Base_Dependency()
+ * @model ordered="false"
+ * @generated
+ */
+ Dependency getBase_Dependency();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.Expose#getBase_Dependency <em>Base Dependency</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Dependency</em>' reference.
+ * @see #getBase_Dependency()
+ * @generated
+ */
+ void setBase_Dependency(Dependency value);
+
+} // Expose
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ModelelementsFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ModelelementsFactory.java
new file mode 100644
index 00000000000..0b45dedb48a
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ModelelementsFactory.java
@@ -0,0 +1,111 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage
+ * @generated
+ */
+public interface ModelelementsFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ModelelementsFactory eINSTANCE = org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Rationale</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Rationale</em>'.
+ * @generated
+ */
+ Rationale createRationale();
+
+ /**
+ * Returns a new object of class '<em>View</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>View</em>'.
+ * @generated
+ */
+ View createView();
+
+ /**
+ * Returns a new object of class '<em>View Point</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>View Point</em>'.
+ * @generated
+ */
+ ViewPoint createViewPoint();
+
+ /**
+ * Returns a new object of class '<em>Stakeholder</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Stakeholder</em>'.
+ * @generated
+ */
+ Stakeholder createStakeholder();
+
+ /**
+ * Returns a new object of class '<em>Conform</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Conform</em>'.
+ * @generated
+ */
+ Conform createConform();
+
+ /**
+ * Returns a new object of class '<em>Problem</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Problem</em>'.
+ * @generated
+ */
+ Problem createProblem();
+
+ /**
+ * Returns a new object of class '<em>Expose</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Expose</em>'.
+ * @generated
+ */
+ Expose createExpose();
+
+ /**
+ * Returns a new object of class '<em>Element Group</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Element Group</em>'.
+ * @generated
+ */
+ ElementGroup createElementGroup();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ModelelementsPackage getModelelementsPackage();
+
+} //ModelelementsFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ModelelementsPackage.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ModelelementsPackage.java
new file mode 100644
index 00000000000..ff7c14f6ad4
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ModelelementsPackage.java
@@ -0,0 +1,1313 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='ModelElements'"
+ * @generated
+ */
+public interface ModelelementsPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "modelelements"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/1.4/SysML/ModelElements"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "ModelElements"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ModelelementsPackage eINSTANCE = org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.RationaleImpl <em>Rationale</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.RationaleImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getRationale()
+ * @generated
+ */
+ int RATIONALE = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RATIONALE__BASE_COMMENT = 0;
+
+ /**
+ * The number of structural features of the '<em>Rationale</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RATIONALE_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Rationale</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int RATIONALE_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewImpl <em>View</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getView()
+ * @generated
+ */
+ int VIEW = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Package</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW__BASE_PACKAGE = 0;
+
+ /**
+ * The feature id for the '<em><b>View Point</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW__VIEW_POINT = 1;
+
+ /**
+ * The feature id for the '<em><b>Stakeholder</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW__STAKEHOLDER = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW__BASE_CLASS = 3;
+
+ /**
+ * The number of structural features of the '<em>View</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_FEATURE_COUNT = 4;
+
+ /**
+ * The number of operations of the '<em>View</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewPointImpl <em>View Point</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewPointImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getViewPoint()
+ * @generated
+ */
+ int VIEW_POINT = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_POINT__BASE_CLASS = 0;
+
+ /**
+ * The feature id for the '<em><b>Stakeholder</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_POINT__STAKEHOLDER = 1;
+
+ /**
+ * The feature id for the '<em><b>Purpose</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_POINT__PURPOSE = 2;
+
+ /**
+ * The feature id for the '<em><b>Concern List</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_POINT__CONCERN_LIST = 3;
+
+ /**
+ * The feature id for the '<em><b>Language</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_POINT__LANGUAGE = 4;
+
+ /**
+ * The feature id for the '<em><b>Method</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_POINT__METHOD = 5;
+
+ /**
+ * The feature id for the '<em><b>Presentation</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_POINT__PRESENTATION = 6;
+
+ /**
+ * The feature id for the '<em><b>Concern</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_POINT__CONCERN = 7;
+
+ /**
+ * The number of structural features of the '<em>View Point</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_POINT_FEATURE_COUNT = 8;
+
+ /**
+ * The number of operations of the '<em>View Point</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_POINT_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.StakeholderImpl <em>Stakeholder</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.StakeholderImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getStakeholder()
+ * @generated
+ */
+ int STAKEHOLDER = 3;
+
+ /**
+ * The feature id for the '<em><b>Base Classifier</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STAKEHOLDER__BASE_CLASSIFIER = 0;
+
+ /**
+ * The feature id for the '<em><b>Concern</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STAKEHOLDER__CONCERN = 1;
+
+ /**
+ * The feature id for the '<em><b>Concern List</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STAKEHOLDER__CONCERN_LIST = 2;
+
+ /**
+ * The number of structural features of the '<em>Stakeholder</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STAKEHOLDER_FEATURE_COUNT = 3;
+
+ /**
+ * The number of operations of the '<em>Stakeholder</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STAKEHOLDER_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ConformImpl <em>Conform</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ConformImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getConform()
+ * @generated
+ */
+ int CONFORM = 4;
+
+ /**
+ * The feature id for the '<em><b>Base Dependency</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONFORM__BASE_DEPENDENCY = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Generalization</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONFORM__BASE_GENERALIZATION = 1;
+
+ /**
+ * The number of structural features of the '<em>Conform</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONFORM_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Conform</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONFORM_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ProblemImpl <em>Problem</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ProblemImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getProblem()
+ * @generated
+ */
+ int PROBLEM = 5;
+
+ /**
+ * The feature id for the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROBLEM__BASE_COMMENT = 0;
+
+ /**
+ * The number of structural features of the '<em>Problem</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROBLEM_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Problem</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROBLEM_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ExposeImpl <em>Expose</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ExposeImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getExpose()
+ * @generated
+ */
+ int EXPOSE = 6;
+
+ /**
+ * The feature id for the '<em><b>Base Dependency</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXPOSE__BASE_DEPENDENCY = 0;
+
+ /**
+ * The number of structural features of the '<em>Expose</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXPOSE_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Expose</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXPOSE_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ElementGroupImpl <em>Element Group</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ElementGroupImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getElementGroup()
+ * @generated
+ */
+ int ELEMENT_GROUP = 7;
+
+ /**
+ * The feature id for the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_GROUP__BASE_COMMENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_GROUP__NAME = 1;
+
+ /**
+ * The feature id for the '<em><b>Criterion</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_GROUP__CRITERION = 2;
+
+ /**
+ * The feature id for the '<em><b>Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_GROUP__SIZE = 3;
+
+ /**
+ * The feature id for the '<em><b>Member</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_GROUP__MEMBER = 4;
+
+ /**
+ * The feature id for the '<em><b>Ordered Member</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_GROUP__ORDERED_MEMBER = 5;
+
+ /**
+ * The number of structural features of the '<em>Element Group</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_GROUP_FEATURE_COUNT = 6;
+
+ /**
+ * The operation id for the '<em>Criterion</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_GROUP___CRITERION = 0;
+
+ /**
+ * The operation id for the '<em>Size</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_GROUP___SIZE = 1;
+
+ /**
+ * The operation id for the '<em>Member</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_GROUP___MEMBER = 2;
+
+ /**
+ * The operation id for the '<em>All Groups</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_GROUP___ALL_GROUPS__ELEMENT = 3;
+
+ /**
+ * The number of operations of the '<em>Element Group</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_GROUP_OPERATION_COUNT = 4;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.modelelements.Rationale <em>Rationale</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Rationale</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Rationale
+ * @generated
+ */
+ EClass getRationale();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.modelelements.Rationale#getBase_Comment <em>Base Comment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Comment</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Rationale#getBase_Comment()
+ * @see #getRationale()
+ * @generated
+ */
+ EReference getRationale_Base_Comment();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.modelelements.View <em>View</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>View</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.View
+ * @generated
+ */
+ EClass getView();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.modelelements.View#getBase_Package <em>Base Package</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Package</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.View#getBase_Package()
+ * @see #getView()
+ * @generated
+ */
+ EReference getView_Base_Package();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.modelelements.View#getViewPoint <em>View Point</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>View Point</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.View#getViewPoint()
+ * @see #getView()
+ * @generated
+ */
+ EReference getView_ViewPoint();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.modelelements.View#getStakeholder <em>Stakeholder</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Stakeholder</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.View#getStakeholder()
+ * @see #getView()
+ * @generated
+ */
+ EReference getView_Stakeholder();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.modelelements.View#getBase_Class <em>Base Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Class</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.View#getBase_Class()
+ * @see #getView()
+ * @generated
+ */
+ EReference getView_Base_Class();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint <em>View Point</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>View Point</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ViewPoint
+ * @generated
+ */
+ EClass getViewPoint();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getBase_Class <em>Base Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Class</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getBase_Class()
+ * @see #getViewPoint()
+ * @generated
+ */
+ EReference getViewPoint_Base_Class();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getStakeholder <em>Stakeholder</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Stakeholder</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getStakeholder()
+ * @see #getViewPoint()
+ * @generated
+ */
+ EReference getViewPoint_Stakeholder();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getPurpose <em>Purpose</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Purpose</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getPurpose()
+ * @see #getViewPoint()
+ * @generated
+ */
+ EAttribute getViewPoint_Purpose();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getConcernList <em>Concern List</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Concern List</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getConcernList()
+ * @see #getViewPoint()
+ * @generated
+ */
+ EReference getViewPoint_ConcernList();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getLanguage <em>Language</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Language</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getLanguage()
+ * @see #getViewPoint()
+ * @generated
+ */
+ EAttribute getViewPoint_Language();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getMethod <em>Method</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Method</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getMethod()
+ * @see #getViewPoint()
+ * @generated
+ */
+ EReference getViewPoint_Method();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getPresentation <em>Presentation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Presentation</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getPresentation()
+ * @see #getViewPoint()
+ * @generated
+ */
+ EAttribute getViewPoint_Presentation();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getConcern <em>Concern</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Concern</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getConcern()
+ * @see #getViewPoint()
+ * @generated
+ */
+ EAttribute getViewPoint_Concern();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.modelelements.Stakeholder <em>Stakeholder</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Stakeholder</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Stakeholder
+ * @generated
+ */
+ EClass getStakeholder();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.modelelements.Stakeholder#getBase_Classifier <em>Base Classifier</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Classifier</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Stakeholder#getBase_Classifier()
+ * @see #getStakeholder()
+ * @generated
+ */
+ EReference getStakeholder_Base_Classifier();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.modelelements.Stakeholder#getConcern <em>Concern</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Concern</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Stakeholder#getConcern()
+ * @see #getStakeholder()
+ * @generated
+ */
+ EReference getStakeholder_Concern();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.modelelements.Stakeholder#getConcernList <em>Concern List</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Concern List</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Stakeholder#getConcernList()
+ * @see #getStakeholder()
+ * @generated
+ */
+ EReference getStakeholder_ConcernList();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.modelelements.Conform <em>Conform</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Conform</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Conform
+ * @generated
+ */
+ EClass getConform();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.modelelements.Conform#getBase_Dependency <em>Base Dependency</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Dependency</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Conform#getBase_Dependency()
+ * @see #getConform()
+ * @generated
+ */
+ EReference getConform_Base_Dependency();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.modelelements.Conform#getBase_Generalization <em>Base Generalization</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Generalization</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Conform#getBase_Generalization()
+ * @see #getConform()
+ * @generated
+ */
+ EReference getConform_Base_Generalization();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.modelelements.Problem <em>Problem</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Problem</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Problem
+ * @generated
+ */
+ EClass getProblem();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.modelelements.Problem#getBase_Comment <em>Base Comment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Comment</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Problem#getBase_Comment()
+ * @see #getProblem()
+ * @generated
+ */
+ EReference getProblem_Base_Comment();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.modelelements.Expose <em>Expose</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Expose</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Expose
+ * @generated
+ */
+ EClass getExpose();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.modelelements.Expose#getBase_Dependency <em>Base Dependency</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Dependency</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Expose#getBase_Dependency()
+ * @see #getExpose()
+ * @generated
+ */
+ EReference getExpose_Base_Dependency();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup <em>Element Group</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Element Group</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ElementGroup
+ * @generated
+ */
+ EClass getElementGroup();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getBase_Comment <em>Base Comment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Comment</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getBase_Comment()
+ * @see #getElementGroup()
+ * @generated
+ */
+ EReference getElementGroup_Base_Comment();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getName()
+ * @see #getElementGroup()
+ * @generated
+ */
+ EAttribute getElementGroup_Name();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getCriterion <em>Criterion</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Criterion</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getCriterion()
+ * @see #getElementGroup()
+ * @generated
+ */
+ EAttribute getElementGroup_Criterion();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getSize <em>Size</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Size</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getSize()
+ * @see #getElementGroup()
+ * @generated
+ */
+ EAttribute getElementGroup_Size();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getMember <em>Member</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Member</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getMember()
+ * @see #getElementGroup()
+ * @generated
+ */
+ EReference getElementGroup_Member();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getOrderedMember <em>Ordered Member</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Ordered Member</em>'.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ElementGroup#getOrderedMember()
+ * @see #getElementGroup()
+ * @generated
+ */
+ EReference getElementGroup_OrderedMember();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#criterion() <em>Criterion</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Criterion</em>' operation.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ElementGroup#criterion()
+ * @generated
+ */
+ EOperation getElementGroup__Criterion();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#size() <em>Size</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Size</em>' operation.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ElementGroup#size()
+ * @generated
+ */
+ EOperation getElementGroup__Size();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#member() <em>Member</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Member</em>' operation.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ElementGroup#member()
+ * @generated
+ */
+ EOperation getElementGroup__Member();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup#allGroups(org.eclipse.uml2.uml.Element) <em>All Groups</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>All Groups</em>' operation.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ElementGroup#allGroups(org.eclipse.uml2.uml.Element)
+ * @generated
+ */
+ EOperation getElementGroup__AllGroups__Element();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ModelelementsFactory getModelelementsFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.RationaleImpl <em>Rationale</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.RationaleImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getRationale()
+ * @generated
+ */
+ EClass RATIONALE = eINSTANCE.getRationale();
+
+ /**
+ * The meta object literal for the '<em><b>Base Comment</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference RATIONALE__BASE_COMMENT = eINSTANCE.getRationale_Base_Comment();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewImpl <em>View</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getView()
+ * @generated
+ */
+ EClass VIEW = eINSTANCE.getView();
+
+ /**
+ * The meta object literal for the '<em><b>Base Package</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIEW__BASE_PACKAGE = eINSTANCE.getView_Base_Package();
+
+ /**
+ * The meta object literal for the '<em><b>View Point</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIEW__VIEW_POINT = eINSTANCE.getView_ViewPoint();
+
+ /**
+ * The meta object literal for the '<em><b>Stakeholder</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIEW__STAKEHOLDER = eINSTANCE.getView_Stakeholder();
+
+ /**
+ * The meta object literal for the '<em><b>Base Class</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIEW__BASE_CLASS = eINSTANCE.getView_Base_Class();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewPointImpl <em>View Point</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewPointImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getViewPoint()
+ * @generated
+ */
+ EClass VIEW_POINT = eINSTANCE.getViewPoint();
+
+ /**
+ * The meta object literal for the '<em><b>Base Class</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIEW_POINT__BASE_CLASS = eINSTANCE.getViewPoint_Base_Class();
+
+ /**
+ * The meta object literal for the '<em><b>Stakeholder</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIEW_POINT__STAKEHOLDER = eINSTANCE.getViewPoint_Stakeholder();
+
+ /**
+ * The meta object literal for the '<em><b>Purpose</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIEW_POINT__PURPOSE = eINSTANCE.getViewPoint_Purpose();
+
+ /**
+ * The meta object literal for the '<em><b>Concern List</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIEW_POINT__CONCERN_LIST = eINSTANCE.getViewPoint_ConcernList();
+
+ /**
+ * The meta object literal for the '<em><b>Language</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIEW_POINT__LANGUAGE = eINSTANCE.getViewPoint_Language();
+
+ /**
+ * The meta object literal for the '<em><b>Method</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIEW_POINT__METHOD = eINSTANCE.getViewPoint_Method();
+
+ /**
+ * The meta object literal for the '<em><b>Presentation</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIEW_POINT__PRESENTATION = eINSTANCE.getViewPoint_Presentation();
+
+ /**
+ * The meta object literal for the '<em><b>Concern</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIEW_POINT__CONCERN = eINSTANCE.getViewPoint_Concern();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.StakeholderImpl <em>Stakeholder</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.StakeholderImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getStakeholder()
+ * @generated
+ */
+ EClass STAKEHOLDER = eINSTANCE.getStakeholder();
+
+ /**
+ * The meta object literal for the '<em><b>Base Classifier</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STAKEHOLDER__BASE_CLASSIFIER = eINSTANCE.getStakeholder_Base_Classifier();
+
+ /**
+ * The meta object literal for the '<em><b>Concern</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STAKEHOLDER__CONCERN = eINSTANCE.getStakeholder_Concern();
+
+ /**
+ * The meta object literal for the '<em><b>Concern List</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STAKEHOLDER__CONCERN_LIST = eINSTANCE.getStakeholder_ConcernList();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ConformImpl <em>Conform</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ConformImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getConform()
+ * @generated
+ */
+ EClass CONFORM = eINSTANCE.getConform();
+
+ /**
+ * The meta object literal for the '<em><b>Base Dependency</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONFORM__BASE_DEPENDENCY = eINSTANCE.getConform_Base_Dependency();
+
+ /**
+ * The meta object literal for the '<em><b>Base Generalization</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONFORM__BASE_GENERALIZATION = eINSTANCE.getConform_Base_Generalization();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ProblemImpl <em>Problem</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ProblemImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getProblem()
+ * @generated
+ */
+ EClass PROBLEM = eINSTANCE.getProblem();
+
+ /**
+ * The meta object literal for the '<em><b>Base Comment</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PROBLEM__BASE_COMMENT = eINSTANCE.getProblem_Base_Comment();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ExposeImpl <em>Expose</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ExposeImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getExpose()
+ * @generated
+ */
+ EClass EXPOSE = eINSTANCE.getExpose();
+
+ /**
+ * The meta object literal for the '<em><b>Base Dependency</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference EXPOSE__BASE_DEPENDENCY = eINSTANCE.getExpose_Base_Dependency();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ElementGroupImpl <em>Element Group</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ElementGroupImpl
+ * @see org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl#getElementGroup()
+ * @generated
+ */
+ EClass ELEMENT_GROUP = eINSTANCE.getElementGroup();
+
+ /**
+ * The meta object literal for the '<em><b>Base Comment</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ELEMENT_GROUP__BASE_COMMENT = eINSTANCE.getElementGroup_Base_Comment();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ELEMENT_GROUP__NAME = eINSTANCE.getElementGroup_Name();
+
+ /**
+ * The meta object literal for the '<em><b>Criterion</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ELEMENT_GROUP__CRITERION = eINSTANCE.getElementGroup_Criterion();
+
+ /**
+ * The meta object literal for the '<em><b>Size</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ELEMENT_GROUP__SIZE = eINSTANCE.getElementGroup_Size();
+
+ /**
+ * The meta object literal for the '<em><b>Member</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ELEMENT_GROUP__MEMBER = eINSTANCE.getElementGroup_Member();
+
+ /**
+ * The meta object literal for the '<em><b>Ordered Member</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ELEMENT_GROUP__ORDERED_MEMBER = eINSTANCE.getElementGroup_OrderedMember();
+
+ /**
+ * The meta object literal for the '<em><b>Criterion</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ELEMENT_GROUP___CRITERION = eINSTANCE.getElementGroup__Criterion();
+
+ /**
+ * The meta object literal for the '<em><b>Size</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ELEMENT_GROUP___SIZE = eINSTANCE.getElementGroup__Size();
+
+ /**
+ * The meta object literal for the '<em><b>Member</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ELEMENT_GROUP___MEMBER = eINSTANCE.getElementGroup__Member();
+
+ /**
+ * The meta object literal for the '<em><b>All Groups</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation ELEMENT_GROUP___ALL_GROUPS__ELEMENT = eINSTANCE.getElementGroup__AllGroups__Element();
+
+ }
+
+} //ModelelementsPackage
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Problem.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Problem.java
new file mode 100644
index 00000000000..22a20b8622a
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Problem.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Comment;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Problem</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A Problem documents a deficiency, limitation, or failure of one or more model elements to satisfy a requirement or need, or other undesired outcome. It may be used to capture problems identified during analysis, design, verification, or manufacture and associate the problem with the relevant model elements. Problem is a stereotype of comment and may be attached to any other model element in the same manner as a comment.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.Problem#getBase_Comment <em>Base Comment</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getProblem()
+ * @model
+ * @generated
+ */
+public interface Problem extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Comment</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Comment</em>' reference.
+ * @see #setBase_Comment(Comment)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getProblem_Base_Comment()
+ * @model ordered="false"
+ * @generated
+ */
+ Comment getBase_Comment();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.Problem#getBase_Comment <em>Base Comment</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Comment</em>' reference.
+ * @see #getBase_Comment()
+ * @generated
+ */
+ void setBase_Comment(Comment value);
+
+} // Problem
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Rationale.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Rationale.java
new file mode 100644
index 00000000000..330c6ec84e6
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Rationale.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Comment;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Rationale</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A Rationale documents the justification for decisions and the requirements, design, and other decisions. A Rationale can be attached to any model element including relationships. It allows the user, for example, to specify a rationale that may reference more detailed documentation such as a trade study or analysis report. Rationale is a stereotype of comment and may be attached to any other model element in the same manner as a comment.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.Rationale#getBase_Comment <em>Base Comment</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getRationale()
+ * @model
+ * @generated
+ */
+public interface Rationale extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Comment</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Comment</em>' reference.
+ * @see #setBase_Comment(Comment)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getRationale_Base_Comment()
+ * @model ordered="false"
+ * @generated
+ */
+ Comment getBase_Comment();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.Rationale#getBase_Comment <em>Base Comment</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Comment</em>' reference.
+ * @see #getBase_Comment()
+ * @generated
+ */
+ void setBase_Comment(Comment value);
+
+} // Rationale
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Stakeholder.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Stakeholder.java
new file mode 100644
index 00000000000..922ce4aeaa4
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/Stakeholder.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Classifier;
+import org.eclipse.uml2.uml.Comment;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stakeholder</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.Stakeholder#getBase_Classifier <em>Base Classifier</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.Stakeholder#getConcern <em>Concern</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.Stakeholder#getConcernList <em>Concern List</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getStakeholder()
+ * @model
+ * @generated
+ */
+public interface Stakeholder extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Classifier</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Classifier</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Classifier</em>' reference.
+ * @see #setBase_Classifier(Classifier)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getStakeholder_Base_Classifier()
+ * @model ordered="false"
+ * @generated
+ */
+ Classifier getBase_Classifier();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.Stakeholder#getBase_Classifier <em>Base Classifier</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Classifier</em>' reference.
+ * @see #getBase_Classifier()
+ * @generated
+ */
+ void setBase_Classifier(Classifier value);
+
+ /**
+ * Returns the value of the '<em><b>Concern</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.Comment}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Concern</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Concern</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getStakeholder_Concern()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ EList<Comment> getConcern();
+
+ /**
+ * Returns the value of the '<em><b>Concern List</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Concern List</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Concern List</em>' reference.
+ * @see #setConcernList(Comment)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getStakeholder_ConcernList()
+ * @model required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ Comment getConcernList();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.Stakeholder#getConcernList <em>Concern List</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Concern List</em>' reference.
+ * @see #getConcernList()
+ * @generated
+ */
+ void setConcernList(Comment value);
+
+} // Stakeholder
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/View.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/View.java
new file mode 100644
index 00000000000..e3bf08f0284
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/View.java
@@ -0,0 +1,132 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>View</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A View is a representation of a whole system or subsystem from the perspective of a single viewpoint. Views are allowed to import other elements including other packages and other views that conform to the viewpoint.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.View#getBase_Package <em>Base Package</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.View#getViewPoint <em>View Point</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.View#getStakeholder <em>Stakeholder</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.View#getBase_Class <em>Base Class</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getView()
+ * @model
+ * @generated
+ */
+public interface View extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Package</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Package</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Package</em>' reference.
+ * @see #setBase_Package(org.eclipse.uml2.uml.Package)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getView_Base_Package()
+ * @model ordered="false"
+ * @generated
+ */
+ org.eclipse.uml2.uml.Package getBase_Package();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.View#getBase_Package <em>Base Package</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Package</em>' reference.
+ * @see #getBase_Package()
+ * @generated
+ */
+ void setBase_Package(org.eclipse.uml2.uml.Package value);
+
+ /**
+ * Returns the value of the '<em><b>View Point</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The viewpoint for this View, derived from the supplier of the «conform» dependency whose client is this View.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>View Point</em>' reference.
+ * @see #setViewPoint(ViewPoint)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getView_ViewPoint()
+ * @model required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ ViewPoint getViewPoint();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.View#getViewPoint <em>View Point</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>View Point</em>' reference.
+ * @see #getViewPoint()
+ * @generated
+ */
+ void setViewPoint(ViewPoint value);
+
+ /**
+ * Returns the value of the '<em><b>Stakeholder</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.sysml14.modelelements.Stakeholder}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stakeholder</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Stakeholder</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getView_Stakeholder()
+ * @model required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<Stakeholder> getStakeholder();
+
+ /**
+ * Returns the value of the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Class</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Class</em>' reference.
+ * @see #setBase_Class(org.eclipse.uml2.uml.Class)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getView_Base_Class()
+ * @model ordered="false"
+ * @generated
+ */
+ org.eclipse.uml2.uml.Class getBase_Class();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.View#getBase_Class <em>Base Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Class</em>' reference.
+ * @see #getBase_Class()
+ * @generated
+ */
+ void setBase_Class(org.eclipse.uml2.uml.Class value);
+
+} // View
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ViewPoint.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ViewPoint.java
new file mode 100644
index 00000000000..21510aae074
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/ViewPoint.java
@@ -0,0 +1,214 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.Comment;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>View Point</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A Viewpoint is a specification of the conventions and rules for constructing and using a view for the purpose of addressing a set of stakeholder concerns. The languages and methods for specifying a view may reference languages and methods in another viewpoint. They specify the elements expected to be represented in the view, and may be formally or informally defined. For example, the security viewpoint may require the security requirements, security functional and physical architecture, and security test cases.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getBase_Class <em>Base Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getStakeholder <em>Stakeholder</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getPurpose <em>Purpose</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getConcernList <em>Concern List</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getLanguage <em>Language</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getMethod <em>Method</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getPresentation <em>Presentation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getConcern <em>Concern</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getViewPoint()
+ * @model
+ * @generated
+ */
+public interface ViewPoint extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Class</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Class</em>' reference.
+ * @see #setBase_Class(org.eclipse.uml2.uml.Class)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getViewPoint_Base_Class()
+ * @model ordered="false"
+ * @generated
+ */
+ org.eclipse.uml2.uml.Class getBase_Class();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getBase_Class <em>Base Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Class</em>' reference.
+ * @see #getBase_Class()
+ * @generated
+ */
+ void setBase_Class(org.eclipse.uml2.uml.Class value);
+
+ /**
+ * Returns the value of the '<em><b>Stakeholder</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.sysml14.modelelements.Stakeholder}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Set of stakeholders.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Stakeholder</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getViewPoint_Stakeholder()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ EList<Stakeholder> getStakeholder();
+
+ /**
+ * Returns the value of the '<em><b>Purpose</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The purpose addresses the stakeholder concerns.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Purpose</em>' attribute.
+ * @see #setPurpose(String)
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getViewPoint_Purpose()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getPurpose();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint#getPurpose <em>Purpose</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Purpose</em>' attribute.
+ * @see #getPurpose()
+ * @generated
+ */
+ void setPurpose(String value);
+
+ /**
+ * Returns the value of the '<em><b>Concern List</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.Comment}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The interest of the stakeholders.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Concern List</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getViewPoint_ConcernList()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ EList<Comment> getConcernList();
+
+ /**
+ * Returns the value of the '<em><b>Language</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.String}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The languages used to construct the viewpoint.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Language</em>' attribute list.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getViewPoint_Language()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ EList<String> getLanguage();
+
+ /**
+ * Returns the value of the '<em><b>Method</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.Behavior}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The methods used to construct the views for this viewpoint.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Method</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getViewPoint_Method()
+ * @model required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<Behavior> getMethod();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Behavior} with the specified '<em><b>Name</b></em>' from the '<em><b>Method</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Behavior} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.Behavior} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getMethod()
+ * @generated
+ */
+ Behavior getMethod(String name);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Behavior} with the specified '<em><b>Name</b></em>' from the '<em><b>Method</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Behavior} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.Behavior} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.Behavior} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getMethod()
+ * @generated
+ */
+ Behavior getMethod(String name, boolean ignoreCase, EClass eClass);
+
+ /**
+ * Returns the value of the '<em><b>Presentation</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.String}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Presentation</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Presentation</em>' attribute list.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getViewPoint_Presentation()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ EList<String> getPresentation();
+
+ /**
+ * Returns the value of the '<em><b>Concern</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.String}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Concern</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Concern</em>' attribute list.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#getViewPoint_Concern()
+ * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<String> getConcern();
+
+} // ViewPoint
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ConformImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ConformImpl.java
new file mode 100644
index 00000000000..211e8428760
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ConformImpl.java
@@ -0,0 +1,225 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.modelelements.Conform;
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+
+import org.eclipse.uml2.uml.Dependency;
+import org.eclipse.uml2.uml.Generalization;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Conform</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ConformImpl#getBase_Dependency <em>Base Dependency</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ConformImpl#getBase_Generalization <em>Base Generalization</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ConformImpl extends MinimalEObjectImpl.Container implements Conform {
+ /**
+ * The cached value of the '{@link #getBase_Dependency() <em>Base Dependency</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Dependency()
+ * @generated
+ * @ordered
+ */
+ protected Dependency base_Dependency;
+
+ /**
+ * The cached value of the '{@link #getBase_Generalization() <em>Base Generalization</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Generalization()
+ * @generated
+ * @ordered
+ */
+ protected Generalization base_Generalization;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ConformImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelelementsPackage.Literals.CONFORM;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Dependency getBase_Dependency() {
+ if (base_Dependency != null && base_Dependency.eIsProxy()) {
+ InternalEObject oldBase_Dependency = (InternalEObject)base_Dependency;
+ base_Dependency = (Dependency)eResolveProxy(oldBase_Dependency);
+ if (base_Dependency != oldBase_Dependency) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ModelelementsPackage.CONFORM__BASE_DEPENDENCY, oldBase_Dependency, base_Dependency));
+ }
+ }
+ return base_Dependency;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Dependency basicGetBase_Dependency() {
+ return base_Dependency;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Dependency(Dependency newBase_Dependency) {
+ Dependency oldBase_Dependency = base_Dependency;
+ base_Dependency = newBase_Dependency;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelelementsPackage.CONFORM__BASE_DEPENDENCY, oldBase_Dependency, base_Dependency));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Generalization getBase_Generalization() {
+ if (base_Generalization != null && base_Generalization.eIsProxy()) {
+ InternalEObject oldBase_Generalization = (InternalEObject)base_Generalization;
+ base_Generalization = (Generalization)eResolveProxy(oldBase_Generalization);
+ if (base_Generalization != oldBase_Generalization) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ModelelementsPackage.CONFORM__BASE_GENERALIZATION, oldBase_Generalization, base_Generalization));
+ }
+ }
+ return base_Generalization;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Generalization basicGetBase_Generalization() {
+ return base_Generalization;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Generalization(Generalization newBase_Generalization) {
+ Generalization oldBase_Generalization = base_Generalization;
+ base_Generalization = newBase_Generalization;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelelementsPackage.CONFORM__BASE_GENERALIZATION, oldBase_Generalization, base_Generalization));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ModelelementsPackage.CONFORM__BASE_DEPENDENCY:
+ if (resolve) return getBase_Dependency();
+ return basicGetBase_Dependency();
+ case ModelelementsPackage.CONFORM__BASE_GENERALIZATION:
+ if (resolve) return getBase_Generalization();
+ return basicGetBase_Generalization();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ModelelementsPackage.CONFORM__BASE_DEPENDENCY:
+ setBase_Dependency((Dependency)newValue);
+ return;
+ case ModelelementsPackage.CONFORM__BASE_GENERALIZATION:
+ setBase_Generalization((Generalization)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.CONFORM__BASE_DEPENDENCY:
+ setBase_Dependency((Dependency)null);
+ return;
+ case ModelelementsPackage.CONFORM__BASE_GENERALIZATION:
+ setBase_Generalization((Generalization)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.CONFORM__BASE_DEPENDENCY:
+ return base_Dependency != null;
+ case ModelelementsPackage.CONFORM__BASE_GENERALIZATION:
+ return base_Generalization != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ConformImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ElementGroupImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ElementGroupImpl.java
new file mode 100644
index 00000000000..878c49dbb63
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ElementGroupImpl.java
@@ -0,0 +1,449 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements.internal.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.sysml14.modelelements.ElementGroup;
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+
+import org.eclipse.uml2.uml.Comment;
+import org.eclipse.uml2.uml.Element;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Element Group</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ElementGroupImpl#getBase_Comment <em>Base Comment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ElementGroupImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ElementGroupImpl#getCriterion <em>Criterion</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ElementGroupImpl#getSize <em>Size</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ElementGroupImpl#getMember <em>Member</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ElementGroupImpl#getOrderedMember <em>Ordered Member</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ElementGroupImpl extends MinimalEObjectImpl.Container implements ElementGroup {
+ /**
+ * The cached value of the '{@link #getBase_Comment() <em>Base Comment</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Comment()
+ * @generated
+ * @ordered
+ */
+ protected Comment base_Comment;
+
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getCriterion() <em>Criterion</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCriterion()
+ * @generated
+ * @ordered
+ */
+ protected static final String CRITERION_EDEFAULT = null;
+
+ /**
+ * The default value of the '{@link #getSize() <em>Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSize()
+ * @generated
+ * @ordered
+ */
+ protected static final int SIZE_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getOrderedMember() <em>Ordered Member</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOrderedMember()
+ * @generated
+ * @ordered
+ */
+ protected EList<Element> orderedMember;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ElementGroupImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelelementsPackage.Literals.ELEMENT_GROUP;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Comment getBase_Comment() {
+ if (base_Comment != null && base_Comment.eIsProxy()) {
+ InternalEObject oldBase_Comment = (InternalEObject)base_Comment;
+ base_Comment = (Comment)eResolveProxy(oldBase_Comment);
+ if (base_Comment != oldBase_Comment) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ModelelementsPackage.ELEMENT_GROUP__BASE_COMMENT, oldBase_Comment, base_Comment));
+ }
+ }
+ return base_Comment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Comment basicGetBase_Comment() {
+ return base_Comment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Comment(Comment newBase_Comment) {
+ Comment oldBase_Comment = base_Comment;
+ base_Comment = newBase_Comment;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelelementsPackage.ELEMENT_GROUP__BASE_COMMENT, oldBase_Comment, base_Comment));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelelementsPackage.ELEMENT_GROUP__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getCriterion() {
+ // TODO: implement this method to return the 'Criterion' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCriterion(String newCriterion) {
+ // TODO: implement this method to set the 'Criterion' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getSize() {
+ // TODO: implement this method to return the 'Size' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSize(int newSize) {
+ // TODO: implement this method to set the 'Size' attribute
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Element> getMember() {
+ // TODO: implement this method to return the 'Member' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Element> getOrderedMember() {
+ if (orderedMember == null) {
+ orderedMember = new EObjectResolvingEList<Element>(Element.class, this, ModelelementsPackage.ELEMENT_GROUP__ORDERED_MEMBER);
+ }
+ return orderedMember;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String criterion() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int size() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Element> member() {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ElementGroup> allGroups(Element e) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ModelelementsPackage.ELEMENT_GROUP__BASE_COMMENT:
+ if (resolve) return getBase_Comment();
+ return basicGetBase_Comment();
+ case ModelelementsPackage.ELEMENT_GROUP__NAME:
+ return getName();
+ case ModelelementsPackage.ELEMENT_GROUP__CRITERION:
+ return getCriterion();
+ case ModelelementsPackage.ELEMENT_GROUP__SIZE:
+ return getSize();
+ case ModelelementsPackage.ELEMENT_GROUP__MEMBER:
+ return getMember();
+ case ModelelementsPackage.ELEMENT_GROUP__ORDERED_MEMBER:
+ return getOrderedMember();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ModelelementsPackage.ELEMENT_GROUP__BASE_COMMENT:
+ setBase_Comment((Comment)newValue);
+ return;
+ case ModelelementsPackage.ELEMENT_GROUP__NAME:
+ setName((String)newValue);
+ return;
+ case ModelelementsPackage.ELEMENT_GROUP__CRITERION:
+ setCriterion((String)newValue);
+ return;
+ case ModelelementsPackage.ELEMENT_GROUP__SIZE:
+ setSize((Integer)newValue);
+ return;
+ case ModelelementsPackage.ELEMENT_GROUP__MEMBER:
+ getMember().clear();
+ getMember().addAll((Collection<? extends Element>)newValue);
+ return;
+ case ModelelementsPackage.ELEMENT_GROUP__ORDERED_MEMBER:
+ getOrderedMember().clear();
+ getOrderedMember().addAll((Collection<? extends Element>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.ELEMENT_GROUP__BASE_COMMENT:
+ setBase_Comment((Comment)null);
+ return;
+ case ModelelementsPackage.ELEMENT_GROUP__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case ModelelementsPackage.ELEMENT_GROUP__CRITERION:
+ setCriterion(CRITERION_EDEFAULT);
+ return;
+ case ModelelementsPackage.ELEMENT_GROUP__SIZE:
+ setSize(SIZE_EDEFAULT);
+ return;
+ case ModelelementsPackage.ELEMENT_GROUP__MEMBER:
+ getMember().clear();
+ return;
+ case ModelelementsPackage.ELEMENT_GROUP__ORDERED_MEMBER:
+ getOrderedMember().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.ELEMENT_GROUP__BASE_COMMENT:
+ return base_Comment != null;
+ case ModelelementsPackage.ELEMENT_GROUP__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case ModelelementsPackage.ELEMENT_GROUP__CRITERION:
+ return CRITERION_EDEFAULT == null ? getCriterion() != null : !CRITERION_EDEFAULT.equals(getCriterion());
+ case ModelelementsPackage.ELEMENT_GROUP__SIZE:
+ return getSize() != SIZE_EDEFAULT;
+ case ModelelementsPackage.ELEMENT_GROUP__MEMBER:
+ return !getMember().isEmpty();
+ case ModelelementsPackage.ELEMENT_GROUP__ORDERED_MEMBER:
+ return orderedMember != null && !orderedMember.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case ModelelementsPackage.ELEMENT_GROUP___CRITERION:
+ return criterion();
+ case ModelelementsPackage.ELEMENT_GROUP___SIZE:
+ return size();
+ case ModelelementsPackage.ELEMENT_GROUP___MEMBER:
+ return member();
+ case ModelelementsPackage.ELEMENT_GROUP___ALL_GROUPS__ELEMENT:
+ return allGroups((Element)arguments.get(0));
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: "); //$NON-NLS-1$
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ElementGroupImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ExposeImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ExposeImpl.java
new file mode 100644
index 00000000000..1d1d314e235
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ExposeImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.modelelements.Expose;
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+
+import org.eclipse.uml2.uml.Dependency;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Expose</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ExposeImpl#getBase_Dependency <em>Base Dependency</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ExposeImpl extends MinimalEObjectImpl.Container implements Expose {
+ /**
+ * The cached value of the '{@link #getBase_Dependency() <em>Base Dependency</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Dependency()
+ * @generated
+ * @ordered
+ */
+ protected Dependency base_Dependency;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ExposeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelelementsPackage.Literals.EXPOSE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Dependency getBase_Dependency() {
+ if (base_Dependency != null && base_Dependency.eIsProxy()) {
+ InternalEObject oldBase_Dependency = (InternalEObject)base_Dependency;
+ base_Dependency = (Dependency)eResolveProxy(oldBase_Dependency);
+ if (base_Dependency != oldBase_Dependency) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ModelelementsPackage.EXPOSE__BASE_DEPENDENCY, oldBase_Dependency, base_Dependency));
+ }
+ }
+ return base_Dependency;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Dependency basicGetBase_Dependency() {
+ return base_Dependency;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Dependency(Dependency newBase_Dependency) {
+ Dependency oldBase_Dependency = base_Dependency;
+ base_Dependency = newBase_Dependency;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelelementsPackage.EXPOSE__BASE_DEPENDENCY, oldBase_Dependency, base_Dependency));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ModelelementsPackage.EXPOSE__BASE_DEPENDENCY:
+ if (resolve) return getBase_Dependency();
+ return basicGetBase_Dependency();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ModelelementsPackage.EXPOSE__BASE_DEPENDENCY:
+ setBase_Dependency((Dependency)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.EXPOSE__BASE_DEPENDENCY:
+ setBase_Dependency((Dependency)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.EXPOSE__BASE_DEPENDENCY:
+ return base_Dependency != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ExposeImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ModelelementsFactoryImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ModelelementsFactoryImpl.java
new file mode 100644
index 00000000000..d4842b5ccb6
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ModelelementsFactoryImpl.java
@@ -0,0 +1,178 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.sysml14.modelelements.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ModelelementsFactoryImpl extends EFactoryImpl implements ModelelementsFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static ModelelementsFactory init() {
+ try {
+ ModelelementsFactory theModelelementsFactory = (ModelelementsFactory)EPackage.Registry.INSTANCE.getEFactory(ModelelementsPackage.eNS_URI);
+ if (theModelelementsFactory != null) {
+ return theModelelementsFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ModelelementsFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelelementsFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ModelelementsPackage.RATIONALE: return createRationale();
+ case ModelelementsPackage.VIEW: return createView();
+ case ModelelementsPackage.VIEW_POINT: return createViewPoint();
+ case ModelelementsPackage.STAKEHOLDER: return createStakeholder();
+ case ModelelementsPackage.CONFORM: return createConform();
+ case ModelelementsPackage.PROBLEM: return createProblem();
+ case ModelelementsPackage.EXPOSE: return createExpose();
+ case ModelelementsPackage.ELEMENT_GROUP: return createElementGroup();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Rationale createRationale() {
+ RationaleImpl rationale = new RationaleImpl();
+ return rationale;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public View createView() {
+ ViewImpl view = new ViewImpl();
+ return view;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ViewPoint createViewPoint() {
+ ViewPointImpl viewPoint = new ViewPointImpl();
+ return viewPoint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Stakeholder createStakeholder() {
+ StakeholderImpl stakeholder = new StakeholderImpl();
+ return stakeholder;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Conform createConform() {
+ ConformImpl conform = new ConformImpl();
+ return conform;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Problem createProblem() {
+ ProblemImpl problem = new ProblemImpl();
+ return problem;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Expose createExpose() {
+ ExposeImpl expose = new ExposeImpl();
+ return expose;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementGroup createElementGroup() {
+ ElementGroupImpl elementGroup = new ElementGroupImpl();
+ return elementGroup;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelelementsPackage getModelelementsPackage() {
+ return (ModelelementsPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ModelelementsPackage getPackage() {
+ return ModelelementsPackage.eINSTANCE;
+ }
+
+} //ModelelementsFactoryImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ModelelementsPackageImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ModelelementsPackageImpl.java
new file mode 100644
index 00000000000..f3a8f97b10f
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ModelelementsPackageImpl.java
@@ -0,0 +1,740 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements.internal.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl;
+
+import org.eclipse.papyrus.sysml14.allocations.AllocationsPackage;
+
+import org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintblocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.modelelements.Conform;
+import org.eclipse.papyrus.sysml14.modelelements.ElementGroup;
+import org.eclipse.papyrus.sysml14.modelelements.Expose;
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsFactory;
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+import org.eclipse.papyrus.sysml14.modelelements.Problem;
+import org.eclipse.papyrus.sysml14.modelelements.Rationale;
+import org.eclipse.papyrus.sysml14.modelelements.Stakeholder;
+import org.eclipse.papyrus.sysml14.modelelements.View;
+import org.eclipse.papyrus.sysml14.modelelements.ViewPoint;
+
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+
+import org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ModelelementsPackageImpl extends EPackageImpl implements ModelelementsPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass rationaleEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass viewEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass viewPointEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stakeholderEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass conformEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass problemEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass exposeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass elementGroupEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ModelelementsPackageImpl() {
+ super(eNS_URI, ModelelementsFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link ModelelementsPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static ModelelementsPackage init() {
+ if (isInited) return (ModelelementsPackage)EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI);
+
+ // Obtain or create and register package
+ ModelelementsPackageImpl theModelelementsPackage = (ModelelementsPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ModelelementsPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ModelelementsPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ StandardPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ BlocksPackageImpl theBlocksPackage = (BlocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) instanceof BlocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) : BlocksPackage.eINSTANCE);
+ PortandflowsPackageImpl thePortandflowsPackage = (PortandflowsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) instanceof PortandflowsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) : PortandflowsPackage.eINSTANCE);
+ ActivitiesPackageImpl theActivitiesPackage = (ActivitiesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) instanceof ActivitiesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) : ActivitiesPackage.eINSTANCE);
+ ConstraintblocksPackageImpl theConstraintblocksPackage = (ConstraintblocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) instanceof ConstraintblocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) : ConstraintblocksPackage.eINSTANCE);
+ AllocationsPackageImpl theAllocationsPackage = (AllocationsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) instanceof AllocationsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) : AllocationsPackage.eINSTANCE);
+ RequirementsPackageImpl theRequirementsPackage = (RequirementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) instanceof RequirementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) : RequirementsPackage.eINSTANCE);
+ DeprecatedelementsPackageImpl theDeprecatedelementsPackage = (DeprecatedelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) instanceof DeprecatedelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) : DeprecatedelementsPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theModelelementsPackage.createPackageContents();
+ theBlocksPackage.createPackageContents();
+ thePortandflowsPackage.createPackageContents();
+ theActivitiesPackage.createPackageContents();
+ theConstraintblocksPackage.createPackageContents();
+ theAllocationsPackage.createPackageContents();
+ theRequirementsPackage.createPackageContents();
+ theDeprecatedelementsPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theModelelementsPackage.initializePackageContents();
+ theBlocksPackage.initializePackageContents();
+ thePortandflowsPackage.initializePackageContents();
+ theActivitiesPackage.initializePackageContents();
+ theConstraintblocksPackage.initializePackageContents();
+ theAllocationsPackage.initializePackageContents();
+ theRequirementsPackage.initializePackageContents();
+ theDeprecatedelementsPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theModelelementsPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ModelelementsPackage.eNS_URI, theModelelementsPackage);
+ return theModelelementsPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getRationale() {
+ return rationaleEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRationale_Base_Comment() {
+ return (EReference)rationaleEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getView() {
+ return viewEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getView_Base_Package() {
+ return (EReference)viewEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getView_ViewPoint() {
+ return (EReference)viewEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getView_Stakeholder() {
+ return (EReference)viewEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getView_Base_Class() {
+ return (EReference)viewEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getViewPoint() {
+ return viewPointEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getViewPoint_Base_Class() {
+ return (EReference)viewPointEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getViewPoint_Stakeholder() {
+ return (EReference)viewPointEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getViewPoint_Purpose() {
+ return (EAttribute)viewPointEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getViewPoint_ConcernList() {
+ return (EReference)viewPointEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getViewPoint_Language() {
+ return (EAttribute)viewPointEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getViewPoint_Method() {
+ return (EReference)viewPointEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getViewPoint_Presentation() {
+ return (EAttribute)viewPointEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getViewPoint_Concern() {
+ return (EAttribute)viewPointEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStakeholder() {
+ return stakeholderEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStakeholder_Base_Classifier() {
+ return (EReference)stakeholderEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStakeholder_Concern() {
+ return (EReference)stakeholderEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStakeholder_ConcernList() {
+ return (EReference)stakeholderEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getConform() {
+ return conformEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getConform_Base_Dependency() {
+ return (EReference)conformEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getConform_Base_Generalization() {
+ return (EReference)conformEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getProblem() {
+ return problemEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getProblem_Base_Comment() {
+ return (EReference)problemEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getExpose() {
+ return exposeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getExpose_Base_Dependency() {
+ return (EReference)exposeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getElementGroup() {
+ return elementGroupEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getElementGroup_Base_Comment() {
+ return (EReference)elementGroupEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getElementGroup_Name() {
+ return (EAttribute)elementGroupEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getElementGroup_Criterion() {
+ return (EAttribute)elementGroupEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getElementGroup_Size() {
+ return (EAttribute)elementGroupEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getElementGroup_Member() {
+ return (EReference)elementGroupEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getElementGroup_OrderedMember() {
+ return (EReference)elementGroupEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getElementGroup__Criterion() {
+ return elementGroupEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getElementGroup__Size() {
+ return elementGroupEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getElementGroup__Member() {
+ return elementGroupEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getElementGroup__AllGroups__Element() {
+ return elementGroupEClass.getEOperations().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelelementsFactory getModelelementsFactory() {
+ return (ModelelementsFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ rationaleEClass = createEClass(RATIONALE);
+ createEReference(rationaleEClass, RATIONALE__BASE_COMMENT);
+
+ viewEClass = createEClass(VIEW);
+ createEReference(viewEClass, VIEW__BASE_PACKAGE);
+ createEReference(viewEClass, VIEW__VIEW_POINT);
+ createEReference(viewEClass, VIEW__STAKEHOLDER);
+ createEReference(viewEClass, VIEW__BASE_CLASS);
+
+ viewPointEClass = createEClass(VIEW_POINT);
+ createEReference(viewPointEClass, VIEW_POINT__BASE_CLASS);
+ createEReference(viewPointEClass, VIEW_POINT__STAKEHOLDER);
+ createEAttribute(viewPointEClass, VIEW_POINT__PURPOSE);
+ createEReference(viewPointEClass, VIEW_POINT__CONCERN_LIST);
+ createEAttribute(viewPointEClass, VIEW_POINT__LANGUAGE);
+ createEReference(viewPointEClass, VIEW_POINT__METHOD);
+ createEAttribute(viewPointEClass, VIEW_POINT__PRESENTATION);
+ createEAttribute(viewPointEClass, VIEW_POINT__CONCERN);
+
+ stakeholderEClass = createEClass(STAKEHOLDER);
+ createEReference(stakeholderEClass, STAKEHOLDER__BASE_CLASSIFIER);
+ createEReference(stakeholderEClass, STAKEHOLDER__CONCERN);
+ createEReference(stakeholderEClass, STAKEHOLDER__CONCERN_LIST);
+
+ conformEClass = createEClass(CONFORM);
+ createEReference(conformEClass, CONFORM__BASE_DEPENDENCY);
+ createEReference(conformEClass, CONFORM__BASE_GENERALIZATION);
+
+ problemEClass = createEClass(PROBLEM);
+ createEReference(problemEClass, PROBLEM__BASE_COMMENT);
+
+ exposeEClass = createEClass(EXPOSE);
+ createEReference(exposeEClass, EXPOSE__BASE_DEPENDENCY);
+
+ elementGroupEClass = createEClass(ELEMENT_GROUP);
+ createEReference(elementGroupEClass, ELEMENT_GROUP__BASE_COMMENT);
+ createEAttribute(elementGroupEClass, ELEMENT_GROUP__NAME);
+ createEAttribute(elementGroupEClass, ELEMENT_GROUP__CRITERION);
+ createEAttribute(elementGroupEClass, ELEMENT_GROUP__SIZE);
+ createEReference(elementGroupEClass, ELEMENT_GROUP__MEMBER);
+ createEReference(elementGroupEClass, ELEMENT_GROUP__ORDERED_MEMBER);
+ createEOperation(elementGroupEClass, ELEMENT_GROUP___CRITERION);
+ createEOperation(elementGroupEClass, ELEMENT_GROUP___SIZE);
+ createEOperation(elementGroupEClass, ELEMENT_GROUP___MEMBER);
+ createEOperation(elementGroupEClass, ELEMENT_GROUP___ALL_GROUPS__ELEMENT);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ UMLPackage theUMLPackage = (UMLPackage)EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(rationaleEClass, Rationale.class, "Rationale", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getRationale_Base_Comment(), theUMLPackage.getComment(), null, "base_Comment", null, 0, 1, Rationale.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(viewEClass, View.class, "View", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getView_Base_Package(), theUMLPackage.getPackage(), null, "base_Package", null, 0, 1, View.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getView_ViewPoint(), this.getViewPoint(), null, "viewPoint", null, 1, 1, View.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getView_Stakeholder(), this.getStakeholder(), null, "stakeholder", null, 1, -1, View.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getView_Base_Class(), theUMLPackage.getClass_(), null, "base_Class", null, 0, 1, View.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(viewPointEClass, ViewPoint.class, "ViewPoint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getViewPoint_Base_Class(), theUMLPackage.getClass_(), null, "base_Class", null, 0, 1, ViewPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getViewPoint_Stakeholder(), this.getStakeholder(), null, "stakeholder", null, 1, -1, ViewPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getViewPoint_Purpose(), theTypesPackage.getString(), "purpose", null, 1, 1, ViewPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getViewPoint_ConcernList(), theUMLPackage.getComment(), null, "concernList", null, 1, -1, ViewPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getViewPoint_Language(), theTypesPackage.getString(), "language", null, 1, -1, ViewPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getViewPoint_Method(), theUMLPackage.getBehavior(), null, "method", null, 1, -1, ViewPoint.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getViewPoint_Presentation(), theTypesPackage.getString(), "presentation", null, 1, -1, ViewPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getViewPoint_Concern(), theTypesPackage.getString(), "concern", null, 1, -1, ViewPoint.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(stakeholderEClass, Stakeholder.class, "Stakeholder", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getStakeholder_Base_Classifier(), theUMLPackage.getClassifier(), null, "base_Classifier", null, 0, 1, Stakeholder.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getStakeholder_Concern(), theUMLPackage.getComment(), null, "concern", null, 1, -1, Stakeholder.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getStakeholder_ConcernList(), theUMLPackage.getComment(), null, "concernList", null, 1, 1, Stakeholder.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(conformEClass, Conform.class, "Conform", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getConform_Base_Dependency(), theUMLPackage.getDependency(), null, "base_Dependency", null, 0, 1, Conform.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getConform_Base_Generalization(), theUMLPackage.getGeneralization(), null, "base_Generalization", null, 0, 1, Conform.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(problemEClass, Problem.class, "Problem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getProblem_Base_Comment(), theUMLPackage.getComment(), null, "base_Comment", null, 0, 1, Problem.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(exposeEClass, Expose.class, "Expose", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getExpose_Base_Dependency(), theUMLPackage.getDependency(), null, "base_Dependency", null, 0, 1, Expose.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(elementGroupEClass, ElementGroup.class, "ElementGroup", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getElementGroup_Base_Comment(), theUMLPackage.getComment(), null, "base_Comment", null, 0, 1, ElementGroup.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getElementGroup_Name(), theTypesPackage.getString(), "name", null, 1, 1, ElementGroup.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getElementGroup_Criterion(), theTypesPackage.getString(), "criterion", null, 1, 1, ElementGroup.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getElementGroup_Size(), theTypesPackage.getInteger(), "size", null, 1, 1, ElementGroup.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getElementGroup_Member(), theUMLPackage.getElement(), null, "member", null, 0, -1, ElementGroup.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getElementGroup_OrderedMember(), theUMLPackage.getElement(), null, "orderedMember", null, 0, -1, ElementGroup.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEOperation(getElementGroup__Criterion(), theTypesPackage.getString(), "criterion", 0, 1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+
+ initEOperation(getElementGroup__Size(), theTypesPackage.getInteger(), "size", 1, 1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+
+ initEOperation(getElementGroup__Member(), theUMLPackage.getElement(), "member", 0, -1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+
+ EOperation op = initEOperation(getElementGroup__AllGroups__Element(), this.getElementGroup(), "allGroups", 0, -1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+ addEParameter(op, theUMLPackage.getElement(), "e", 1, 1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/uml2/2.0.0/UML
+ createUMLAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/uml2/2.0.0/UML</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createUMLAnnotations() {
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML"; //$NON-NLS-1$
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "originalName", "ModelElements" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+} //ModelelementsPackageImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ProblemImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ProblemImpl.java
new file mode 100644
index 00000000000..aaf159019e1
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ProblemImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+import org.eclipse.papyrus.sysml14.modelelements.Problem;
+
+import org.eclipse.uml2.uml.Comment;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Problem</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ProblemImpl#getBase_Comment <em>Base Comment</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ProblemImpl extends MinimalEObjectImpl.Container implements Problem {
+ /**
+ * The cached value of the '{@link #getBase_Comment() <em>Base Comment</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Comment()
+ * @generated
+ * @ordered
+ */
+ protected Comment base_Comment;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ProblemImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelelementsPackage.Literals.PROBLEM;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Comment getBase_Comment() {
+ if (base_Comment != null && base_Comment.eIsProxy()) {
+ InternalEObject oldBase_Comment = (InternalEObject)base_Comment;
+ base_Comment = (Comment)eResolveProxy(oldBase_Comment);
+ if (base_Comment != oldBase_Comment) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ModelelementsPackage.PROBLEM__BASE_COMMENT, oldBase_Comment, base_Comment));
+ }
+ }
+ return base_Comment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Comment basicGetBase_Comment() {
+ return base_Comment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Comment(Comment newBase_Comment) {
+ Comment oldBase_Comment = base_Comment;
+ base_Comment = newBase_Comment;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelelementsPackage.PROBLEM__BASE_COMMENT, oldBase_Comment, base_Comment));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ModelelementsPackage.PROBLEM__BASE_COMMENT:
+ if (resolve) return getBase_Comment();
+ return basicGetBase_Comment();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ModelelementsPackage.PROBLEM__BASE_COMMENT:
+ setBase_Comment((Comment)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.PROBLEM__BASE_COMMENT:
+ setBase_Comment((Comment)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.PROBLEM__BASE_COMMENT:
+ return base_Comment != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ProblemImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/RationaleImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/RationaleImpl.java
new file mode 100644
index 00000000000..503ce0241ab
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/RationaleImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+import org.eclipse.papyrus.sysml14.modelelements.Rationale;
+
+import org.eclipse.uml2.uml.Comment;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Rationale</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.RationaleImpl#getBase_Comment <em>Base Comment</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class RationaleImpl extends MinimalEObjectImpl.Container implements Rationale {
+ /**
+ * The cached value of the '{@link #getBase_Comment() <em>Base Comment</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Comment()
+ * @generated
+ * @ordered
+ */
+ protected Comment base_Comment;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected RationaleImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelelementsPackage.Literals.RATIONALE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Comment getBase_Comment() {
+ if (base_Comment != null && base_Comment.eIsProxy()) {
+ InternalEObject oldBase_Comment = (InternalEObject)base_Comment;
+ base_Comment = (Comment)eResolveProxy(oldBase_Comment);
+ if (base_Comment != oldBase_Comment) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ModelelementsPackage.RATIONALE__BASE_COMMENT, oldBase_Comment, base_Comment));
+ }
+ }
+ return base_Comment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Comment basicGetBase_Comment() {
+ return base_Comment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Comment(Comment newBase_Comment) {
+ Comment oldBase_Comment = base_Comment;
+ base_Comment = newBase_Comment;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelelementsPackage.RATIONALE__BASE_COMMENT, oldBase_Comment, base_Comment));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ModelelementsPackage.RATIONALE__BASE_COMMENT:
+ if (resolve) return getBase_Comment();
+ return basicGetBase_Comment();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ModelelementsPackage.RATIONALE__BASE_COMMENT:
+ setBase_Comment((Comment)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.RATIONALE__BASE_COMMENT:
+ setBase_Comment((Comment)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.RATIONALE__BASE_COMMENT:
+ return base_Comment != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //RationaleImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/StakeholderImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/StakeholderImpl.java
new file mode 100644
index 00000000000..86bb45a2af0
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/StakeholderImpl.java
@@ -0,0 +1,251 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements.internal.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+import org.eclipse.papyrus.sysml14.modelelements.Stakeholder;
+
+import org.eclipse.uml2.uml.Classifier;
+import org.eclipse.uml2.uml.Comment;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Stakeholder</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.StakeholderImpl#getBase_Classifier <em>Base Classifier</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.StakeholderImpl#getConcern <em>Concern</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.StakeholderImpl#getConcernList <em>Concern List</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StakeholderImpl extends MinimalEObjectImpl.Container implements Stakeholder {
+ /**
+ * The cached value of the '{@link #getBase_Classifier() <em>Base Classifier</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Classifier()
+ * @generated
+ * @ordered
+ */
+ protected Classifier base_Classifier;
+
+ /**
+ * The cached value of the '{@link #getConcern() <em>Concern</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConcern()
+ * @generated
+ * @ordered
+ */
+ protected EList<Comment> concern;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StakeholderImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelelementsPackage.Literals.STAKEHOLDER;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Classifier getBase_Classifier() {
+ if (base_Classifier != null && base_Classifier.eIsProxy()) {
+ InternalEObject oldBase_Classifier = (InternalEObject)base_Classifier;
+ base_Classifier = (Classifier)eResolveProxy(oldBase_Classifier);
+ if (base_Classifier != oldBase_Classifier) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ModelelementsPackage.STAKEHOLDER__BASE_CLASSIFIER, oldBase_Classifier, base_Classifier));
+ }
+ }
+ return base_Classifier;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Classifier basicGetBase_Classifier() {
+ return base_Classifier;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Classifier(Classifier newBase_Classifier) {
+ Classifier oldBase_Classifier = base_Classifier;
+ base_Classifier = newBase_Classifier;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelelementsPackage.STAKEHOLDER__BASE_CLASSIFIER, oldBase_Classifier, base_Classifier));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Comment> getConcern() {
+ if (concern == null) {
+ concern = new EObjectResolvingEList<Comment>(Comment.class, this, ModelelementsPackage.STAKEHOLDER__CONCERN);
+ }
+ return concern;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Comment getConcernList() {
+ Comment concernList = basicGetConcernList();
+ return concernList != null && concernList.eIsProxy() ? (Comment)eResolveProxy((InternalEObject)concernList) : concernList;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Comment basicGetConcernList() {
+ // TODO: implement this method to return the 'Concern List' reference
+ // -> do not perform proxy resolution
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setConcernList(Comment newConcernList) {
+ // TODO: implement this method to set the 'Concern List' reference
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ModelelementsPackage.STAKEHOLDER__BASE_CLASSIFIER:
+ if (resolve) return getBase_Classifier();
+ return basicGetBase_Classifier();
+ case ModelelementsPackage.STAKEHOLDER__CONCERN:
+ return getConcern();
+ case ModelelementsPackage.STAKEHOLDER__CONCERN_LIST:
+ if (resolve) return getConcernList();
+ return basicGetConcernList();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ModelelementsPackage.STAKEHOLDER__BASE_CLASSIFIER:
+ setBase_Classifier((Classifier)newValue);
+ return;
+ case ModelelementsPackage.STAKEHOLDER__CONCERN:
+ getConcern().clear();
+ getConcern().addAll((Collection<? extends Comment>)newValue);
+ return;
+ case ModelelementsPackage.STAKEHOLDER__CONCERN_LIST:
+ setConcernList((Comment)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.STAKEHOLDER__BASE_CLASSIFIER:
+ setBase_Classifier((Classifier)null);
+ return;
+ case ModelelementsPackage.STAKEHOLDER__CONCERN:
+ getConcern().clear();
+ return;
+ case ModelelementsPackage.STAKEHOLDER__CONCERN_LIST:
+ setConcernList((Comment)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.STAKEHOLDER__BASE_CLASSIFIER:
+ return base_Classifier != null;
+ case ModelelementsPackage.STAKEHOLDER__CONCERN:
+ return concern != null && !concern.isEmpty();
+ case ModelelementsPackage.STAKEHOLDER__CONCERN_LIST:
+ return basicGetConcernList() != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //StakeholderImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ViewImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ViewImpl.java
new file mode 100644
index 00000000000..7891ac10a7c
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ViewImpl.java
@@ -0,0 +1,297 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements.internal.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+import org.eclipse.papyrus.sysml14.modelelements.Stakeholder;
+import org.eclipse.papyrus.sysml14.modelelements.View;
+import org.eclipse.papyrus.sysml14.modelelements.ViewPoint;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>View</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewImpl#getBase_Package <em>Base Package</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewImpl#getViewPoint <em>View Point</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewImpl#getStakeholder <em>Stakeholder</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewImpl#getBase_Class <em>Base Class</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ViewImpl extends MinimalEObjectImpl.Container implements View {
+ /**
+ * The cached value of the '{@link #getBase_Package() <em>Base Package</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Package()
+ * @generated
+ * @ordered
+ */
+ protected org.eclipse.uml2.uml.Package base_Package;
+
+ /**
+ * The cached value of the '{@link #getBase_Class() <em>Base Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Class()
+ * @generated
+ * @ordered
+ */
+ protected org.eclipse.uml2.uml.Class base_Class;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ViewImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelelementsPackage.Literals.VIEW;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Package getBase_Package() {
+ if (base_Package != null && base_Package.eIsProxy()) {
+ InternalEObject oldBase_Package = (InternalEObject)base_Package;
+ base_Package = (org.eclipse.uml2.uml.Package)eResolveProxy(oldBase_Package);
+ if (base_Package != oldBase_Package) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ModelelementsPackage.VIEW__BASE_PACKAGE, oldBase_Package, base_Package));
+ }
+ }
+ return base_Package;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Package basicGetBase_Package() {
+ return base_Package;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Package(org.eclipse.uml2.uml.Package newBase_Package) {
+ org.eclipse.uml2.uml.Package oldBase_Package = base_Package;
+ base_Package = newBase_Package;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelelementsPackage.VIEW__BASE_PACKAGE, oldBase_Package, base_Package));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ViewPoint getViewPoint() {
+ ViewPoint viewPoint = basicGetViewPoint();
+ return viewPoint != null && viewPoint.eIsProxy() ? (ViewPoint)eResolveProxy((InternalEObject)viewPoint) : viewPoint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ViewPoint basicGetViewPoint() {
+ // TODO: implement this method to return the 'View Point' reference
+ // -> do not perform proxy resolution
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setViewPoint(ViewPoint newViewPoint) {
+ // TODO: implement this method to set the 'View Point' reference
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Stakeholder> getStakeholder() {
+ // TODO: implement this method to return the 'Stakeholder' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Class getBase_Class() {
+ if (base_Class != null && base_Class.eIsProxy()) {
+ InternalEObject oldBase_Class = (InternalEObject)base_Class;
+ base_Class = (org.eclipse.uml2.uml.Class)eResolveProxy(oldBase_Class);
+ if (base_Class != oldBase_Class) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ModelelementsPackage.VIEW__BASE_CLASS, oldBase_Class, base_Class));
+ }
+ }
+ return base_Class;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Class basicGetBase_Class() {
+ return base_Class;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Class(org.eclipse.uml2.uml.Class newBase_Class) {
+ org.eclipse.uml2.uml.Class oldBase_Class = base_Class;
+ base_Class = newBase_Class;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelelementsPackage.VIEW__BASE_CLASS, oldBase_Class, base_Class));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ModelelementsPackage.VIEW__BASE_PACKAGE:
+ if (resolve) return getBase_Package();
+ return basicGetBase_Package();
+ case ModelelementsPackage.VIEW__VIEW_POINT:
+ if (resolve) return getViewPoint();
+ return basicGetViewPoint();
+ case ModelelementsPackage.VIEW__STAKEHOLDER:
+ return getStakeholder();
+ case ModelelementsPackage.VIEW__BASE_CLASS:
+ if (resolve) return getBase_Class();
+ return basicGetBase_Class();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ModelelementsPackage.VIEW__BASE_PACKAGE:
+ setBase_Package((org.eclipse.uml2.uml.Package)newValue);
+ return;
+ case ModelelementsPackage.VIEW__VIEW_POINT:
+ setViewPoint((ViewPoint)newValue);
+ return;
+ case ModelelementsPackage.VIEW__STAKEHOLDER:
+ getStakeholder().clear();
+ getStakeholder().addAll((Collection<? extends Stakeholder>)newValue);
+ return;
+ case ModelelementsPackage.VIEW__BASE_CLASS:
+ setBase_Class((org.eclipse.uml2.uml.Class)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.VIEW__BASE_PACKAGE:
+ setBase_Package((org.eclipse.uml2.uml.Package)null);
+ return;
+ case ModelelementsPackage.VIEW__VIEW_POINT:
+ setViewPoint((ViewPoint)null);
+ return;
+ case ModelelementsPackage.VIEW__STAKEHOLDER:
+ getStakeholder().clear();
+ return;
+ case ModelelementsPackage.VIEW__BASE_CLASS:
+ setBase_Class((org.eclipse.uml2.uml.Class)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.VIEW__BASE_PACKAGE:
+ return base_Package != null;
+ case ModelelementsPackage.VIEW__VIEW_POINT:
+ return basicGetViewPoint() != null;
+ case ModelelementsPackage.VIEW__STAKEHOLDER:
+ return !getStakeholder().isEmpty();
+ case ModelelementsPackage.VIEW__BASE_CLASS:
+ return base_Class != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ViewImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ViewPointImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ViewPointImpl.java
new file mode 100644
index 00000000000..c7e3e842759
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/internal/impl/ViewPointImpl.java
@@ -0,0 +1,453 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements.internal.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+import org.eclipse.papyrus.sysml14.modelelements.Stakeholder;
+import org.eclipse.papyrus.sysml14.modelelements.ViewPoint;
+
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.Comment;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>View Point</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewPointImpl#getBase_Class <em>Base Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewPointImpl#getStakeholder <em>Stakeholder</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewPointImpl#getPurpose <em>Purpose</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewPointImpl#getConcernList <em>Concern List</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewPointImpl#getLanguage <em>Language</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewPointImpl#getMethod <em>Method</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewPointImpl#getPresentation <em>Presentation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.modelelements.internal.impl.ViewPointImpl#getConcern <em>Concern</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ViewPointImpl extends MinimalEObjectImpl.Container implements ViewPoint {
+ /**
+ * The cached value of the '{@link #getBase_Class() <em>Base Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Class()
+ * @generated
+ * @ordered
+ */
+ protected org.eclipse.uml2.uml.Class base_Class;
+
+ /**
+ * The cached value of the '{@link #getStakeholder() <em>Stakeholder</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStakeholder()
+ * @generated
+ * @ordered
+ */
+ protected EList<Stakeholder> stakeholder;
+
+ /**
+ * The default value of the '{@link #getPurpose() <em>Purpose</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPurpose()
+ * @generated
+ * @ordered
+ */
+ protected static final String PURPOSE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getPurpose() <em>Purpose</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPurpose()
+ * @generated
+ * @ordered
+ */
+ protected String purpose = PURPOSE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getConcernList() <em>Concern List</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConcernList()
+ * @generated
+ * @ordered
+ */
+ protected EList<Comment> concernList;
+
+ /**
+ * The cached value of the '{@link #getLanguage() <em>Language</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLanguage()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> language;
+
+ /**
+ * The cached value of the '{@link #getPresentation() <em>Presentation</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPresentation()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> presentation;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ViewPointImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelelementsPackage.Literals.VIEW_POINT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Class getBase_Class() {
+ if (base_Class != null && base_Class.eIsProxy()) {
+ InternalEObject oldBase_Class = (InternalEObject)base_Class;
+ base_Class = (org.eclipse.uml2.uml.Class)eResolveProxy(oldBase_Class);
+ if (base_Class != oldBase_Class) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ModelelementsPackage.VIEW_POINT__BASE_CLASS, oldBase_Class, base_Class));
+ }
+ }
+ return base_Class;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Class basicGetBase_Class() {
+ return base_Class;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Class(org.eclipse.uml2.uml.Class newBase_Class) {
+ org.eclipse.uml2.uml.Class oldBase_Class = base_Class;
+ base_Class = newBase_Class;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelelementsPackage.VIEW_POINT__BASE_CLASS, oldBase_Class, base_Class));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Stakeholder> getStakeholder() {
+ if (stakeholder == null) {
+ stakeholder = new EObjectResolvingEList<Stakeholder>(Stakeholder.class, this, ModelelementsPackage.VIEW_POINT__STAKEHOLDER);
+ }
+ return stakeholder;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getPurpose() {
+ return purpose;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPurpose(String newPurpose) {
+ String oldPurpose = purpose;
+ purpose = newPurpose;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ModelelementsPackage.VIEW_POINT__PURPOSE, oldPurpose, purpose));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Comment> getConcernList() {
+ if (concernList == null) {
+ concernList = new EObjectResolvingEList<Comment>(Comment.class, this, ModelelementsPackage.VIEW_POINT__CONCERN_LIST);
+ }
+ return concernList;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<String> getLanguage() {
+ if (language == null) {
+ language = new EDataTypeUniqueEList<String>(String.class, this, ModelelementsPackage.VIEW_POINT__LANGUAGE);
+ }
+ return language;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Behavior> getMethod() {
+ // TODO: implement this method to return the 'Method' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Behavior getMethod(String name) {
+ return getMethod(name, false, null);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Behavior getMethod(String name, boolean ignoreCase, EClass eClass) {
+ methodLoop: for (Behavior method : getMethod()) {
+ if (eClass != null && !eClass.isInstance(method))
+ continue methodLoop;
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(method.getName()) : name.equals(method.getName())))
+ continue methodLoop;
+ return method;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<String> getPresentation() {
+ if (presentation == null) {
+ presentation = new EDataTypeUniqueEList<String>(String.class, this, ModelelementsPackage.VIEW_POINT__PRESENTATION);
+ }
+ return presentation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<String> getConcern() {
+ // TODO: implement this method to return the 'Concern' attribute list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ModelelementsPackage.VIEW_POINT__BASE_CLASS:
+ if (resolve) return getBase_Class();
+ return basicGetBase_Class();
+ case ModelelementsPackage.VIEW_POINT__STAKEHOLDER:
+ return getStakeholder();
+ case ModelelementsPackage.VIEW_POINT__PURPOSE:
+ return getPurpose();
+ case ModelelementsPackage.VIEW_POINT__CONCERN_LIST:
+ return getConcernList();
+ case ModelelementsPackage.VIEW_POINT__LANGUAGE:
+ return getLanguage();
+ case ModelelementsPackage.VIEW_POINT__METHOD:
+ return getMethod();
+ case ModelelementsPackage.VIEW_POINT__PRESENTATION:
+ return getPresentation();
+ case ModelelementsPackage.VIEW_POINT__CONCERN:
+ return getConcern();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ModelelementsPackage.VIEW_POINT__BASE_CLASS:
+ setBase_Class((org.eclipse.uml2.uml.Class)newValue);
+ return;
+ case ModelelementsPackage.VIEW_POINT__STAKEHOLDER:
+ getStakeholder().clear();
+ getStakeholder().addAll((Collection<? extends Stakeholder>)newValue);
+ return;
+ case ModelelementsPackage.VIEW_POINT__PURPOSE:
+ setPurpose((String)newValue);
+ return;
+ case ModelelementsPackage.VIEW_POINT__CONCERN_LIST:
+ getConcernList().clear();
+ getConcernList().addAll((Collection<? extends Comment>)newValue);
+ return;
+ case ModelelementsPackage.VIEW_POINT__LANGUAGE:
+ getLanguage().clear();
+ getLanguage().addAll((Collection<? extends String>)newValue);
+ return;
+ case ModelelementsPackage.VIEW_POINT__METHOD:
+ getMethod().clear();
+ getMethod().addAll((Collection<? extends Behavior>)newValue);
+ return;
+ case ModelelementsPackage.VIEW_POINT__PRESENTATION:
+ getPresentation().clear();
+ getPresentation().addAll((Collection<? extends String>)newValue);
+ return;
+ case ModelelementsPackage.VIEW_POINT__CONCERN:
+ getConcern().clear();
+ getConcern().addAll((Collection<? extends String>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.VIEW_POINT__BASE_CLASS:
+ setBase_Class((org.eclipse.uml2.uml.Class)null);
+ return;
+ case ModelelementsPackage.VIEW_POINT__STAKEHOLDER:
+ getStakeholder().clear();
+ return;
+ case ModelelementsPackage.VIEW_POINT__PURPOSE:
+ setPurpose(PURPOSE_EDEFAULT);
+ return;
+ case ModelelementsPackage.VIEW_POINT__CONCERN_LIST:
+ getConcernList().clear();
+ return;
+ case ModelelementsPackage.VIEW_POINT__LANGUAGE:
+ getLanguage().clear();
+ return;
+ case ModelelementsPackage.VIEW_POINT__METHOD:
+ getMethod().clear();
+ return;
+ case ModelelementsPackage.VIEW_POINT__PRESENTATION:
+ getPresentation().clear();
+ return;
+ case ModelelementsPackage.VIEW_POINT__CONCERN:
+ getConcern().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ModelelementsPackage.VIEW_POINT__BASE_CLASS:
+ return base_Class != null;
+ case ModelelementsPackage.VIEW_POINT__STAKEHOLDER:
+ return stakeholder != null && !stakeholder.isEmpty();
+ case ModelelementsPackage.VIEW_POINT__PURPOSE:
+ return PURPOSE_EDEFAULT == null ? purpose != null : !PURPOSE_EDEFAULT.equals(purpose);
+ case ModelelementsPackage.VIEW_POINT__CONCERN_LIST:
+ return concernList != null && !concernList.isEmpty();
+ case ModelelementsPackage.VIEW_POINT__LANGUAGE:
+ return language != null && !language.isEmpty();
+ case ModelelementsPackage.VIEW_POINT__METHOD:
+ return !getMethod().isEmpty();
+ case ModelelementsPackage.VIEW_POINT__PRESENTATION:
+ return presentation != null && !presentation.isEmpty();
+ case ModelelementsPackage.VIEW_POINT__CONCERN:
+ return !getConcern().isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (purpose: "); //$NON-NLS-1$
+ result.append(purpose);
+ result.append(", language: "); //$NON-NLS-1$
+ result.append(language);
+ result.append(", presentation: "); //$NON-NLS-1$
+ result.append(presentation);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ViewPointImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/util/ModelelementsAdapterFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/util/ModelelementsAdapterFactory.java
new file mode 100644
index 00000000000..87b966d23c9
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/util/ModelelementsAdapterFactory.java
@@ -0,0 +1,252 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.sysml14.modelelements.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage
+ * @generated
+ */
+public class ModelelementsAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ModelelementsPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelelementsAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ModelelementsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ModelelementsSwitch<Adapter> modelSwitch =
+ new ModelelementsSwitch<Adapter>() {
+ @Override
+ public Adapter caseRationale(Rationale object) {
+ return createRationaleAdapter();
+ }
+ @Override
+ public Adapter caseView(View object) {
+ return createViewAdapter();
+ }
+ @Override
+ public Adapter caseViewPoint(ViewPoint object) {
+ return createViewPointAdapter();
+ }
+ @Override
+ public Adapter caseStakeholder(Stakeholder object) {
+ return createStakeholderAdapter();
+ }
+ @Override
+ public Adapter caseConform(Conform object) {
+ return createConformAdapter();
+ }
+ @Override
+ public Adapter caseProblem(Problem object) {
+ return createProblemAdapter();
+ }
+ @Override
+ public Adapter caseExpose(Expose object) {
+ return createExposeAdapter();
+ }
+ @Override
+ public Adapter caseElementGroup(ElementGroup object) {
+ return createElementGroupAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.modelelements.Rationale <em>Rationale</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Rationale
+ * @generated
+ */
+ public Adapter createRationaleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.modelelements.View <em>View</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.modelelements.View
+ * @generated
+ */
+ public Adapter createViewAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.modelelements.ViewPoint <em>View Point</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ViewPoint
+ * @generated
+ */
+ public Adapter createViewPointAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.modelelements.Stakeholder <em>Stakeholder</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Stakeholder
+ * @generated
+ */
+ public Adapter createStakeholderAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.modelelements.Conform <em>Conform</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Conform
+ * @generated
+ */
+ public Adapter createConformAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.modelelements.Problem <em>Problem</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Problem
+ * @generated
+ */
+ public Adapter createProblemAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.modelelements.Expose <em>Expose</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.modelelements.Expose
+ * @generated
+ */
+ public Adapter createExposeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.modelelements.ElementGroup <em>Element Group</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.modelelements.ElementGroup
+ * @generated
+ */
+ public Adapter createElementGroupAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //ModelelementsAdapterFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/util/ModelelementsSwitch.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/util/ModelelementsSwitch.java
new file mode 100644
index 00000000000..f5571b529ea
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/modelelements/util/ModelelementsSwitch.java
@@ -0,0 +1,263 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.modelelements.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.sysml14.modelelements.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage
+ * @generated
+ */
+public class ModelelementsSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ModelelementsPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelelementsSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ModelelementsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case ModelelementsPackage.RATIONALE: {
+ Rationale rationale = (Rationale)theEObject;
+ T result = caseRationale(rationale);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ModelelementsPackage.VIEW: {
+ View view = (View)theEObject;
+ T result = caseView(view);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ModelelementsPackage.VIEW_POINT: {
+ ViewPoint viewPoint = (ViewPoint)theEObject;
+ T result = caseViewPoint(viewPoint);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ModelelementsPackage.STAKEHOLDER: {
+ Stakeholder stakeholder = (Stakeholder)theEObject;
+ T result = caseStakeholder(stakeholder);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ModelelementsPackage.CONFORM: {
+ Conform conform = (Conform)theEObject;
+ T result = caseConform(conform);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ModelelementsPackage.PROBLEM: {
+ Problem problem = (Problem)theEObject;
+ T result = caseProblem(problem);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ModelelementsPackage.EXPOSE: {
+ Expose expose = (Expose)theEObject;
+ T result = caseExpose(expose);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ModelelementsPackage.ELEMENT_GROUP: {
+ ElementGroup elementGroup = (ElementGroup)theEObject;
+ T result = caseElementGroup(elementGroup);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Rationale</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Rationale</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseRationale(Rationale object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>View</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>View</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseView(View object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>View Point</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>View Point</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseViewPoint(ViewPoint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Stakeholder</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Stakeholder</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStakeholder(Stakeholder object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Conform</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Conform</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConform(Conform object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Problem</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Problem</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseProblem(Problem object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Expose</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Expose</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseExpose(Expose object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Element Group</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Element Group</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseElementGroup(ElementGroup object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //ModelelementsSwitch
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/AcceptChangeStructuralFeatureEventAction.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/AcceptChangeStructuralFeatureEventAction.java
new file mode 100644
index 00000000000..aa2bb009ae0
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/AcceptChangeStructuralFeatureEventAction.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.AcceptEventAction;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Accept Change Structural Feature Event Action</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.AcceptChangeStructuralFeatureEventAction#getBase_AcceptEventAction <em>Base Accept Event Action</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getAcceptChangeStructuralFeatureEventAction()
+ * @model
+ * @generated
+ */
+public interface AcceptChangeStructuralFeatureEventAction extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Accept Event Action</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Accept Event Action</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Accept Event Action</em>' reference.
+ * @see #setBase_AcceptEventAction(AcceptEventAction)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getAcceptChangeStructuralFeatureEventAction_Base_AcceptEventAction()
+ * @model ordered="false"
+ * @generated
+ */
+ AcceptEventAction getBase_AcceptEventAction();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.AcceptChangeStructuralFeatureEventAction#getBase_AcceptEventAction <em>Base Accept Event Action</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Accept Event Action</em>' reference.
+ * @see #getBase_AcceptEventAction()
+ * @generated
+ */
+ void setBase_AcceptEventAction(AcceptEventAction value);
+
+} // AcceptChangeStructuralFeatureEventAction
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/ChangeStructuralFeatureEvent.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/ChangeStructuralFeatureEvent.java
new file mode 100644
index 00000000000..8a1d2928c7a
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/ChangeStructuralFeatureEvent.java
@@ -0,0 +1,86 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.ChangeEvent;
+import org.eclipse.uml2.uml.StructuralFeature;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Change Structural Feature Event</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent#getBase_ChangeEvent <em>Base Change Event</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent#getStructuralFeature <em>Structural Feature</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getChangeStructuralFeatureEvent()
+ * @model
+ * @generated
+ */
+public interface ChangeStructuralFeatureEvent extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Change Event</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Change Event</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Change Event</em>' reference.
+ * @see #setBase_ChangeEvent(ChangeEvent)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getChangeStructuralFeatureEvent_Base_ChangeEvent()
+ * @model ordered="false"
+ * @generated
+ */
+ ChangeEvent getBase_ChangeEvent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent#getBase_ChangeEvent <em>Base Change Event</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Change Event</em>' reference.
+ * @see #getBase_ChangeEvent()
+ * @generated
+ */
+ void setBase_ChangeEvent(ChangeEvent value);
+
+ /**
+ * Returns the value of the '<em><b>Structural Feature</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Structural Feature</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Structural Feature</em>' reference.
+ * @see #setStructuralFeature(StructuralFeature)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getChangeStructuralFeatureEvent_StructuralFeature()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ StructuralFeature getStructuralFeature();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent#getStructuralFeature <em>Structural Feature</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Structural Feature</em>' reference.
+ * @see #getStructuralFeature()
+ * @generated
+ */
+ void setStructuralFeature(StructuralFeature value);
+
+} // ChangeStructuralFeatureEvent
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/DirectedFeature.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/DirectedFeature.java
new file mode 100644
index 00000000000..497b8b20a1d
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/DirectedFeature.java
@@ -0,0 +1,88 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Feature;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Directed Feature</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.DirectedFeature#getBase_Feature <em>Base Feature</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.DirectedFeature#getFeatureDirection <em>Feature Direction</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getDirectedFeature()
+ * @model
+ * @generated
+ */
+public interface DirectedFeature extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Feature</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Feature</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Feature</em>' reference.
+ * @see #setBase_Feature(Feature)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getDirectedFeature_Base_Feature()
+ * @model ordered="false"
+ * @generated
+ */
+ Feature getBase_Feature();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.DirectedFeature#getBase_Feature <em>Base Feature</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Feature</em>' reference.
+ * @see #getBase_Feature()
+ * @generated
+ */
+ void setBase_Feature(Feature value);
+
+ /**
+ * Returns the value of the '<em><b>Feature Direction</b></em>' attribute.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.sysml14.portandflows.FeatureDirection}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Feature Direction</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Feature Direction</em>' attribute.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FeatureDirection
+ * @see #setFeatureDirection(FeatureDirection)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getDirectedFeature_FeatureDirection()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ FeatureDirection getFeatureDirection();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.DirectedFeature#getFeatureDirection <em>Feature Direction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Feature Direction</em>' attribute.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FeatureDirection
+ * @see #getFeatureDirection()
+ * @generated
+ */
+ void setFeatureDirection(FeatureDirection value);
+
+} // DirectedFeature
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FeatureDirection.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FeatureDirection.java
new file mode 100644
index 00000000000..8b9a904c9aa
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FeatureDirection.java
@@ -0,0 +1,247 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Feature Direction</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getFeatureDirection()
+ * @model
+ * @generated
+ */
+public enum FeatureDirection implements Enumerator {
+ /**
+ * The '<em><b>Provided</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #PROVIDED_VALUE
+ * @generated
+ * @ordered
+ */
+ PROVIDED(0, "provided", "provided"), //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * The '<em><b>Required</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #REQUIRED_VALUE
+ * @generated
+ * @ordered
+ */
+ REQUIRED(1, "required", "required"), //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * The '<em><b>Provided Required</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #PROVIDED_REQUIRED_VALUE
+ * @generated
+ * @ordered
+ */
+ PROVIDED_REQUIRED(2, "providedRequired", "providedRequired"); //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * The '<em><b>Provided</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Provided</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #PROVIDED
+ * @model name="provided"
+ * @generated
+ * @ordered
+ */
+ public static final int PROVIDED_VALUE = 0;
+
+ /**
+ * The '<em><b>Required</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Required</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #REQUIRED
+ * @model name="required"
+ * @generated
+ * @ordered
+ */
+ public static final int REQUIRED_VALUE = 1;
+
+ /**
+ * The '<em><b>Provided Required</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Provided Required</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #PROVIDED_REQUIRED
+ * @model name="providedRequired"
+ * @generated
+ * @ordered
+ */
+ public static final int PROVIDED_REQUIRED_VALUE = 2;
+
+ /**
+ * An array of all the '<em><b>Feature Direction</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final FeatureDirection[] VALUES_ARRAY =
+ new FeatureDirection[] {
+ PROVIDED,
+ REQUIRED,
+ PROVIDED_REQUIRED,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Feature Direction</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<FeatureDirection> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Feature Direction</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param literal the literal.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static FeatureDirection get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ FeatureDirection result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Feature Direction</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name the name.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static FeatureDirection getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ FeatureDirection result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Feature Direction</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the integer value.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static FeatureDirection get(int value) {
+ switch (value) {
+ case PROVIDED_VALUE: return PROVIDED;
+ case REQUIRED_VALUE: return REQUIRED;
+ case PROVIDED_REQUIRED_VALUE: return PROVIDED_REQUIRED;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private FeatureDirection(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //FeatureDirection
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FlowDirection.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FlowDirection.java
new file mode 100644
index 00000000000..71a7ed10585
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FlowDirection.java
@@ -0,0 +1,247 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Flow Direction</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * FlowDirection is an enumeration type that defines literals used for specifying input and output directions. FlowDirection is used by flow properties to indicate if a property is an input or an output with respect to its owner.
+ * <!-- end-model-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getFlowDirection()
+ * @model
+ * @generated
+ */
+public enum FlowDirection implements Enumerator {
+ /**
+ * The '<em><b>In</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #IN_VALUE
+ * @generated
+ * @ordered
+ */
+ IN(0, "in", "in"), //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * The '<em><b>Out</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #OUT_VALUE
+ * @generated
+ * @ordered
+ */
+ OUT(1, "out", "out"), //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * The '<em><b>Inout</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #INOUT_VALUE
+ * @generated
+ * @ordered
+ */
+ INOUT(2, "inout", "inout"); //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * The '<em><b>In</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Indicates that the flow property is input to the owning block.
+ * <!-- end-model-doc -->
+ * @see #IN
+ * @model name="in"
+ * @generated
+ * @ordered
+ */
+ public static final int IN_VALUE = 0;
+
+ /**
+ * The '<em><b>Out</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Indicates that the flow property is an output of the owning block.
+ * <!-- end-model-doc -->
+ * @see #OUT
+ * @model name="out"
+ * @generated
+ * @ordered
+ */
+ public static final int OUT_VALUE = 1;
+
+ /**
+ * The '<em><b>Inout</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Indicates that the flow property is both an input and an output of the owning block.
+ * <!-- end-model-doc -->
+ * @see #INOUT
+ * @model name="inout"
+ * @generated
+ * @ordered
+ */
+ public static final int INOUT_VALUE = 2;
+
+ /**
+ * An array of all the '<em><b>Flow Direction</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final FlowDirection[] VALUES_ARRAY =
+ new FlowDirection[] {
+ IN,
+ OUT,
+ INOUT,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Flow Direction</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<FlowDirection> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Flow Direction</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param literal the literal.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static FlowDirection get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ FlowDirection result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Flow Direction</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name the name.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static FlowDirection getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ FlowDirection result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Flow Direction</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the integer value.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static FlowDirection get(int value) {
+ switch (value) {
+ case IN_VALUE: return IN;
+ case OUT_VALUE: return OUT;
+ case INOUT_VALUE: return INOUT;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private FlowDirection(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //FlowDirection
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FlowProperty.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FlowProperty.java
new file mode 100644
index 00000000000..7105a0f2f8b
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FlowProperty.java
@@ -0,0 +1,92 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Flow Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A FlowProperty signifies a single flow element that can flow to/from a block. A flow property’s values are either received from or transmitted to an external block. Flow properties are defined directly on blocks or flow specifications that are those specifications which type the flow ports. Flow properties enable item flows across connectors connecting parts of the corresponding block types, either directly (in case of the property is defined on the block) or via flowPorts. For Block, Data Type, and Value Type properties, setting an “out” FlowProperty value of a block usage on one end of a connector will result in assigning the same value of an “in” FlowProperty of a block usage at the other end of the connector, provided the flow properties are matched. Flow properties of type Signal imply sending and/or receiving of a signal usage. An “out” FlowProperty of type Signal means that the owning Block may broadcast the signal via connectors and an “in” FlowProperty means that the owning block is able to receive the Signal.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.FlowProperty#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.FlowProperty#getDirection <em>Direction</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getFlowProperty()
+ * @model
+ * @generated
+ */
+public interface FlowProperty extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Property</em>' reference.
+ * @see #setBase_Property(Property)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getFlowProperty_Base_Property()
+ * @model ordered="false"
+ * @generated
+ */
+ Property getBase_Property();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.FlowProperty#getBase_Property <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Property</em>' reference.
+ * @see #getBase_Property()
+ * @generated
+ */
+ void setBase_Property(Property value);
+
+ /**
+ * Returns the value of the '<em><b>Direction</b></em>' attribute.
+ * The default value is <code>"inout"</code>.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.sysml14.portandflows.FlowDirection}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Specifies if the property value is received from an external block (direction=“in”), transmitted to an external Block (direction=“out”) or both (direction=“inout”).
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Direction</em>' attribute.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FlowDirection
+ * @see #setDirection(FlowDirection)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getFlowProperty_Direction()
+ * @model default="inout" required="true" ordered="false"
+ * @generated
+ */
+ FlowDirection getDirection();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.FlowProperty#getDirection <em>Direction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Direction</em>' attribute.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FlowDirection
+ * @see #getDirection()
+ * @generated
+ */
+ void setDirection(FlowDirection value);
+
+} // FlowProperty
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FullPort.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FullPort.java
new file mode 100644
index 00000000000..a6fdbbd9bc5
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/FullPort.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Port;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Full Port</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.FullPort#getBase_Port <em>Base Port</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getFullPort()
+ * @model
+ * @generated
+ */
+public interface FullPort extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Port</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Port</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Port</em>' reference.
+ * @see #setBase_Port(Port)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getFullPort_Base_Port()
+ * @model ordered="false"
+ * @generated
+ */
+ Port getBase_Port();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.FullPort#getBase_Port <em>Base Port</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Port</em>' reference.
+ * @see #getBase_Port()
+ * @generated
+ */
+ void setBase_Port(Port value);
+
+} // FullPort
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/InterfaceBlock.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/InterfaceBlock.java
new file mode 100644
index 00000000000..18485c4f0aa
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/InterfaceBlock.java
@@ -0,0 +1,24 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import org.eclipse.papyrus.sysml14.blocks.Block;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Interface Block</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getInterfaceBlock()
+ * @model
+ * @generated
+ */
+public interface InterfaceBlock extends Block {
+} // InterfaceBlock
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/InvocationOnNestedPortAction.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/InvocationOnNestedPortAction.java
new file mode 100644
index 00000000000..9c14c78996c
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/InvocationOnNestedPortAction.java
@@ -0,0 +1,104 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath;
+
+import org.eclipse.uml2.uml.InvocationAction;
+import org.eclipse.uml2.uml.Port;
+import org.eclipse.uml2.uml.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Invocation On Nested Port Action</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction#getBase_InvocationAction <em>Base Invocation Action</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction#getOnNestedPort <em>On Nested Port</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getInvocationOnNestedPortAction()
+ * @model
+ * @generated
+ */
+public interface InvocationOnNestedPortAction extends ElementPropertyPath {
+ /**
+ * Returns the value of the '<em><b>Base Invocation Action</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Invocation Action</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Invocation Action</em>' reference.
+ * @see #setBase_InvocationAction(InvocationAction)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getInvocationOnNestedPortAction_Base_InvocationAction()
+ * @model ordered="false"
+ * @generated
+ */
+ InvocationAction getBase_InvocationAction();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction#getBase_InvocationAction <em>Base Invocation Action</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Invocation Action</em>' reference.
+ * @see #getBase_InvocationAction()
+ * @generated
+ */
+ void setBase_InvocationAction(InvocationAction value);
+
+ /**
+ * Returns the value of the '<em><b>On Nested Port</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.Port}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>On Nested Port</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>On Nested Port</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getInvocationOnNestedPortAction_OnNestedPort()
+ * @model required="true"
+ * @generated
+ */
+ EList<Port> getOnNestedPort();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Port} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>On Nested Port</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Port} to retrieve, or <code>null</code>.
+ * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.Port} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.Port} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
+ * @see #getOnNestedPort()
+ * @generated
+ */
+ Port getOnNestedPort(String name, Type type);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Port} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>On Nested Port</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Port} to retrieve, or <code>null</code>.
+ * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.Port} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @return The first {@link org.eclipse.uml2.uml.Port} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
+ * @see #getOnNestedPort()
+ * @generated
+ */
+ Port getOnNestedPort(String name, Type type, boolean ignoreCase);
+
+} // InvocationOnNestedPortAction
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/ItemFlow.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/ItemFlow.java
new file mode 100644
index 00000000000..1a200ed5ed7
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/ItemFlow.java
@@ -0,0 +1,89 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.InformationFlow;
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Item Flow</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * An ItemFlow describes the flow of items across a connector or an association. It may constrain the item exchange between blocks, block usages, or flow ports as specified by their flow properties. For example, a pump connected to a tank: the pump has an “out” flow property of type Liquid and the tank has an “in” FlowProperty of type Liquid. To signify that only water flows between the pump and the tank, we can specify an ItemFlow of type Water on the connector.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.ItemFlow#getBase_InformationFlow <em>Base Information Flow</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.ItemFlow#getItemProperty <em>Item Property</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getItemFlow()
+ * @model
+ * @generated
+ */
+public interface ItemFlow extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Information Flow</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Information Flow</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Information Flow</em>' reference.
+ * @see #setBase_InformationFlow(InformationFlow)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getItemFlow_Base_InformationFlow()
+ * @model ordered="false"
+ * @generated
+ */
+ InformationFlow getBase_InformationFlow();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.ItemFlow#getBase_InformationFlow <em>Base Information Flow</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Information Flow</em>' reference.
+ * @see #getBase_InformationFlow()
+ * @generated
+ */
+ void setBase_InformationFlow(InformationFlow value);
+
+ /**
+ * Returns the value of the '<em><b>Item Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * An optional property that relates the flowing item to the instances of the connector’s enclosing block. This property is applicable only for item flows assigned to connectors. The multiplicity is zero if the item flow is assigned to an Association.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Item Property</em>' reference.
+ * @see #setItemProperty(Property)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getItemFlow_ItemProperty()
+ * @model ordered="false"
+ * @generated
+ */
+ Property getItemProperty();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.ItemFlow#getItemProperty <em>Item Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Item Property</em>' reference.
+ * @see #getItemProperty()
+ * @generated
+ */
+ void setItemProperty(Property value);
+
+} // ItemFlow
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/PortandflowsFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/PortandflowsFactory.java
new file mode 100644
index 00000000000..243f324a815
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/PortandflowsFactory.java
@@ -0,0 +1,129 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage
+ * @generated
+ */
+public interface PortandflowsFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ PortandflowsFactory eINSTANCE = org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Item Flow</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Item Flow</em>'.
+ * @generated
+ */
+ ItemFlow createItemFlow();
+
+ /**
+ * Returns a new object of class '<em>Flow Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Flow Property</em>'.
+ * @generated
+ */
+ FlowProperty createFlowProperty();
+
+ /**
+ * Returns a new object of class '<em>Full Port</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Full Port</em>'.
+ * @generated
+ */
+ FullPort createFullPort();
+
+ /**
+ * Returns a new object of class '<em>Interface Block</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Interface Block</em>'.
+ * @generated
+ */
+ InterfaceBlock createInterfaceBlock();
+
+ /**
+ * Returns a new object of class '<em>Proxy Port</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Proxy Port</em>'.
+ * @generated
+ */
+ ProxyPort createProxyPort();
+
+ /**
+ * Returns a new object of class '<em>Accept Change Structural Feature Event Action</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Accept Change Structural Feature Event Action</em>'.
+ * @generated
+ */
+ AcceptChangeStructuralFeatureEventAction createAcceptChangeStructuralFeatureEventAction();
+
+ /**
+ * Returns a new object of class '<em>Change Structural Feature Event</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Change Structural Feature Event</em>'.
+ * @generated
+ */
+ ChangeStructuralFeatureEvent createChangeStructuralFeatureEvent();
+
+ /**
+ * Returns a new object of class '<em>Directed Feature</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Directed Feature</em>'.
+ * @generated
+ */
+ DirectedFeature createDirectedFeature();
+
+ /**
+ * Returns a new object of class '<em>Invocation On Nested Port Action</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Invocation On Nested Port Action</em>'.
+ * @generated
+ */
+ InvocationOnNestedPortAction createInvocationOnNestedPortAction();
+
+ /**
+ * Returns a new object of class '<em>Trigger On Nested Port</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Trigger On Nested Port</em>'.
+ * @generated
+ */
+ TriggerOnNestedPort createTriggerOnNestedPort();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ PortandflowsPackage getPortandflowsPackage();
+
+} //PortandflowsFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/PortandflowsPackage.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/PortandflowsPackage.java
new file mode 100644
index 00000000000..4671c29cc99
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/PortandflowsPackage.java
@@ -0,0 +1,1109 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='PortsandFlows'"
+ * @generated
+ */
+public interface PortandflowsPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "portandflows"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/1.4/SysML/PortAndFlows"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "PortAndFlows"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ PortandflowsPackage eINSTANCE = org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.ItemFlowImpl <em>Item Flow</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.ItemFlowImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getItemFlow()
+ * @generated
+ */
+ int ITEM_FLOW = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Information Flow</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ITEM_FLOW__BASE_INFORMATION_FLOW = 0;
+
+ /**
+ * The feature id for the '<em><b>Item Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ITEM_FLOW__ITEM_PROPERTY = 1;
+
+ /**
+ * The number of structural features of the '<em>Item Flow</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ITEM_FLOW_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Item Flow</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ITEM_FLOW_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.FlowPropertyImpl <em>Flow Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.FlowPropertyImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getFlowProperty()
+ * @generated
+ */
+ int FLOW_PROPERTY = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FLOW_PROPERTY__BASE_PROPERTY = 0;
+
+ /**
+ * The feature id for the '<em><b>Direction</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FLOW_PROPERTY__DIRECTION = 1;
+
+ /**
+ * The number of structural features of the '<em>Flow Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FLOW_PROPERTY_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Flow Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FLOW_PROPERTY_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.FullPortImpl <em>Full Port</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.FullPortImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getFullPort()
+ * @generated
+ */
+ int FULL_PORT = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Port</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FULL_PORT__BASE_PORT = 0;
+
+ /**
+ * The number of structural features of the '<em>Full Port</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FULL_PORT_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Full Port</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FULL_PORT_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.InterfaceBlockImpl <em>Interface Block</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.InterfaceBlockImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getInterfaceBlock()
+ * @generated
+ */
+ int INTERFACE_BLOCK = 3;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTERFACE_BLOCK__BASE_CLASS = BlocksPackage.BLOCK__BASE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Is Encapsulated</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTERFACE_BLOCK__IS_ENCAPSULATED = BlocksPackage.BLOCK__IS_ENCAPSULATED;
+
+ /**
+ * The number of structural features of the '<em>Interface Block</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTERFACE_BLOCK_FEATURE_COUNT = BlocksPackage.BLOCK_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Interface Block</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INTERFACE_BLOCK_OPERATION_COUNT = BlocksPackage.BLOCK_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.ProxyPortImpl <em>Proxy Port</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.ProxyPortImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getProxyPort()
+ * @generated
+ */
+ int PROXY_PORT = 4;
+
+ /**
+ * The feature id for the '<em><b>Base Port</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROXY_PORT__BASE_PORT = 0;
+
+ /**
+ * The number of structural features of the '<em>Proxy Port</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROXY_PORT_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Proxy Port</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROXY_PORT_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.AcceptChangeStructuralFeatureEventActionImpl <em>Accept Change Structural Feature Event Action</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.AcceptChangeStructuralFeatureEventActionImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getAcceptChangeStructuralFeatureEventAction()
+ * @generated
+ */
+ int ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION = 5;
+
+ /**
+ * The feature id for the '<em><b>Base Accept Event Action</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION__BASE_ACCEPT_EVENT_ACTION = 0;
+
+ /**
+ * The number of structural features of the '<em>Accept Change Structural Feature Event Action</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Accept Change Structural Feature Event Action</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.ChangeStructuralFeatureEventImpl <em>Change Structural Feature Event</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.ChangeStructuralFeatureEventImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getChangeStructuralFeatureEvent()
+ * @generated
+ */
+ int CHANGE_STRUCTURAL_FEATURE_EVENT = 6;
+
+ /**
+ * The feature id for the '<em><b>Base Change Event</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CHANGE_STRUCTURAL_FEATURE_EVENT__BASE_CHANGE_EVENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Structural Feature</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CHANGE_STRUCTURAL_FEATURE_EVENT__STRUCTURAL_FEATURE = 1;
+
+ /**
+ * The number of structural features of the '<em>Change Structural Feature Event</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CHANGE_STRUCTURAL_FEATURE_EVENT_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Change Structural Feature Event</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CHANGE_STRUCTURAL_FEATURE_EVENT_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.DirectedFeatureImpl <em>Directed Feature</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.DirectedFeatureImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getDirectedFeature()
+ * @generated
+ */
+ int DIRECTED_FEATURE = 7;
+
+ /**
+ * The feature id for the '<em><b>Base Feature</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECTED_FEATURE__BASE_FEATURE = 0;
+
+ /**
+ * The feature id for the '<em><b>Feature Direction</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECTED_FEATURE__FEATURE_DIRECTION = 1;
+
+ /**
+ * The number of structural features of the '<em>Directed Feature</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECTED_FEATURE_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Directed Feature</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIRECTED_FEATURE_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.InvocationOnNestedPortActionImpl <em>Invocation On Nested Port Action</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.InvocationOnNestedPortActionImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getInvocationOnNestedPortAction()
+ * @generated
+ */
+ int INVOCATION_ON_NESTED_PORT_ACTION = 8;
+
+ /**
+ * The feature id for the '<em><b>Base Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INVOCATION_ON_NESTED_PORT_ACTION__BASE_ELEMENT = BlocksPackage.ELEMENT_PROPERTY_PATH__BASE_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INVOCATION_ON_NESTED_PORT_ACTION__PROPERTY_PATH = BlocksPackage.ELEMENT_PROPERTY_PATH__PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Base Invocation Action</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INVOCATION_ON_NESTED_PORT_ACTION__BASE_INVOCATION_ACTION = BlocksPackage.ELEMENT_PROPERTY_PATH_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>On Nested Port</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INVOCATION_ON_NESTED_PORT_ACTION__ON_NESTED_PORT = BlocksPackage.ELEMENT_PROPERTY_PATH_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Invocation On Nested Port Action</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INVOCATION_ON_NESTED_PORT_ACTION_FEATURE_COUNT = BlocksPackage.ELEMENT_PROPERTY_PATH_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Invocation On Nested Port Action</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int INVOCATION_ON_NESTED_PORT_ACTION_OPERATION_COUNT = BlocksPackage.ELEMENT_PROPERTY_PATH_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.TriggerOnNestedPortImpl <em>Trigger On Nested Port</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.TriggerOnNestedPortImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getTriggerOnNestedPort()
+ * @generated
+ */
+ int TRIGGER_ON_NESTED_PORT = 9;
+
+ /**
+ * The feature id for the '<em><b>Base Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRIGGER_ON_NESTED_PORT__BASE_ELEMENT = BlocksPackage.ELEMENT_PROPERTY_PATH__BASE_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRIGGER_ON_NESTED_PORT__PROPERTY_PATH = BlocksPackage.ELEMENT_PROPERTY_PATH__PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Base Trigger</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRIGGER_ON_NESTED_PORT__BASE_TRIGGER = BlocksPackage.ELEMENT_PROPERTY_PATH_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>On Nested Port</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRIGGER_ON_NESTED_PORT__ON_NESTED_PORT = BlocksPackage.ELEMENT_PROPERTY_PATH_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Trigger On Nested Port</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRIGGER_ON_NESTED_PORT_FEATURE_COUNT = BlocksPackage.ELEMENT_PROPERTY_PATH_FEATURE_COUNT + 2;
+
+ /**
+ * The number of operations of the '<em>Trigger On Nested Port</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRIGGER_ON_NESTED_PORT_OPERATION_COUNT = BlocksPackage.ELEMENT_PROPERTY_PATH_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.portandflows.FlowDirection <em>Flow Direction</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.FlowDirection
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getFlowDirection()
+ * @generated
+ */
+ int FLOW_DIRECTION = 10;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.portandflows.FeatureDirection <em>Feature Direction</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.FeatureDirection
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getFeatureDirection()
+ * @generated
+ */
+ int FEATURE_DIRECTION = 11;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.portandflows.ItemFlow <em>Item Flow</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Item Flow</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.ItemFlow
+ * @generated
+ */
+ EClass getItemFlow();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.portandflows.ItemFlow#getBase_InformationFlow <em>Base Information Flow</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Information Flow</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.ItemFlow#getBase_InformationFlow()
+ * @see #getItemFlow()
+ * @generated
+ */
+ EReference getItemFlow_Base_InformationFlow();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.portandflows.ItemFlow#getItemProperty <em>Item Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Item Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.ItemFlow#getItemProperty()
+ * @see #getItemFlow()
+ * @generated
+ */
+ EReference getItemFlow_ItemProperty();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.portandflows.FlowProperty <em>Flow Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Flow Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FlowProperty
+ * @generated
+ */
+ EClass getFlowProperty();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.portandflows.FlowProperty#getBase_Property <em>Base Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Property</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FlowProperty#getBase_Property()
+ * @see #getFlowProperty()
+ * @generated
+ */
+ EReference getFlowProperty_Base_Property();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.portandflows.FlowProperty#getDirection <em>Direction</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Direction</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FlowProperty#getDirection()
+ * @see #getFlowProperty()
+ * @generated
+ */
+ EAttribute getFlowProperty_Direction();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.portandflows.FullPort <em>Full Port</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Full Port</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FullPort
+ * @generated
+ */
+ EClass getFullPort();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.portandflows.FullPort#getBase_Port <em>Base Port</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Port</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FullPort#getBase_Port()
+ * @see #getFullPort()
+ * @generated
+ */
+ EReference getFullPort_Base_Port();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.portandflows.InterfaceBlock <em>Interface Block</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Interface Block</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.InterfaceBlock
+ * @generated
+ */
+ EClass getInterfaceBlock();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.portandflows.ProxyPort <em>Proxy Port</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Proxy Port</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.ProxyPort
+ * @generated
+ */
+ EClass getProxyPort();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.portandflows.ProxyPort#getBase_Port <em>Base Port</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Port</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.ProxyPort#getBase_Port()
+ * @see #getProxyPort()
+ * @generated
+ */
+ EReference getProxyPort_Base_Port();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.portandflows.AcceptChangeStructuralFeatureEventAction <em>Accept Change Structural Feature Event Action</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Accept Change Structural Feature Event Action</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.AcceptChangeStructuralFeatureEventAction
+ * @generated
+ */
+ EClass getAcceptChangeStructuralFeatureEventAction();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.portandflows.AcceptChangeStructuralFeatureEventAction#getBase_AcceptEventAction <em>Base Accept Event Action</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Accept Event Action</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.AcceptChangeStructuralFeatureEventAction#getBase_AcceptEventAction()
+ * @see #getAcceptChangeStructuralFeatureEventAction()
+ * @generated
+ */
+ EReference getAcceptChangeStructuralFeatureEventAction_Base_AcceptEventAction();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent <em>Change Structural Feature Event</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Change Structural Feature Event</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent
+ * @generated
+ */
+ EClass getChangeStructuralFeatureEvent();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent#getBase_ChangeEvent <em>Base Change Event</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Change Event</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent#getBase_ChangeEvent()
+ * @see #getChangeStructuralFeatureEvent()
+ * @generated
+ */
+ EReference getChangeStructuralFeatureEvent_Base_ChangeEvent();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent#getStructuralFeature <em>Structural Feature</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Structural Feature</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent#getStructuralFeature()
+ * @see #getChangeStructuralFeatureEvent()
+ * @generated
+ */
+ EReference getChangeStructuralFeatureEvent_StructuralFeature();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.portandflows.DirectedFeature <em>Directed Feature</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Directed Feature</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.DirectedFeature
+ * @generated
+ */
+ EClass getDirectedFeature();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.portandflows.DirectedFeature#getBase_Feature <em>Base Feature</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Feature</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.DirectedFeature#getBase_Feature()
+ * @see #getDirectedFeature()
+ * @generated
+ */
+ EReference getDirectedFeature_Base_Feature();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.portandflows.DirectedFeature#getFeatureDirection <em>Feature Direction</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Feature Direction</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.DirectedFeature#getFeatureDirection()
+ * @see #getDirectedFeature()
+ * @generated
+ */
+ EAttribute getDirectedFeature_FeatureDirection();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction <em>Invocation On Nested Port Action</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Invocation On Nested Port Action</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction
+ * @generated
+ */
+ EClass getInvocationOnNestedPortAction();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction#getBase_InvocationAction <em>Base Invocation Action</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Invocation Action</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction#getBase_InvocationAction()
+ * @see #getInvocationOnNestedPortAction()
+ * @generated
+ */
+ EReference getInvocationOnNestedPortAction_Base_InvocationAction();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction#getOnNestedPort <em>On Nested Port</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>On Nested Port</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction#getOnNestedPort()
+ * @see #getInvocationOnNestedPortAction()
+ * @generated
+ */
+ EReference getInvocationOnNestedPortAction_OnNestedPort();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort <em>Trigger On Nested Port</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Trigger On Nested Port</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort
+ * @generated
+ */
+ EClass getTriggerOnNestedPort();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort#getBase_Trigger <em>Base Trigger</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Trigger</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort#getBase_Trigger()
+ * @see #getTriggerOnNestedPort()
+ * @generated
+ */
+ EReference getTriggerOnNestedPort_Base_Trigger();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort#getOnNestedPort <em>On Nested Port</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>On Nested Port</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort#getOnNestedPort()
+ * @see #getTriggerOnNestedPort()
+ * @generated
+ */
+ EReference getTriggerOnNestedPort_OnNestedPort();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.sysml14.portandflows.FlowDirection <em>Flow Direction</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Flow Direction</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FlowDirection
+ * @generated
+ */
+ EEnum getFlowDirection();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.sysml14.portandflows.FeatureDirection <em>Feature Direction</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Feature Direction</em>'.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FeatureDirection
+ * @generated
+ */
+ EEnum getFeatureDirection();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ PortandflowsFactory getPortandflowsFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.ItemFlowImpl <em>Item Flow</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.ItemFlowImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getItemFlow()
+ * @generated
+ */
+ EClass ITEM_FLOW = eINSTANCE.getItemFlow();
+
+ /**
+ * The meta object literal for the '<em><b>Base Information Flow</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ITEM_FLOW__BASE_INFORMATION_FLOW = eINSTANCE.getItemFlow_Base_InformationFlow();
+
+ /**
+ * The meta object literal for the '<em><b>Item Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ITEM_FLOW__ITEM_PROPERTY = eINSTANCE.getItemFlow_ItemProperty();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.FlowPropertyImpl <em>Flow Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.FlowPropertyImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getFlowProperty()
+ * @generated
+ */
+ EClass FLOW_PROPERTY = eINSTANCE.getFlowProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FLOW_PROPERTY__BASE_PROPERTY = eINSTANCE.getFlowProperty_Base_Property();
+
+ /**
+ * The meta object literal for the '<em><b>Direction</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute FLOW_PROPERTY__DIRECTION = eINSTANCE.getFlowProperty_Direction();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.FullPortImpl <em>Full Port</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.FullPortImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getFullPort()
+ * @generated
+ */
+ EClass FULL_PORT = eINSTANCE.getFullPort();
+
+ /**
+ * The meta object literal for the '<em><b>Base Port</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FULL_PORT__BASE_PORT = eINSTANCE.getFullPort_Base_Port();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.InterfaceBlockImpl <em>Interface Block</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.InterfaceBlockImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getInterfaceBlock()
+ * @generated
+ */
+ EClass INTERFACE_BLOCK = eINSTANCE.getInterfaceBlock();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.ProxyPortImpl <em>Proxy Port</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.ProxyPortImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getProxyPort()
+ * @generated
+ */
+ EClass PROXY_PORT = eINSTANCE.getProxyPort();
+
+ /**
+ * The meta object literal for the '<em><b>Base Port</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PROXY_PORT__BASE_PORT = eINSTANCE.getProxyPort_Base_Port();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.AcceptChangeStructuralFeatureEventActionImpl <em>Accept Change Structural Feature Event Action</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.AcceptChangeStructuralFeatureEventActionImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getAcceptChangeStructuralFeatureEventAction()
+ * @generated
+ */
+ EClass ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION = eINSTANCE.getAcceptChangeStructuralFeatureEventAction();
+
+ /**
+ * The meta object literal for the '<em><b>Base Accept Event Action</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION__BASE_ACCEPT_EVENT_ACTION = eINSTANCE.getAcceptChangeStructuralFeatureEventAction_Base_AcceptEventAction();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.ChangeStructuralFeatureEventImpl <em>Change Structural Feature Event</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.ChangeStructuralFeatureEventImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getChangeStructuralFeatureEvent()
+ * @generated
+ */
+ EClass CHANGE_STRUCTURAL_FEATURE_EVENT = eINSTANCE.getChangeStructuralFeatureEvent();
+
+ /**
+ * The meta object literal for the '<em><b>Base Change Event</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CHANGE_STRUCTURAL_FEATURE_EVENT__BASE_CHANGE_EVENT = eINSTANCE.getChangeStructuralFeatureEvent_Base_ChangeEvent();
+
+ /**
+ * The meta object literal for the '<em><b>Structural Feature</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CHANGE_STRUCTURAL_FEATURE_EVENT__STRUCTURAL_FEATURE = eINSTANCE.getChangeStructuralFeatureEvent_StructuralFeature();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.DirectedFeatureImpl <em>Directed Feature</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.DirectedFeatureImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getDirectedFeature()
+ * @generated
+ */
+ EClass DIRECTED_FEATURE = eINSTANCE.getDirectedFeature();
+
+ /**
+ * The meta object literal for the '<em><b>Base Feature</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DIRECTED_FEATURE__BASE_FEATURE = eINSTANCE.getDirectedFeature_Base_Feature();
+
+ /**
+ * The meta object literal for the '<em><b>Feature Direction</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DIRECTED_FEATURE__FEATURE_DIRECTION = eINSTANCE.getDirectedFeature_FeatureDirection();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.InvocationOnNestedPortActionImpl <em>Invocation On Nested Port Action</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.InvocationOnNestedPortActionImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getInvocationOnNestedPortAction()
+ * @generated
+ */
+ EClass INVOCATION_ON_NESTED_PORT_ACTION = eINSTANCE.getInvocationOnNestedPortAction();
+
+ /**
+ * The meta object literal for the '<em><b>Base Invocation Action</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference INVOCATION_ON_NESTED_PORT_ACTION__BASE_INVOCATION_ACTION = eINSTANCE.getInvocationOnNestedPortAction_Base_InvocationAction();
+
+ /**
+ * The meta object literal for the '<em><b>On Nested Port</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference INVOCATION_ON_NESTED_PORT_ACTION__ON_NESTED_PORT = eINSTANCE.getInvocationOnNestedPortAction_OnNestedPort();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.TriggerOnNestedPortImpl <em>Trigger On Nested Port</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.TriggerOnNestedPortImpl
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getTriggerOnNestedPort()
+ * @generated
+ */
+ EClass TRIGGER_ON_NESTED_PORT = eINSTANCE.getTriggerOnNestedPort();
+
+ /**
+ * The meta object literal for the '<em><b>Base Trigger</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TRIGGER_ON_NESTED_PORT__BASE_TRIGGER = eINSTANCE.getTriggerOnNestedPort_Base_Trigger();
+
+ /**
+ * The meta object literal for the '<em><b>On Nested Port</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TRIGGER_ON_NESTED_PORT__ON_NESTED_PORT = eINSTANCE.getTriggerOnNestedPort_OnNestedPort();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.portandflows.FlowDirection <em>Flow Direction</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.FlowDirection
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getFlowDirection()
+ * @generated
+ */
+ EEnum FLOW_DIRECTION = eINSTANCE.getFlowDirection();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.portandflows.FeatureDirection <em>Feature Direction</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.FeatureDirection
+ * @see org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl#getFeatureDirection()
+ * @generated
+ */
+ EEnum FEATURE_DIRECTION = eINSTANCE.getFeatureDirection();
+
+ }
+
+} //PortandflowsPackage
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/ProxyPort.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/ProxyPort.java
new file mode 100644
index 00000000000..efe26c264fc
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/ProxyPort.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Port;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Proxy Port</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.ProxyPort#getBase_Port <em>Base Port</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getProxyPort()
+ * @model
+ * @generated
+ */
+public interface ProxyPort extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Port</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Port</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Port</em>' reference.
+ * @see #setBase_Port(Port)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getProxyPort_Base_Port()
+ * @model ordered="false"
+ * @generated
+ */
+ Port getBase_Port();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.ProxyPort#getBase_Port <em>Base Port</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Port</em>' reference.
+ * @see #getBase_Port()
+ * @generated
+ */
+ void setBase_Port(Port value);
+
+} // ProxyPort
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/TriggerOnNestedPort.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/TriggerOnNestedPort.java
new file mode 100644
index 00000000000..0e42a62baab
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/TriggerOnNestedPort.java
@@ -0,0 +1,104 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath;
+
+import org.eclipse.uml2.uml.Port;
+import org.eclipse.uml2.uml.Trigger;
+import org.eclipse.uml2.uml.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Trigger On Nested Port</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort#getBase_Trigger <em>Base Trigger</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort#getOnNestedPort <em>On Nested Port</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getTriggerOnNestedPort()
+ * @model
+ * @generated
+ */
+public interface TriggerOnNestedPort extends ElementPropertyPath {
+ /**
+ * Returns the value of the '<em><b>Base Trigger</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Trigger</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Trigger</em>' reference.
+ * @see #setBase_Trigger(Trigger)
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getTriggerOnNestedPort_Base_Trigger()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ Trigger getBase_Trigger();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort#getBase_Trigger <em>Base Trigger</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Trigger</em>' reference.
+ * @see #getBase_Trigger()
+ * @generated
+ */
+ void setBase_Trigger(Trigger value);
+
+ /**
+ * Returns the value of the '<em><b>On Nested Port</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.Port}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>On Nested Port</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>On Nested Port</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#getTriggerOnNestedPort_OnNestedPort()
+ * @model required="true"
+ * @generated
+ */
+ EList<Port> getOnNestedPort();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Port} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>On Nested Port</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Port} to retrieve, or <code>null</code>.
+ * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.Port} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.Port} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
+ * @see #getOnNestedPort()
+ * @generated
+ */
+ Port getOnNestedPort(String name, Type type);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.Port} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>On Nested Port</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.Port} to retrieve, or <code>null</code>.
+ * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.Port} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @return The first {@link org.eclipse.uml2.uml.Port} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
+ * @see #getOnNestedPort()
+ * @generated
+ */
+ Port getOnNestedPort(String name, Type type, boolean ignoreCase);
+
+} // TriggerOnNestedPort
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/AcceptChangeStructuralFeatureEventActionImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/AcceptChangeStructuralFeatureEventActionImpl.java
new file mode 100644
index 00000000000..42983d44fab
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/AcceptChangeStructuralFeatureEventActionImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.AcceptChangeStructuralFeatureEventAction;
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.uml2.uml.AcceptEventAction;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Accept Change Structural Feature Event Action</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.AcceptChangeStructuralFeatureEventActionImpl#getBase_AcceptEventAction <em>Base Accept Event Action</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AcceptChangeStructuralFeatureEventActionImpl extends MinimalEObjectImpl.Container implements AcceptChangeStructuralFeatureEventAction {
+ /**
+ * The cached value of the '{@link #getBase_AcceptEventAction() <em>Base Accept Event Action</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_AcceptEventAction()
+ * @generated
+ * @ordered
+ */
+ protected AcceptEventAction base_AcceptEventAction;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AcceptChangeStructuralFeatureEventActionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PortandflowsPackage.Literals.ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AcceptEventAction getBase_AcceptEventAction() {
+ if (base_AcceptEventAction != null && base_AcceptEventAction.eIsProxy()) {
+ InternalEObject oldBase_AcceptEventAction = (InternalEObject)base_AcceptEventAction;
+ base_AcceptEventAction = (AcceptEventAction)eResolveProxy(oldBase_AcceptEventAction);
+ if (base_AcceptEventAction != oldBase_AcceptEventAction) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, PortandflowsPackage.ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION__BASE_ACCEPT_EVENT_ACTION, oldBase_AcceptEventAction, base_AcceptEventAction));
+ }
+ }
+ return base_AcceptEventAction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AcceptEventAction basicGetBase_AcceptEventAction() {
+ return base_AcceptEventAction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_AcceptEventAction(AcceptEventAction newBase_AcceptEventAction) {
+ AcceptEventAction oldBase_AcceptEventAction = base_AcceptEventAction;
+ base_AcceptEventAction = newBase_AcceptEventAction;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION__BASE_ACCEPT_EVENT_ACTION, oldBase_AcceptEventAction, base_AcceptEventAction));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PortandflowsPackage.ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION__BASE_ACCEPT_EVENT_ACTION:
+ if (resolve) return getBase_AcceptEventAction();
+ return basicGetBase_AcceptEventAction();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PortandflowsPackage.ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION__BASE_ACCEPT_EVENT_ACTION:
+ setBase_AcceptEventAction((AcceptEventAction)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION__BASE_ACCEPT_EVENT_ACTION:
+ setBase_AcceptEventAction((AcceptEventAction)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION__BASE_ACCEPT_EVENT_ACTION:
+ return base_AcceptEventAction != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //AcceptChangeStructuralFeatureEventActionImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/ChangeStructuralFeatureEventImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/ChangeStructuralFeatureEventImpl.java
new file mode 100644
index 00000000000..ccad932a197
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/ChangeStructuralFeatureEventImpl.java
@@ -0,0 +1,225 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent;
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.uml2.uml.ChangeEvent;
+import org.eclipse.uml2.uml.StructuralFeature;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Change Structural Feature Event</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.ChangeStructuralFeatureEventImpl#getBase_ChangeEvent <em>Base Change Event</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.ChangeStructuralFeatureEventImpl#getStructuralFeature <em>Structural Feature</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ChangeStructuralFeatureEventImpl extends MinimalEObjectImpl.Container implements ChangeStructuralFeatureEvent {
+ /**
+ * The cached value of the '{@link #getBase_ChangeEvent() <em>Base Change Event</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_ChangeEvent()
+ * @generated
+ * @ordered
+ */
+ protected ChangeEvent base_ChangeEvent;
+
+ /**
+ * The cached value of the '{@link #getStructuralFeature() <em>Structural Feature</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStructuralFeature()
+ * @generated
+ * @ordered
+ */
+ protected StructuralFeature structuralFeature;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ChangeStructuralFeatureEventImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PortandflowsPackage.Literals.CHANGE_STRUCTURAL_FEATURE_EVENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ChangeEvent getBase_ChangeEvent() {
+ if (base_ChangeEvent != null && base_ChangeEvent.eIsProxy()) {
+ InternalEObject oldBase_ChangeEvent = (InternalEObject)base_ChangeEvent;
+ base_ChangeEvent = (ChangeEvent)eResolveProxy(oldBase_ChangeEvent);
+ if (base_ChangeEvent != oldBase_ChangeEvent) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT__BASE_CHANGE_EVENT, oldBase_ChangeEvent, base_ChangeEvent));
+ }
+ }
+ return base_ChangeEvent;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ChangeEvent basicGetBase_ChangeEvent() {
+ return base_ChangeEvent;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_ChangeEvent(ChangeEvent newBase_ChangeEvent) {
+ ChangeEvent oldBase_ChangeEvent = base_ChangeEvent;
+ base_ChangeEvent = newBase_ChangeEvent;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT__BASE_CHANGE_EVENT, oldBase_ChangeEvent, base_ChangeEvent));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StructuralFeature getStructuralFeature() {
+ if (structuralFeature != null && structuralFeature.eIsProxy()) {
+ InternalEObject oldStructuralFeature = (InternalEObject)structuralFeature;
+ structuralFeature = (StructuralFeature)eResolveProxy(oldStructuralFeature);
+ if (structuralFeature != oldStructuralFeature) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT__STRUCTURAL_FEATURE, oldStructuralFeature, structuralFeature));
+ }
+ }
+ return structuralFeature;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StructuralFeature basicGetStructuralFeature() {
+ return structuralFeature;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStructuralFeature(StructuralFeature newStructuralFeature) {
+ StructuralFeature oldStructuralFeature = structuralFeature;
+ structuralFeature = newStructuralFeature;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT__STRUCTURAL_FEATURE, oldStructuralFeature, structuralFeature));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT__BASE_CHANGE_EVENT:
+ if (resolve) return getBase_ChangeEvent();
+ return basicGetBase_ChangeEvent();
+ case PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT__STRUCTURAL_FEATURE:
+ if (resolve) return getStructuralFeature();
+ return basicGetStructuralFeature();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT__BASE_CHANGE_EVENT:
+ setBase_ChangeEvent((ChangeEvent)newValue);
+ return;
+ case PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT__STRUCTURAL_FEATURE:
+ setStructuralFeature((StructuralFeature)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT__BASE_CHANGE_EVENT:
+ setBase_ChangeEvent((ChangeEvent)null);
+ return;
+ case PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT__STRUCTURAL_FEATURE:
+ setStructuralFeature((StructuralFeature)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT__BASE_CHANGE_EVENT:
+ return base_ChangeEvent != null;
+ case PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT__STRUCTURAL_FEATURE:
+ return structuralFeature != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ChangeStructuralFeatureEventImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/DirectedFeatureImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/DirectedFeatureImpl.java
new file mode 100644
index 00000000000..7b8fb998d83
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/DirectedFeatureImpl.java
@@ -0,0 +1,233 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.DirectedFeature;
+import org.eclipse.papyrus.sysml14.portandflows.FeatureDirection;
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.uml2.uml.Feature;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Directed Feature</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.DirectedFeatureImpl#getBase_Feature <em>Base Feature</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.DirectedFeatureImpl#getFeatureDirection <em>Feature Direction</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DirectedFeatureImpl extends MinimalEObjectImpl.Container implements DirectedFeature {
+ /**
+ * The cached value of the '{@link #getBase_Feature() <em>Base Feature</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Feature()
+ * @generated
+ * @ordered
+ */
+ protected Feature base_Feature;
+
+ /**
+ * The default value of the '{@link #getFeatureDirection() <em>Feature Direction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFeatureDirection()
+ * @generated
+ * @ordered
+ */
+ protected static final FeatureDirection FEATURE_DIRECTION_EDEFAULT = FeatureDirection.PROVIDED;
+
+ /**
+ * The cached value of the '{@link #getFeatureDirection() <em>Feature Direction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFeatureDirection()
+ * @generated
+ * @ordered
+ */
+ protected FeatureDirection featureDirection = FEATURE_DIRECTION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DirectedFeatureImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PortandflowsPackage.Literals.DIRECTED_FEATURE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Feature getBase_Feature() {
+ if (base_Feature != null && base_Feature.eIsProxy()) {
+ InternalEObject oldBase_Feature = (InternalEObject)base_Feature;
+ base_Feature = (Feature)eResolveProxy(oldBase_Feature);
+ if (base_Feature != oldBase_Feature) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, PortandflowsPackage.DIRECTED_FEATURE__BASE_FEATURE, oldBase_Feature, base_Feature));
+ }
+ }
+ return base_Feature;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Feature basicGetBase_Feature() {
+ return base_Feature;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Feature(Feature newBase_Feature) {
+ Feature oldBase_Feature = base_Feature;
+ base_Feature = newBase_Feature;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.DIRECTED_FEATURE__BASE_FEATURE, oldBase_Feature, base_Feature));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FeatureDirection getFeatureDirection() {
+ return featureDirection;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setFeatureDirection(FeatureDirection newFeatureDirection) {
+ FeatureDirection oldFeatureDirection = featureDirection;
+ featureDirection = newFeatureDirection == null ? FEATURE_DIRECTION_EDEFAULT : newFeatureDirection;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.DIRECTED_FEATURE__FEATURE_DIRECTION, oldFeatureDirection, featureDirection));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PortandflowsPackage.DIRECTED_FEATURE__BASE_FEATURE:
+ if (resolve) return getBase_Feature();
+ return basicGetBase_Feature();
+ case PortandflowsPackage.DIRECTED_FEATURE__FEATURE_DIRECTION:
+ return getFeatureDirection();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PortandflowsPackage.DIRECTED_FEATURE__BASE_FEATURE:
+ setBase_Feature((Feature)newValue);
+ return;
+ case PortandflowsPackage.DIRECTED_FEATURE__FEATURE_DIRECTION:
+ setFeatureDirection((FeatureDirection)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.DIRECTED_FEATURE__BASE_FEATURE:
+ setBase_Feature((Feature)null);
+ return;
+ case PortandflowsPackage.DIRECTED_FEATURE__FEATURE_DIRECTION:
+ setFeatureDirection(FEATURE_DIRECTION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.DIRECTED_FEATURE__BASE_FEATURE:
+ return base_Feature != null;
+ case PortandflowsPackage.DIRECTED_FEATURE__FEATURE_DIRECTION:
+ return featureDirection != FEATURE_DIRECTION_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (featureDirection: "); //$NON-NLS-1$
+ result.append(featureDirection);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DirectedFeatureImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/FlowPropertyImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/FlowPropertyImpl.java
new file mode 100644
index 00000000000..b3640edd60c
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/FlowPropertyImpl.java
@@ -0,0 +1,233 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.FlowDirection;
+import org.eclipse.papyrus.sysml14.portandflows.FlowProperty;
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Flow Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.FlowPropertyImpl#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.FlowPropertyImpl#getDirection <em>Direction</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FlowPropertyImpl extends MinimalEObjectImpl.Container implements FlowProperty {
+ /**
+ * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Property()
+ * @generated
+ * @ordered
+ */
+ protected Property base_Property;
+
+ /**
+ * The default value of the '{@link #getDirection() <em>Direction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDirection()
+ * @generated
+ * @ordered
+ */
+ protected static final FlowDirection DIRECTION_EDEFAULT = FlowDirection.INOUT;
+
+ /**
+ * The cached value of the '{@link #getDirection() <em>Direction</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDirection()
+ * @generated
+ * @ordered
+ */
+ protected FlowDirection direction = DIRECTION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FlowPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PortandflowsPackage.Literals.FLOW_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBase_Property() {
+ if (base_Property != null && base_Property.eIsProxy()) {
+ InternalEObject oldBase_Property = (InternalEObject)base_Property;
+ base_Property = (Property)eResolveProxy(oldBase_Property);
+ if (base_Property != oldBase_Property) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, PortandflowsPackage.FLOW_PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+ }
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetBase_Property() {
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Property(Property newBase_Property) {
+ Property oldBase_Property = base_Property;
+ base_Property = newBase_Property;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.FLOW_PROPERTY__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FlowDirection getDirection() {
+ return direction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDirection(FlowDirection newDirection) {
+ FlowDirection oldDirection = direction;
+ direction = newDirection == null ? DIRECTION_EDEFAULT : newDirection;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.FLOW_PROPERTY__DIRECTION, oldDirection, direction));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PortandflowsPackage.FLOW_PROPERTY__BASE_PROPERTY:
+ if (resolve) return getBase_Property();
+ return basicGetBase_Property();
+ case PortandflowsPackage.FLOW_PROPERTY__DIRECTION:
+ return getDirection();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PortandflowsPackage.FLOW_PROPERTY__BASE_PROPERTY:
+ setBase_Property((Property)newValue);
+ return;
+ case PortandflowsPackage.FLOW_PROPERTY__DIRECTION:
+ setDirection((FlowDirection)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.FLOW_PROPERTY__BASE_PROPERTY:
+ setBase_Property((Property)null);
+ return;
+ case PortandflowsPackage.FLOW_PROPERTY__DIRECTION:
+ setDirection(DIRECTION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.FLOW_PROPERTY__BASE_PROPERTY:
+ return base_Property != null;
+ case PortandflowsPackage.FLOW_PROPERTY__DIRECTION:
+ return direction != DIRECTION_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (direction: "); //$NON-NLS-1$
+ result.append(direction);
+ result.append(')');
+ return result.toString();
+ }
+
+} //FlowPropertyImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/FullPortImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/FullPortImpl.java
new file mode 100644
index 00000000000..a163606ca1b
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/FullPortImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.FullPort;
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.uml2.uml.Port;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Full Port</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.FullPortImpl#getBase_Port <em>Base Port</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FullPortImpl extends MinimalEObjectImpl.Container implements FullPort {
+ /**
+ * The cached value of the '{@link #getBase_Port() <em>Base Port</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Port()
+ * @generated
+ * @ordered
+ */
+ protected Port base_Port;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FullPortImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PortandflowsPackage.Literals.FULL_PORT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Port getBase_Port() {
+ if (base_Port != null && base_Port.eIsProxy()) {
+ InternalEObject oldBase_Port = (InternalEObject)base_Port;
+ base_Port = (Port)eResolveProxy(oldBase_Port);
+ if (base_Port != oldBase_Port) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, PortandflowsPackage.FULL_PORT__BASE_PORT, oldBase_Port, base_Port));
+ }
+ }
+ return base_Port;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Port basicGetBase_Port() {
+ return base_Port;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Port(Port newBase_Port) {
+ Port oldBase_Port = base_Port;
+ base_Port = newBase_Port;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.FULL_PORT__BASE_PORT, oldBase_Port, base_Port));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PortandflowsPackage.FULL_PORT__BASE_PORT:
+ if (resolve) return getBase_Port();
+ return basicGetBase_Port();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PortandflowsPackage.FULL_PORT__BASE_PORT:
+ setBase_Port((Port)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.FULL_PORT__BASE_PORT:
+ setBase_Port((Port)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.FULL_PORT__BASE_PORT:
+ return base_Port != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //FullPortImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/InterfaceBlockImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/InterfaceBlockImpl.java
new file mode 100644
index 00000000000..0de4830bbdb
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/InterfaceBlockImpl.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.BlockImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.InterfaceBlock;
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Interface Block</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class InterfaceBlockImpl extends BlockImpl implements InterfaceBlock {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected InterfaceBlockImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PortandflowsPackage.Literals.INTERFACE_BLOCK;
+ }
+
+} //InterfaceBlockImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/InvocationOnNestedPortActionImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/InvocationOnNestedPortActionImpl.java
new file mode 100644
index 00000000000..82475b27122
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/InvocationOnNestedPortActionImpl.java
@@ -0,0 +1,233 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.internal.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.ElementPropertyPathImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction;
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.uml2.uml.InvocationAction;
+import org.eclipse.uml2.uml.Port;
+import org.eclipse.uml2.uml.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Invocation On Nested Port Action</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.InvocationOnNestedPortActionImpl#getBase_InvocationAction <em>Base Invocation Action</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.InvocationOnNestedPortActionImpl#getOnNestedPort <em>On Nested Port</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class InvocationOnNestedPortActionImpl extends ElementPropertyPathImpl implements InvocationOnNestedPortAction {
+ /**
+ * The cached value of the '{@link #getBase_InvocationAction() <em>Base Invocation Action</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_InvocationAction()
+ * @generated
+ * @ordered
+ */
+ protected InvocationAction base_InvocationAction;
+
+ /**
+ * The cached value of the '{@link #getOnNestedPort() <em>On Nested Port</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOnNestedPort()
+ * @generated
+ * @ordered
+ */
+ protected EList<Port> onNestedPort;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected InvocationOnNestedPortActionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PortandflowsPackage.Literals.INVOCATION_ON_NESTED_PORT_ACTION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InvocationAction getBase_InvocationAction() {
+ if (base_InvocationAction != null && base_InvocationAction.eIsProxy()) {
+ InternalEObject oldBase_InvocationAction = (InternalEObject)base_InvocationAction;
+ base_InvocationAction = (InvocationAction)eResolveProxy(oldBase_InvocationAction);
+ if (base_InvocationAction != oldBase_InvocationAction) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION__BASE_INVOCATION_ACTION, oldBase_InvocationAction, base_InvocationAction));
+ }
+ }
+ return base_InvocationAction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InvocationAction basicGetBase_InvocationAction() {
+ return base_InvocationAction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_InvocationAction(InvocationAction newBase_InvocationAction) {
+ InvocationAction oldBase_InvocationAction = base_InvocationAction;
+ base_InvocationAction = newBase_InvocationAction;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION__BASE_INVOCATION_ACTION, oldBase_InvocationAction, base_InvocationAction));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Port> getOnNestedPort() {
+ if (onNestedPort == null) {
+ onNestedPort = new EObjectResolvingEList<Port>(Port.class, this, PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION__ON_NESTED_PORT);
+ }
+ return onNestedPort;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Port getOnNestedPort(String name, Type type) {
+ return getOnNestedPort(name, type, false);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Port getOnNestedPort(String name, Type type, boolean ignoreCase) {
+ onNestedPortLoop: for (Port onNestedPort : getOnNestedPort()) {
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(onNestedPort.getName()) : name.equals(onNestedPort.getName())))
+ continue onNestedPortLoop;
+ if (type != null && !type.equals(onNestedPort.getType()))
+ continue onNestedPortLoop;
+ return onNestedPort;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION__BASE_INVOCATION_ACTION:
+ if (resolve) return getBase_InvocationAction();
+ return basicGetBase_InvocationAction();
+ case PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION__ON_NESTED_PORT:
+ return getOnNestedPort();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION__BASE_INVOCATION_ACTION:
+ setBase_InvocationAction((InvocationAction)newValue);
+ return;
+ case PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION__ON_NESTED_PORT:
+ getOnNestedPort().clear();
+ getOnNestedPort().addAll((Collection<? extends Port>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION__BASE_INVOCATION_ACTION:
+ setBase_InvocationAction((InvocationAction)null);
+ return;
+ case PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION__ON_NESTED_PORT:
+ getOnNestedPort().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION__BASE_INVOCATION_ACTION:
+ return base_InvocationAction != null;
+ case PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION__ON_NESTED_PORT:
+ return onNestedPort != null && !onNestedPort.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //InvocationOnNestedPortActionImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/ItemFlowImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/ItemFlowImpl.java
new file mode 100644
index 00000000000..8fc8492e15a
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/ItemFlowImpl.java
@@ -0,0 +1,225 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.ItemFlow;
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.uml2.uml.InformationFlow;
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Item Flow</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.ItemFlowImpl#getBase_InformationFlow <em>Base Information Flow</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.ItemFlowImpl#getItemProperty <em>Item Property</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ItemFlowImpl extends MinimalEObjectImpl.Container implements ItemFlow {
+ /**
+ * The cached value of the '{@link #getBase_InformationFlow() <em>Base Information Flow</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_InformationFlow()
+ * @generated
+ * @ordered
+ */
+ protected InformationFlow base_InformationFlow;
+
+ /**
+ * The cached value of the '{@link #getItemProperty() <em>Item Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getItemProperty()
+ * @generated
+ * @ordered
+ */
+ protected Property itemProperty;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ItemFlowImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PortandflowsPackage.Literals.ITEM_FLOW;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InformationFlow getBase_InformationFlow() {
+ if (base_InformationFlow != null && base_InformationFlow.eIsProxy()) {
+ InternalEObject oldBase_InformationFlow = (InternalEObject)base_InformationFlow;
+ base_InformationFlow = (InformationFlow)eResolveProxy(oldBase_InformationFlow);
+ if (base_InformationFlow != oldBase_InformationFlow) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, PortandflowsPackage.ITEM_FLOW__BASE_INFORMATION_FLOW, oldBase_InformationFlow, base_InformationFlow));
+ }
+ }
+ return base_InformationFlow;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InformationFlow basicGetBase_InformationFlow() {
+ return base_InformationFlow;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_InformationFlow(InformationFlow newBase_InformationFlow) {
+ InformationFlow oldBase_InformationFlow = base_InformationFlow;
+ base_InformationFlow = newBase_InformationFlow;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.ITEM_FLOW__BASE_INFORMATION_FLOW, oldBase_InformationFlow, base_InformationFlow));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getItemProperty() {
+ if (itemProperty != null && itemProperty.eIsProxy()) {
+ InternalEObject oldItemProperty = (InternalEObject)itemProperty;
+ itemProperty = (Property)eResolveProxy(oldItemProperty);
+ if (itemProperty != oldItemProperty) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, PortandflowsPackage.ITEM_FLOW__ITEM_PROPERTY, oldItemProperty, itemProperty));
+ }
+ }
+ return itemProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetItemProperty() {
+ return itemProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setItemProperty(Property newItemProperty) {
+ Property oldItemProperty = itemProperty;
+ itemProperty = newItemProperty;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.ITEM_FLOW__ITEM_PROPERTY, oldItemProperty, itemProperty));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PortandflowsPackage.ITEM_FLOW__BASE_INFORMATION_FLOW:
+ if (resolve) return getBase_InformationFlow();
+ return basicGetBase_InformationFlow();
+ case PortandflowsPackage.ITEM_FLOW__ITEM_PROPERTY:
+ if (resolve) return getItemProperty();
+ return basicGetItemProperty();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PortandflowsPackage.ITEM_FLOW__BASE_INFORMATION_FLOW:
+ setBase_InformationFlow((InformationFlow)newValue);
+ return;
+ case PortandflowsPackage.ITEM_FLOW__ITEM_PROPERTY:
+ setItemProperty((Property)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.ITEM_FLOW__BASE_INFORMATION_FLOW:
+ setBase_InformationFlow((InformationFlow)null);
+ return;
+ case PortandflowsPackage.ITEM_FLOW__ITEM_PROPERTY:
+ setItemProperty((Property)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.ITEM_FLOW__BASE_INFORMATION_FLOW:
+ return base_InformationFlow != null;
+ case PortandflowsPackage.ITEM_FLOW__ITEM_PROPERTY:
+ return itemProperty != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ItemFlowImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/PortandflowsFactoryImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/PortandflowsFactoryImpl.java
new file mode 100644
index 00000000000..9e0a8857ad1
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/PortandflowsFactoryImpl.java
@@ -0,0 +1,275 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.sysml14.portandflows.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class PortandflowsFactoryImpl extends EFactoryImpl implements PortandflowsFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static PortandflowsFactory init() {
+ try {
+ PortandflowsFactory thePortandflowsFactory = (PortandflowsFactory)EPackage.Registry.INSTANCE.getEFactory(PortandflowsPackage.eNS_URI);
+ if (thePortandflowsFactory != null) {
+ return thePortandflowsFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new PortandflowsFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PortandflowsFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case PortandflowsPackage.ITEM_FLOW: return createItemFlow();
+ case PortandflowsPackage.FLOW_PROPERTY: return createFlowProperty();
+ case PortandflowsPackage.FULL_PORT: return createFullPort();
+ case PortandflowsPackage.INTERFACE_BLOCK: return createInterfaceBlock();
+ case PortandflowsPackage.PROXY_PORT: return createProxyPort();
+ case PortandflowsPackage.ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION: return createAcceptChangeStructuralFeatureEventAction();
+ case PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT: return createChangeStructuralFeatureEvent();
+ case PortandflowsPackage.DIRECTED_FEATURE: return createDirectedFeature();
+ case PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION: return createInvocationOnNestedPortAction();
+ case PortandflowsPackage.TRIGGER_ON_NESTED_PORT: return createTriggerOnNestedPort();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case PortandflowsPackage.FLOW_DIRECTION:
+ return createFlowDirectionFromString(eDataType, initialValue);
+ case PortandflowsPackage.FEATURE_DIRECTION:
+ return createFeatureDirectionFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case PortandflowsPackage.FLOW_DIRECTION:
+ return convertFlowDirectionToString(eDataType, instanceValue);
+ case PortandflowsPackage.FEATURE_DIRECTION:
+ return convertFeatureDirectionToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ItemFlow createItemFlow() {
+ ItemFlowImpl itemFlow = new ItemFlowImpl();
+ return itemFlow;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FlowProperty createFlowProperty() {
+ FlowPropertyImpl flowProperty = new FlowPropertyImpl();
+ return flowProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FullPort createFullPort() {
+ FullPortImpl fullPort = new FullPortImpl();
+ return fullPort;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InterfaceBlock createInterfaceBlock() {
+ InterfaceBlockImpl interfaceBlock = new InterfaceBlockImpl();
+ return interfaceBlock;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ProxyPort createProxyPort() {
+ ProxyPortImpl proxyPort = new ProxyPortImpl();
+ return proxyPort;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AcceptChangeStructuralFeatureEventAction createAcceptChangeStructuralFeatureEventAction() {
+ AcceptChangeStructuralFeatureEventActionImpl acceptChangeStructuralFeatureEventAction = new AcceptChangeStructuralFeatureEventActionImpl();
+ return acceptChangeStructuralFeatureEventAction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ChangeStructuralFeatureEvent createChangeStructuralFeatureEvent() {
+ ChangeStructuralFeatureEventImpl changeStructuralFeatureEvent = new ChangeStructuralFeatureEventImpl();
+ return changeStructuralFeatureEvent;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DirectedFeature createDirectedFeature() {
+ DirectedFeatureImpl directedFeature = new DirectedFeatureImpl();
+ return directedFeature;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public InvocationOnNestedPortAction createInvocationOnNestedPortAction() {
+ InvocationOnNestedPortActionImpl invocationOnNestedPortAction = new InvocationOnNestedPortActionImpl();
+ return invocationOnNestedPortAction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TriggerOnNestedPort createTriggerOnNestedPort() {
+ TriggerOnNestedPortImpl triggerOnNestedPort = new TriggerOnNestedPortImpl();
+ return triggerOnNestedPort;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FlowDirection createFlowDirectionFromString(EDataType eDataType, String initialValue) {
+ FlowDirection result = FlowDirection.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertFlowDirectionToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FeatureDirection createFeatureDirectionFromString(EDataType eDataType, String initialValue) {
+ FeatureDirection result = FeatureDirection.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertFeatureDirectionToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PortandflowsPackage getPortandflowsPackage() {
+ return (PortandflowsPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static PortandflowsPackage getPackage() {
+ return PortandflowsPackage.eINSTANCE;
+ }
+
+} //PortandflowsFactoryImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/PortandflowsPackageImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/PortandflowsPackageImpl.java
new file mode 100644
index 00000000000..817670739a0
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/PortandflowsPackageImpl.java
@@ -0,0 +1,662 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.internal.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl;
+
+import org.eclipse.papyrus.sysml14.allocations.AllocationsPackage;
+
+import org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintblocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+
+import org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.AcceptChangeStructuralFeatureEventAction;
+import org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent;
+import org.eclipse.papyrus.sysml14.portandflows.DirectedFeature;
+import org.eclipse.papyrus.sysml14.portandflows.FeatureDirection;
+import org.eclipse.papyrus.sysml14.portandflows.FlowDirection;
+import org.eclipse.papyrus.sysml14.portandflows.FlowProperty;
+import org.eclipse.papyrus.sysml14.portandflows.FullPort;
+import org.eclipse.papyrus.sysml14.portandflows.InterfaceBlock;
+import org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction;
+import org.eclipse.papyrus.sysml14.portandflows.ItemFlow;
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsFactory;
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+import org.eclipse.papyrus.sysml14.portandflows.ProxyPort;
+import org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort;
+
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+
+import org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class PortandflowsPackageImpl extends EPackageImpl implements PortandflowsPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass itemFlowEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass flowPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass fullPortEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass interfaceBlockEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass proxyPortEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass acceptChangeStructuralFeatureEventActionEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass changeStructuralFeatureEventEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass directedFeatureEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass invocationOnNestedPortActionEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass triggerOnNestedPortEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum flowDirectionEEnum = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum featureDirectionEEnum = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private PortandflowsPackageImpl() {
+ super(eNS_URI, PortandflowsFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link PortandflowsPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static PortandflowsPackage init() {
+ if (isInited) return (PortandflowsPackage)EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI);
+
+ // Obtain or create and register package
+ PortandflowsPackageImpl thePortandflowsPackage = (PortandflowsPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof PortandflowsPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new PortandflowsPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ StandardPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ BlocksPackageImpl theBlocksPackage = (BlocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) instanceof BlocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) : BlocksPackage.eINSTANCE);
+ ActivitiesPackageImpl theActivitiesPackage = (ActivitiesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) instanceof ActivitiesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) : ActivitiesPackage.eINSTANCE);
+ ModelelementsPackageImpl theModelelementsPackage = (ModelelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) instanceof ModelelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) : ModelelementsPackage.eINSTANCE);
+ ConstraintblocksPackageImpl theConstraintblocksPackage = (ConstraintblocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) instanceof ConstraintblocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) : ConstraintblocksPackage.eINSTANCE);
+ AllocationsPackageImpl theAllocationsPackage = (AllocationsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) instanceof AllocationsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) : AllocationsPackage.eINSTANCE);
+ RequirementsPackageImpl theRequirementsPackage = (RequirementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) instanceof RequirementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI) : RequirementsPackage.eINSTANCE);
+ DeprecatedelementsPackageImpl theDeprecatedelementsPackage = (DeprecatedelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) instanceof DeprecatedelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) : DeprecatedelementsPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ thePortandflowsPackage.createPackageContents();
+ theBlocksPackage.createPackageContents();
+ theActivitiesPackage.createPackageContents();
+ theModelelementsPackage.createPackageContents();
+ theConstraintblocksPackage.createPackageContents();
+ theAllocationsPackage.createPackageContents();
+ theRequirementsPackage.createPackageContents();
+ theDeprecatedelementsPackage.createPackageContents();
+
+ // Initialize created meta-data
+ thePortandflowsPackage.initializePackageContents();
+ theBlocksPackage.initializePackageContents();
+ theActivitiesPackage.initializePackageContents();
+ theModelelementsPackage.initializePackageContents();
+ theConstraintblocksPackage.initializePackageContents();
+ theAllocationsPackage.initializePackageContents();
+ theRequirementsPackage.initializePackageContents();
+ theDeprecatedelementsPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ thePortandflowsPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(PortandflowsPackage.eNS_URI, thePortandflowsPackage);
+ return thePortandflowsPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getItemFlow() {
+ return itemFlowEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getItemFlow_Base_InformationFlow() {
+ return (EReference)itemFlowEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getItemFlow_ItemProperty() {
+ return (EReference)itemFlowEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFlowProperty() {
+ return flowPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFlowProperty_Base_Property() {
+ return (EReference)flowPropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getFlowProperty_Direction() {
+ return (EAttribute)flowPropertyEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFullPort() {
+ return fullPortEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFullPort_Base_Port() {
+ return (EReference)fullPortEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getInterfaceBlock() {
+ return interfaceBlockEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getProxyPort() {
+ return proxyPortEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getProxyPort_Base_Port() {
+ return (EReference)proxyPortEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAcceptChangeStructuralFeatureEventAction() {
+ return acceptChangeStructuralFeatureEventActionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAcceptChangeStructuralFeatureEventAction_Base_AcceptEventAction() {
+ return (EReference)acceptChangeStructuralFeatureEventActionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getChangeStructuralFeatureEvent() {
+ return changeStructuralFeatureEventEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getChangeStructuralFeatureEvent_Base_ChangeEvent() {
+ return (EReference)changeStructuralFeatureEventEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getChangeStructuralFeatureEvent_StructuralFeature() {
+ return (EReference)changeStructuralFeatureEventEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDirectedFeature() {
+ return directedFeatureEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDirectedFeature_Base_Feature() {
+ return (EReference)directedFeatureEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDirectedFeature_FeatureDirection() {
+ return (EAttribute)directedFeatureEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getInvocationOnNestedPortAction() {
+ return invocationOnNestedPortActionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getInvocationOnNestedPortAction_Base_InvocationAction() {
+ return (EReference)invocationOnNestedPortActionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getInvocationOnNestedPortAction_OnNestedPort() {
+ return (EReference)invocationOnNestedPortActionEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTriggerOnNestedPort() {
+ return triggerOnNestedPortEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTriggerOnNestedPort_Base_Trigger() {
+ return (EReference)triggerOnNestedPortEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTriggerOnNestedPort_OnNestedPort() {
+ return (EReference)triggerOnNestedPortEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getFlowDirection() {
+ return flowDirectionEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getFeatureDirection() {
+ return featureDirectionEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PortandflowsFactory getPortandflowsFactory() {
+ return (PortandflowsFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ itemFlowEClass = createEClass(ITEM_FLOW);
+ createEReference(itemFlowEClass, ITEM_FLOW__BASE_INFORMATION_FLOW);
+ createEReference(itemFlowEClass, ITEM_FLOW__ITEM_PROPERTY);
+
+ flowPropertyEClass = createEClass(FLOW_PROPERTY);
+ createEReference(flowPropertyEClass, FLOW_PROPERTY__BASE_PROPERTY);
+ createEAttribute(flowPropertyEClass, FLOW_PROPERTY__DIRECTION);
+
+ fullPortEClass = createEClass(FULL_PORT);
+ createEReference(fullPortEClass, FULL_PORT__BASE_PORT);
+
+ interfaceBlockEClass = createEClass(INTERFACE_BLOCK);
+
+ proxyPortEClass = createEClass(PROXY_PORT);
+ createEReference(proxyPortEClass, PROXY_PORT__BASE_PORT);
+
+ acceptChangeStructuralFeatureEventActionEClass = createEClass(ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION);
+ createEReference(acceptChangeStructuralFeatureEventActionEClass, ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION__BASE_ACCEPT_EVENT_ACTION);
+
+ changeStructuralFeatureEventEClass = createEClass(CHANGE_STRUCTURAL_FEATURE_EVENT);
+ createEReference(changeStructuralFeatureEventEClass, CHANGE_STRUCTURAL_FEATURE_EVENT__BASE_CHANGE_EVENT);
+ createEReference(changeStructuralFeatureEventEClass, CHANGE_STRUCTURAL_FEATURE_EVENT__STRUCTURAL_FEATURE);
+
+ directedFeatureEClass = createEClass(DIRECTED_FEATURE);
+ createEReference(directedFeatureEClass, DIRECTED_FEATURE__BASE_FEATURE);
+ createEAttribute(directedFeatureEClass, DIRECTED_FEATURE__FEATURE_DIRECTION);
+
+ invocationOnNestedPortActionEClass = createEClass(INVOCATION_ON_NESTED_PORT_ACTION);
+ createEReference(invocationOnNestedPortActionEClass, INVOCATION_ON_NESTED_PORT_ACTION__BASE_INVOCATION_ACTION);
+ createEReference(invocationOnNestedPortActionEClass, INVOCATION_ON_NESTED_PORT_ACTION__ON_NESTED_PORT);
+
+ triggerOnNestedPortEClass = createEClass(TRIGGER_ON_NESTED_PORT);
+ createEReference(triggerOnNestedPortEClass, TRIGGER_ON_NESTED_PORT__BASE_TRIGGER);
+ createEReference(triggerOnNestedPortEClass, TRIGGER_ON_NESTED_PORT__ON_NESTED_PORT);
+
+ // Create enums
+ flowDirectionEEnum = createEEnum(FLOW_DIRECTION);
+ featureDirectionEEnum = createEEnum(FEATURE_DIRECTION);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ UMLPackage theUMLPackage = (UMLPackage)EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
+ BlocksPackage theBlocksPackage = (BlocksPackage)EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ interfaceBlockEClass.getESuperTypes().add(theBlocksPackage.getBlock());
+ invocationOnNestedPortActionEClass.getESuperTypes().add(theBlocksPackage.getElementPropertyPath());
+ triggerOnNestedPortEClass.getESuperTypes().add(theBlocksPackage.getElementPropertyPath());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(itemFlowEClass, ItemFlow.class, "ItemFlow", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getItemFlow_Base_InformationFlow(), theUMLPackage.getInformationFlow(), null, "base_InformationFlow", null, 0, 1, ItemFlow.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getItemFlow_ItemProperty(), theUMLPackage.getProperty(), null, "itemProperty", null, 0, 1, ItemFlow.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(flowPropertyEClass, FlowProperty.class, "FlowProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getFlowProperty_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, FlowProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getFlowProperty_Direction(), this.getFlowDirection(), "direction", "inout", 1, 1, FlowProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$
+
+ initEClass(fullPortEClass, FullPort.class, "FullPort", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getFullPort_Base_Port(), theUMLPackage.getPort(), null, "base_Port", null, 0, 1, FullPort.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(interfaceBlockEClass, InterfaceBlock.class, "InterfaceBlock", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(proxyPortEClass, ProxyPort.class, "ProxyPort", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getProxyPort_Base_Port(), theUMLPackage.getPort(), null, "base_Port", null, 0, 1, ProxyPort.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(acceptChangeStructuralFeatureEventActionEClass, AcceptChangeStructuralFeatureEventAction.class, "AcceptChangeStructuralFeatureEventAction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getAcceptChangeStructuralFeatureEventAction_Base_AcceptEventAction(), theUMLPackage.getAcceptEventAction(), null, "base_AcceptEventAction", null, 0, 1, AcceptChangeStructuralFeatureEventAction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(changeStructuralFeatureEventEClass, ChangeStructuralFeatureEvent.class, "ChangeStructuralFeatureEvent", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getChangeStructuralFeatureEvent_Base_ChangeEvent(), theUMLPackage.getChangeEvent(), null, "base_ChangeEvent", null, 0, 1, ChangeStructuralFeatureEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getChangeStructuralFeatureEvent_StructuralFeature(), theUMLPackage.getStructuralFeature(), null, "structuralFeature", null, 1, 1, ChangeStructuralFeatureEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(directedFeatureEClass, DirectedFeature.class, "DirectedFeature", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getDirectedFeature_Base_Feature(), theUMLPackage.getFeature(), null, "base_Feature", null, 0, 1, DirectedFeature.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getDirectedFeature_FeatureDirection(), this.getFeatureDirection(), "featureDirection", null, 1, 1, DirectedFeature.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(invocationOnNestedPortActionEClass, InvocationOnNestedPortAction.class, "InvocationOnNestedPortAction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getInvocationOnNestedPortAction_Base_InvocationAction(), theUMLPackage.getInvocationAction(), null, "base_InvocationAction", null, 0, 1, InvocationOnNestedPortAction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getInvocationOnNestedPortAction_OnNestedPort(), theUMLPackage.getPort(), null, "onNestedPort", null, 1, -1, InvocationOnNestedPortAction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(triggerOnNestedPortEClass, TriggerOnNestedPort.class, "TriggerOnNestedPort", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getTriggerOnNestedPort_Base_Trigger(), theUMLPackage.getTrigger(), null, "base_Trigger", null, 1, 1, TriggerOnNestedPort.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getTriggerOnNestedPort_OnNestedPort(), theUMLPackage.getPort(), null, "onNestedPort", null, 1, -1, TriggerOnNestedPort.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ // Initialize enums and add enum literals
+ initEEnum(flowDirectionEEnum, FlowDirection.class, "FlowDirection"); //$NON-NLS-1$
+ addEEnumLiteral(flowDirectionEEnum, FlowDirection.IN);
+ addEEnumLiteral(flowDirectionEEnum, FlowDirection.OUT);
+ addEEnumLiteral(flowDirectionEEnum, FlowDirection.INOUT);
+
+ initEEnum(featureDirectionEEnum, FeatureDirection.class, "FeatureDirection"); //$NON-NLS-1$
+ addEEnumLiteral(featureDirectionEEnum, FeatureDirection.PROVIDED);
+ addEEnumLiteral(featureDirectionEEnum, FeatureDirection.REQUIRED);
+ addEEnumLiteral(featureDirectionEEnum, FeatureDirection.PROVIDED_REQUIRED);
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/uml2/2.0.0/UML
+ createUMLAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/uml2/2.0.0/UML</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createUMLAnnotations() {
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML"; //$NON-NLS-1$
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "originalName", "PortsandFlows" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+} //PortandflowsPackageImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/ProxyPortImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/ProxyPortImpl.java
new file mode 100644
index 00000000000..a78ccd564da
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/ProxyPortImpl.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+import org.eclipse.papyrus.sysml14.portandflows.ProxyPort;
+
+import org.eclipse.uml2.uml.Port;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Proxy Port</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.ProxyPortImpl#getBase_Port <em>Base Port</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ProxyPortImpl extends MinimalEObjectImpl.Container implements ProxyPort {
+ /**
+ * The cached value of the '{@link #getBase_Port() <em>Base Port</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Port()
+ * @generated
+ * @ordered
+ */
+ protected Port base_Port;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ProxyPortImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PortandflowsPackage.Literals.PROXY_PORT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Port getBase_Port() {
+ if (base_Port != null && base_Port.eIsProxy()) {
+ InternalEObject oldBase_Port = (InternalEObject)base_Port;
+ base_Port = (Port)eResolveProxy(oldBase_Port);
+ if (base_Port != oldBase_Port) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, PortandflowsPackage.PROXY_PORT__BASE_PORT, oldBase_Port, base_Port));
+ }
+ }
+ return base_Port;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Port basicGetBase_Port() {
+ return base_Port;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Port(Port newBase_Port) {
+ Port oldBase_Port = base_Port;
+ base_Port = newBase_Port;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.PROXY_PORT__BASE_PORT, oldBase_Port, base_Port));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PortandflowsPackage.PROXY_PORT__BASE_PORT:
+ if (resolve) return getBase_Port();
+ return basicGetBase_Port();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PortandflowsPackage.PROXY_PORT__BASE_PORT:
+ setBase_Port((Port)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.PROXY_PORT__BASE_PORT:
+ setBase_Port((Port)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.PROXY_PORT__BASE_PORT:
+ return base_Port != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ProxyPortImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/TriggerOnNestedPortImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/TriggerOnNestedPortImpl.java
new file mode 100644
index 00000000000..e1fbe4f36d6
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/internal/impl/TriggerOnNestedPortImpl.java
@@ -0,0 +1,233 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.internal.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.ElementPropertyPathImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+import org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort;
+
+import org.eclipse.uml2.uml.Port;
+import org.eclipse.uml2.uml.Trigger;
+import org.eclipse.uml2.uml.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Trigger On Nested Port</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.TriggerOnNestedPortImpl#getBase_Trigger <em>Base Trigger</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.portandflows.internal.impl.TriggerOnNestedPortImpl#getOnNestedPort <em>On Nested Port</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class TriggerOnNestedPortImpl extends ElementPropertyPathImpl implements TriggerOnNestedPort {
+ /**
+ * The cached value of the '{@link #getBase_Trigger() <em>Base Trigger</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Trigger()
+ * @generated
+ * @ordered
+ */
+ protected Trigger base_Trigger;
+
+ /**
+ * The cached value of the '{@link #getOnNestedPort() <em>On Nested Port</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOnNestedPort()
+ * @generated
+ * @ordered
+ */
+ protected EList<Port> onNestedPort;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TriggerOnNestedPortImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PortandflowsPackage.Literals.TRIGGER_ON_NESTED_PORT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Trigger getBase_Trigger() {
+ if (base_Trigger != null && base_Trigger.eIsProxy()) {
+ InternalEObject oldBase_Trigger = (InternalEObject)base_Trigger;
+ base_Trigger = (Trigger)eResolveProxy(oldBase_Trigger);
+ if (base_Trigger != oldBase_Trigger) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, PortandflowsPackage.TRIGGER_ON_NESTED_PORT__BASE_TRIGGER, oldBase_Trigger, base_Trigger));
+ }
+ }
+ return base_Trigger;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Trigger basicGetBase_Trigger() {
+ return base_Trigger;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Trigger(Trigger newBase_Trigger) {
+ Trigger oldBase_Trigger = base_Trigger;
+ base_Trigger = newBase_Trigger;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, PortandflowsPackage.TRIGGER_ON_NESTED_PORT__BASE_TRIGGER, oldBase_Trigger, base_Trigger));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Port> getOnNestedPort() {
+ if (onNestedPort == null) {
+ onNestedPort = new EObjectResolvingEList<Port>(Port.class, this, PortandflowsPackage.TRIGGER_ON_NESTED_PORT__ON_NESTED_PORT);
+ }
+ return onNestedPort;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Port getOnNestedPort(String name, Type type) {
+ return getOnNestedPort(name, type, false);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Port getOnNestedPort(String name, Type type, boolean ignoreCase) {
+ onNestedPortLoop: for (Port onNestedPort : getOnNestedPort()) {
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(onNestedPort.getName()) : name.equals(onNestedPort.getName())))
+ continue onNestedPortLoop;
+ if (type != null && !type.equals(onNestedPort.getType()))
+ continue onNestedPortLoop;
+ return onNestedPort;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PortandflowsPackage.TRIGGER_ON_NESTED_PORT__BASE_TRIGGER:
+ if (resolve) return getBase_Trigger();
+ return basicGetBase_Trigger();
+ case PortandflowsPackage.TRIGGER_ON_NESTED_PORT__ON_NESTED_PORT:
+ return getOnNestedPort();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PortandflowsPackage.TRIGGER_ON_NESTED_PORT__BASE_TRIGGER:
+ setBase_Trigger((Trigger)newValue);
+ return;
+ case PortandflowsPackage.TRIGGER_ON_NESTED_PORT__ON_NESTED_PORT:
+ getOnNestedPort().clear();
+ getOnNestedPort().addAll((Collection<? extends Port>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.TRIGGER_ON_NESTED_PORT__BASE_TRIGGER:
+ setBase_Trigger((Trigger)null);
+ return;
+ case PortandflowsPackage.TRIGGER_ON_NESTED_PORT__ON_NESTED_PORT:
+ getOnNestedPort().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PortandflowsPackage.TRIGGER_ON_NESTED_PORT__BASE_TRIGGER:
+ return base_Trigger != null;
+ case PortandflowsPackage.TRIGGER_ON_NESTED_PORT__ON_NESTED_PORT:
+ return onNestedPort != null && !onNestedPort.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //TriggerOnNestedPortImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/util/PortandflowsAdapterFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/util/PortandflowsAdapterFactory.java
new file mode 100644
index 00000000000..e886f0af49b
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/util/PortandflowsAdapterFactory.java
@@ -0,0 +1,327 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.sysml14.blocks.Block;
+import org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath;
+
+import org.eclipse.papyrus.sysml14.portandflows.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage
+ * @generated
+ */
+public class PortandflowsAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static PortandflowsPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PortandflowsAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = PortandflowsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected PortandflowsSwitch<Adapter> modelSwitch =
+ new PortandflowsSwitch<Adapter>() {
+ @Override
+ public Adapter caseItemFlow(ItemFlow object) {
+ return createItemFlowAdapter();
+ }
+ @Override
+ public Adapter caseFlowProperty(FlowProperty object) {
+ return createFlowPropertyAdapter();
+ }
+ @Override
+ public Adapter caseFullPort(FullPort object) {
+ return createFullPortAdapter();
+ }
+ @Override
+ public Adapter caseInterfaceBlock(InterfaceBlock object) {
+ return createInterfaceBlockAdapter();
+ }
+ @Override
+ public Adapter caseProxyPort(ProxyPort object) {
+ return createProxyPortAdapter();
+ }
+ @Override
+ public Adapter caseAcceptChangeStructuralFeatureEventAction(AcceptChangeStructuralFeatureEventAction object) {
+ return createAcceptChangeStructuralFeatureEventActionAdapter();
+ }
+ @Override
+ public Adapter caseChangeStructuralFeatureEvent(ChangeStructuralFeatureEvent object) {
+ return createChangeStructuralFeatureEventAdapter();
+ }
+ @Override
+ public Adapter caseDirectedFeature(DirectedFeature object) {
+ return createDirectedFeatureAdapter();
+ }
+ @Override
+ public Adapter caseInvocationOnNestedPortAction(InvocationOnNestedPortAction object) {
+ return createInvocationOnNestedPortActionAdapter();
+ }
+ @Override
+ public Adapter caseTriggerOnNestedPort(TriggerOnNestedPort object) {
+ return createTriggerOnNestedPortAdapter();
+ }
+ @Override
+ public Adapter caseBlock(Block object) {
+ return createBlockAdapter();
+ }
+ @Override
+ public Adapter caseElementPropertyPath(ElementPropertyPath object) {
+ return createElementPropertyPathAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.portandflows.ItemFlow <em>Item Flow</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.portandflows.ItemFlow
+ * @generated
+ */
+ public Adapter createItemFlowAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.portandflows.FlowProperty <em>Flow Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FlowProperty
+ * @generated
+ */
+ public Adapter createFlowPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.portandflows.FullPort <em>Full Port</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.portandflows.FullPort
+ * @generated
+ */
+ public Adapter createFullPortAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.portandflows.InterfaceBlock <em>Interface Block</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.portandflows.InterfaceBlock
+ * @generated
+ */
+ public Adapter createInterfaceBlockAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.portandflows.ProxyPort <em>Proxy Port</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.portandflows.ProxyPort
+ * @generated
+ */
+ public Adapter createProxyPortAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.portandflows.AcceptChangeStructuralFeatureEventAction <em>Accept Change Structural Feature Event Action</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.portandflows.AcceptChangeStructuralFeatureEventAction
+ * @generated
+ */
+ public Adapter createAcceptChangeStructuralFeatureEventActionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent <em>Change Structural Feature Event</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.portandflows.ChangeStructuralFeatureEvent
+ * @generated
+ */
+ public Adapter createChangeStructuralFeatureEventAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.portandflows.DirectedFeature <em>Directed Feature</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.portandflows.DirectedFeature
+ * @generated
+ */
+ public Adapter createDirectedFeatureAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction <em>Invocation On Nested Port Action</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.portandflows.InvocationOnNestedPortAction
+ * @generated
+ */
+ public Adapter createInvocationOnNestedPortActionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort <em>Trigger On Nested Port</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.portandflows.TriggerOnNestedPort
+ * @generated
+ */
+ public Adapter createTriggerOnNestedPortAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.Block <em>Block</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.Block
+ * @generated
+ */
+ public Adapter createBlockAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath <em>Element Property Path</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath
+ * @generated
+ */
+ public Adapter createElementPropertyPathAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //PortandflowsAdapterFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/util/PortandflowsSwitch.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/util/PortandflowsSwitch.java
new file mode 100644
index 00000000000..60bf6bc824a
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/portandflows/util/PortandflowsSwitch.java
@@ -0,0 +1,341 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.portandflows.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.sysml14.blocks.Block;
+import org.eclipse.papyrus.sysml14.blocks.ElementPropertyPath;
+
+import org.eclipse.papyrus.sysml14.portandflows.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage
+ * @generated
+ */
+public class PortandflowsSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static PortandflowsPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PortandflowsSwitch() {
+ if (modelPackage == null) {
+ modelPackage = PortandflowsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case PortandflowsPackage.ITEM_FLOW: {
+ ItemFlow itemFlow = (ItemFlow)theEObject;
+ T result = caseItemFlow(itemFlow);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case PortandflowsPackage.FLOW_PROPERTY: {
+ FlowProperty flowProperty = (FlowProperty)theEObject;
+ T result = caseFlowProperty(flowProperty);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case PortandflowsPackage.FULL_PORT: {
+ FullPort fullPort = (FullPort)theEObject;
+ T result = caseFullPort(fullPort);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case PortandflowsPackage.INTERFACE_BLOCK: {
+ InterfaceBlock interfaceBlock = (InterfaceBlock)theEObject;
+ T result = caseInterfaceBlock(interfaceBlock);
+ if (result == null) result = caseBlock(interfaceBlock);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case PortandflowsPackage.PROXY_PORT: {
+ ProxyPort proxyPort = (ProxyPort)theEObject;
+ T result = caseProxyPort(proxyPort);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case PortandflowsPackage.ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION: {
+ AcceptChangeStructuralFeatureEventAction acceptChangeStructuralFeatureEventAction = (AcceptChangeStructuralFeatureEventAction)theEObject;
+ T result = caseAcceptChangeStructuralFeatureEventAction(acceptChangeStructuralFeatureEventAction);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case PortandflowsPackage.CHANGE_STRUCTURAL_FEATURE_EVENT: {
+ ChangeStructuralFeatureEvent changeStructuralFeatureEvent = (ChangeStructuralFeatureEvent)theEObject;
+ T result = caseChangeStructuralFeatureEvent(changeStructuralFeatureEvent);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case PortandflowsPackage.DIRECTED_FEATURE: {
+ DirectedFeature directedFeature = (DirectedFeature)theEObject;
+ T result = caseDirectedFeature(directedFeature);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case PortandflowsPackage.INVOCATION_ON_NESTED_PORT_ACTION: {
+ InvocationOnNestedPortAction invocationOnNestedPortAction = (InvocationOnNestedPortAction)theEObject;
+ T result = caseInvocationOnNestedPortAction(invocationOnNestedPortAction);
+ if (result == null) result = caseElementPropertyPath(invocationOnNestedPortAction);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case PortandflowsPackage.TRIGGER_ON_NESTED_PORT: {
+ TriggerOnNestedPort triggerOnNestedPort = (TriggerOnNestedPort)theEObject;
+ T result = caseTriggerOnNestedPort(triggerOnNestedPort);
+ if (result == null) result = caseElementPropertyPath(triggerOnNestedPort);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Item Flow</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Item Flow</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseItemFlow(ItemFlow object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Flow Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Flow Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFlowProperty(FlowProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Full Port</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Full Port</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFullPort(FullPort object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Interface Block</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Interface Block</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseInterfaceBlock(InterfaceBlock object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Proxy Port</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Proxy Port</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseProxyPort(ProxyPort object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Accept Change Structural Feature Event Action</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Accept Change Structural Feature Event Action</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAcceptChangeStructuralFeatureEventAction(AcceptChangeStructuralFeatureEventAction object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Change Structural Feature Event</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Change Structural Feature Event</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseChangeStructuralFeatureEvent(ChangeStructuralFeatureEvent object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Directed Feature</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Directed Feature</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDirectedFeature(DirectedFeature object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Invocation On Nested Port Action</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Invocation On Nested Port Action</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseInvocationOnNestedPortAction(InvocationOnNestedPortAction object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Trigger On Nested Port</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Trigger On Nested Port</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTriggerOnNestedPort(TriggerOnNestedPort object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Block</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Block</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseBlock(Block object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Element Property Path</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Element Property Path</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseElementPropertyPath(ElementPropertyPath object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //PortandflowsSwitch
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Copy.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Copy.java
new file mode 100644
index 00000000000..b4d6d8290a4
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Copy.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Copy</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A Copy relationship is a dependency between a supplier requirement and a client requirement that specifies that the text of the client requirement is a read-only copy of the text of the supplier requirement.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getCopy()
+ * @model
+ * @generated
+ */
+public interface Copy extends Trace {
+} // Copy
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/DeriveReqt.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/DeriveReqt.java
new file mode 100644
index 00000000000..b8dc042c319
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/DeriveReqt.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Derive Reqt</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A DeriveReqt relationship is a dependency between two requirements in which a client requirement can be derived from the supplier requirement. As with other dependencies, the arrow direction points from the derived (client) requirement to the (supplier) requirement from which it is derived.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getDeriveReqt()
+ * @model
+ * @generated
+ */
+public interface DeriveReqt extends Trace {
+} // DeriveReqt
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Refine.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Refine.java
new file mode 100644
index 00000000000..fbbb35d0ad1
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Refine.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath;
+
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Refine</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getRefine()
+ * @model
+ * @generated
+ */
+public interface Refine extends DirectedRelationshipPropertyPath, org.eclipse.uml2.uml.profile.standard.Refine {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model required="true" ordered="false" refRequired="true" refOrdered="false"
+ * @generated
+ */
+ EList<Requirement> getRefines(NamedElement ref);
+
+} // Refine
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Requirement.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Requirement.java
new file mode 100644
index 00000000000..c6e4cbd8cc1
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Requirement.java
@@ -0,0 +1,337 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Requirement</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A requirement specifies a capability or condition that must (or should) be satisfied. A requirement may specify a function that a system must perform or a performance condition that a system must satisfy. Requirements are used to establish a contract between the customer (or other stakeholder) and those responsible for designing and implementing the system.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getBase_Class <em>Base Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getText <em>Text</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getId <em>Id</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getDerived <em>Derived</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getDerivedFrom <em>Derived From</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getSatisfiedBy <em>Satisfied By</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getRefinedBy <em>Refined By</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getTracedTo <em>Traced To</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getVerifiedBy <em>Verified By</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getMaster <em>Master</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getRequirement()
+ * @model
+ * @generated
+ */
+public interface Requirement extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Class</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Class</em>' reference.
+ * @see #setBase_Class(org.eclipse.uml2.uml.Class)
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getRequirement_Base_Class()
+ * @model ordered="false"
+ * @generated
+ */
+ org.eclipse.uml2.uml.Class getBase_Class();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getBase_Class <em>Base Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Class</em>' reference.
+ * @see #getBase_Class()
+ * @generated
+ */
+ void setBase_Class(org.eclipse.uml2.uml.Class value);
+
+ /**
+ * Returns the value of the '<em><b>Text</b></em>' attribute.
+ * The default value is <code>""</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The textual representation or a reference to the textual representation of the requirement.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Text</em>' attribute.
+ * @see #setText(String)
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getRequirement_Text()
+ * @model default="" dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getText();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getText <em>Text</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Text</em>' attribute.
+ * @see #getText()
+ * @generated
+ */
+ void setText(String value);
+
+ /**
+ * Returns the value of the '<em><b>Id</b></em>' attribute.
+ * The default value is <code>""</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The unique id of the requirement.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Id</em>' attribute.
+ * @see #setId(String)
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getRequirement_Id()
+ * @model default="" dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getId();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getId <em>Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Id</em>' attribute.
+ * @see #getId()
+ * @generated
+ */
+ void setId(String value);
+
+ /**
+ * Returns the value of the '<em><b>Derived</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.sysml14.requirements.Requirement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Derived from all requirements that are the client of a «deriveReqt» relationship for which this requirement is a supplier.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Derived</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getRequirement_Derived()
+ * @model transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<Requirement> getDerived();
+
+ /**
+ * Returns the value of the '<em><b>Derived From</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.sysml14.requirements.Requirement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Derived from all requirements that are the supplier of a «deriveReqt» relationship for which this requirement is a client.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Derived From</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getRequirement_DerivedFrom()
+ * @model transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<Requirement> getDerivedFrom();
+
+ /**
+ * Returns the value of the '<em><b>Satisfied By</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.NamedElement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Derived from all elements that are the client of a «satisfy» relationship for which this requirement is a supplier.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Satisfied By</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getRequirement_SatisfiedBy()
+ * @model transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<NamedElement> getSatisfiedBy();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Satisfied By</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getSatisfiedBy()
+ * @generated
+ */
+ NamedElement getSatisfiedBy(String name);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Satisfied By</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getSatisfiedBy()
+ * @generated
+ */
+ NamedElement getSatisfiedBy(String name, boolean ignoreCase, EClass eClass);
+
+ /**
+ * Returns the value of the '<em><b>Refined By</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.NamedElement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Derived from all elements that are the client of a «refine» relationship for which this requirement is a supplier.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Refined By</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getRequirement_RefinedBy()
+ * @model transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<NamedElement> getRefinedBy();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Refined By</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getRefinedBy()
+ * @generated
+ */
+ NamedElement getRefinedBy(String name);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Refined By</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getRefinedBy()
+ * @generated
+ */
+ NamedElement getRefinedBy(String name, boolean ignoreCase, EClass eClass);
+
+ /**
+ * Returns the value of the '<em><b>Traced To</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.NamedElement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Derived from all elements that are the client of a «trace» relationship for which this requirement is a supplier.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Traced To</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getRequirement_TracedTo()
+ * @model transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<NamedElement> getTracedTo();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Traced To</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getTracedTo()
+ * @generated
+ */
+ NamedElement getTracedTo(String name);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Traced To</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getTracedTo()
+ * @generated
+ */
+ NamedElement getTracedTo(String name, boolean ignoreCase, EClass eClass);
+
+ /**
+ * Returns the value of the '<em><b>Verified By</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.uml2.uml.NamedElement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * Derived from all elements that are the client of a «verify» relationship for which this requirement is a supplier.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Verified By</em>' reference list.
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getRequirement_VerifiedBy()
+ * @model transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ EList<NamedElement> getVerifiedBy();
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Verified By</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getVerifiedBy()
+ * @generated
+ */
+ NamedElement getVerifiedBy(String name);
+
+ /**
+ * Retrieves the first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>' from the '<em><b>Verified By</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
+ * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.NamedElement} to retrieve, or <code>null</code>.
+ * @return The first {@link org.eclipse.uml2.uml.NamedElement} with the specified '<em><b>Name</b></em>', or <code>null</code>.
+ * @see #getVerifiedBy()
+ * @generated
+ */
+ NamedElement getVerifiedBy(String name, boolean ignoreCase, EClass eClass);
+
+ /**
+ * Returns the value of the '<em><b>Master</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This is a derived property that lists the master requirement for this slave requirement. The master attribute is derived from the supplier of the Copy dependency that has this requirement as the slave.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Master</em>' reference.
+ * @see #setMaster(Requirement)
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getRequirement_Master()
+ * @model transient="true" volatile="true" derived="true" ordered="false"
+ * @generated
+ */
+ Requirement getMaster();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getMaster <em>Master</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Master</em>' reference.
+ * @see #getMaster()
+ * @generated
+ */
+ void setMaster(Requirement value);
+
+} // Requirement
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/RequirementsFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/RequirementsFactory.java
new file mode 100644
index 00000000000..62950ff109e
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/RequirementsFactory.java
@@ -0,0 +1,111 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage
+ * @generated
+ */
+public interface RequirementsFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ RequirementsFactory eINSTANCE = org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Derive Reqt</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Derive Reqt</em>'.
+ * @generated
+ */
+ DeriveReqt createDeriveReqt();
+
+ /**
+ * Returns a new object of class '<em>Trace</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Trace</em>'.
+ * @generated
+ */
+ Trace createTrace();
+
+ /**
+ * Returns a new object of class '<em>Requirement</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Requirement</em>'.
+ * @generated
+ */
+ Requirement createRequirement();
+
+ /**
+ * Returns a new object of class '<em>Copy</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Copy</em>'.
+ * @generated
+ */
+ Copy createCopy();
+
+ /**
+ * Returns a new object of class '<em>Satisfy</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Satisfy</em>'.
+ * @generated
+ */
+ Satisfy createSatisfy();
+
+ /**
+ * Returns a new object of class '<em>Test Case</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Test Case</em>'.
+ * @generated
+ */
+ TestCase createTestCase();
+
+ /**
+ * Returns a new object of class '<em>Verify</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Verify</em>'.
+ * @generated
+ */
+ Verify createVerify();
+
+ /**
+ * Returns a new object of class '<em>Refine</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Refine</em>'.
+ * @generated
+ */
+ Refine createRefine();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ RequirementsPackage getRequirementsPackage();
+
+} //RequirementsFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/RequirementsPackage.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/RequirementsPackage.java
new file mode 100644
index 00000000000..e8b399580e0
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/RequirementsPackage.java
@@ -0,0 +1,1283 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='Requirements'"
+ * @generated
+ */
+public interface RequirementsPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "requirements"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/1.4/SysML/Requirements"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "Requirements"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ RequirementsPackage eINSTANCE = org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.TraceImpl <em>Trace</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.TraceImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getTrace()
+ * @generated
+ */
+ int TRACE = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Directed Relationship</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRACE__BASE_DIRECTED_RELATIONSHIP = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP;
+
+ /**
+ * The feature id for the '<em><b>Source Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRACE__SOURCE_PROPERTY_PATH = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Target Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRACE__TARGET_PROPERTY_PATH = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Source Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRACE__SOURCE_CONTEXT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Target Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRACE__TARGET_CONTEXT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Base Abstraction</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRACE__BASE_ABSTRACTION = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Trace</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRACE_FEATURE_COUNT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Traced From</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRACE___GET_TRACED_FROM__NAMEDELEMENT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Trace</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRACE_OPERATION_COUNT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.DeriveReqtImpl <em>Derive Reqt</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.DeriveReqtImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getDeriveReqt()
+ * @generated
+ */
+ int DERIVE_REQT = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Directed Relationship</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVE_REQT__BASE_DIRECTED_RELATIONSHIP = TRACE__BASE_DIRECTED_RELATIONSHIP;
+
+ /**
+ * The feature id for the '<em><b>Source Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVE_REQT__SOURCE_PROPERTY_PATH = TRACE__SOURCE_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Target Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVE_REQT__TARGET_PROPERTY_PATH = TRACE__TARGET_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Source Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVE_REQT__SOURCE_CONTEXT = TRACE__SOURCE_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Target Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVE_REQT__TARGET_CONTEXT = TRACE__TARGET_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Base Abstraction</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVE_REQT__BASE_ABSTRACTION = TRACE__BASE_ABSTRACTION;
+
+ /**
+ * The number of structural features of the '<em>Derive Reqt</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVE_REQT_FEATURE_COUNT = TRACE_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Traced From</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVE_REQT___GET_TRACED_FROM__NAMEDELEMENT = TRACE___GET_TRACED_FROM__NAMEDELEMENT;
+
+ /**
+ * The number of operations of the '<em>Derive Reqt</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVE_REQT_OPERATION_COUNT = TRACE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl <em>Requirement</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getRequirement()
+ * @generated
+ */
+ int REQUIREMENT = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT__BASE_CLASS = 0;
+
+ /**
+ * The feature id for the '<em><b>Text</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT__TEXT = 1;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT__ID = 2;
+
+ /**
+ * The feature id for the '<em><b>Derived</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT__DERIVED = 3;
+
+ /**
+ * The feature id for the '<em><b>Derived From</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT__DERIVED_FROM = 4;
+
+ /**
+ * The feature id for the '<em><b>Satisfied By</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT__SATISFIED_BY = 5;
+
+ /**
+ * The feature id for the '<em><b>Refined By</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT__REFINED_BY = 6;
+
+ /**
+ * The feature id for the '<em><b>Traced To</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT__TRACED_TO = 7;
+
+ /**
+ * The feature id for the '<em><b>Verified By</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT__VERIFIED_BY = 8;
+
+ /**
+ * The feature id for the '<em><b>Master</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT__MASTER = 9;
+
+ /**
+ * The number of structural features of the '<em>Requirement</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT_FEATURE_COUNT = 10;
+
+ /**
+ * The number of operations of the '<em>Requirement</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REQUIREMENT_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.CopyImpl <em>Copy</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.CopyImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getCopy()
+ * @generated
+ */
+ int COPY = 3;
+
+ /**
+ * The feature id for the '<em><b>Base Directed Relationship</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COPY__BASE_DIRECTED_RELATIONSHIP = TRACE__BASE_DIRECTED_RELATIONSHIP;
+
+ /**
+ * The feature id for the '<em><b>Source Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COPY__SOURCE_PROPERTY_PATH = TRACE__SOURCE_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Target Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COPY__TARGET_PROPERTY_PATH = TRACE__TARGET_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Source Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COPY__SOURCE_CONTEXT = TRACE__SOURCE_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Target Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COPY__TARGET_CONTEXT = TRACE__TARGET_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Base Abstraction</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COPY__BASE_ABSTRACTION = TRACE__BASE_ABSTRACTION;
+
+ /**
+ * The number of structural features of the '<em>Copy</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COPY_FEATURE_COUNT = TRACE_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Traced From</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COPY___GET_TRACED_FROM__NAMEDELEMENT = TRACE___GET_TRACED_FROM__NAMEDELEMENT;
+
+ /**
+ * The number of operations of the '<em>Copy</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COPY_OPERATION_COUNT = TRACE_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.SatisfyImpl <em>Satisfy</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.SatisfyImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getSatisfy()
+ * @generated
+ */
+ int SATISFY = 4;
+
+ /**
+ * The feature id for the '<em><b>Base Directed Relationship</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SATISFY__BASE_DIRECTED_RELATIONSHIP = TRACE__BASE_DIRECTED_RELATIONSHIP;
+
+ /**
+ * The feature id for the '<em><b>Source Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SATISFY__SOURCE_PROPERTY_PATH = TRACE__SOURCE_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Target Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SATISFY__TARGET_PROPERTY_PATH = TRACE__TARGET_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Source Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SATISFY__SOURCE_CONTEXT = TRACE__SOURCE_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Target Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SATISFY__TARGET_CONTEXT = TRACE__TARGET_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Base Abstraction</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SATISFY__BASE_ABSTRACTION = TRACE__BASE_ABSTRACTION;
+
+ /**
+ * The number of structural features of the '<em>Satisfy</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SATISFY_FEATURE_COUNT = TRACE_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Traced From</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SATISFY___GET_TRACED_FROM__NAMEDELEMENT = TRACE___GET_TRACED_FROM__NAMEDELEMENT;
+
+ /**
+ * The operation id for the '<em>Get Satisfies</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SATISFY___GET_SATISFIES__NAMEDELEMENT = TRACE_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Satisfy</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SATISFY_OPERATION_COUNT = TRACE_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.TestCaseImpl <em>Test Case</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.TestCaseImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getTestCase()
+ * @generated
+ */
+ int TEST_CASE = 5;
+
+ /**
+ * The feature id for the '<em><b>Base Operation</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEST_CASE__BASE_OPERATION = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Behavior</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEST_CASE__BASE_BEHAVIOR = 1;
+
+ /**
+ * The number of structural features of the '<em>Test Case</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEST_CASE_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Test Case</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TEST_CASE_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.VerifyImpl <em>Verify</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.VerifyImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getVerify()
+ * @generated
+ */
+ int VERIFY = 6;
+
+ /**
+ * The feature id for the '<em><b>Base Directed Relationship</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VERIFY__BASE_DIRECTED_RELATIONSHIP = TRACE__BASE_DIRECTED_RELATIONSHIP;
+
+ /**
+ * The feature id for the '<em><b>Source Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VERIFY__SOURCE_PROPERTY_PATH = TRACE__SOURCE_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Target Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VERIFY__TARGET_PROPERTY_PATH = TRACE__TARGET_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Source Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VERIFY__SOURCE_CONTEXT = TRACE__SOURCE_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Target Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VERIFY__TARGET_CONTEXT = TRACE__TARGET_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Base Abstraction</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VERIFY__BASE_ABSTRACTION = TRACE__BASE_ABSTRACTION;
+
+ /**
+ * The number of structural features of the '<em>Verify</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VERIFY_FEATURE_COUNT = TRACE_FEATURE_COUNT + 0;
+
+ /**
+ * The operation id for the '<em>Get Traced From</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VERIFY___GET_TRACED_FROM__NAMEDELEMENT = TRACE___GET_TRACED_FROM__NAMEDELEMENT;
+
+ /**
+ * The operation id for the '<em>Get Verifies</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VERIFY___GET_VERIFIES__NAMEDELEMENT = TRACE_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Verify</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VERIFY_OPERATION_COUNT = TRACE_OPERATION_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RefineImpl <em>Refine</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RefineImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getRefine()
+ * @generated
+ */
+ int REFINE = 7;
+
+ /**
+ * The feature id for the '<em><b>Base Directed Relationship</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REFINE__BASE_DIRECTED_RELATIONSHIP = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP;
+
+ /**
+ * The feature id for the '<em><b>Source Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REFINE__SOURCE_PROPERTY_PATH = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Target Property Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REFINE__TARGET_PROPERTY_PATH = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_PROPERTY_PATH;
+
+ /**
+ * The feature id for the '<em><b>Source Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REFINE__SOURCE_CONTEXT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Target Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REFINE__TARGET_CONTEXT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT;
+
+ /**
+ * The feature id for the '<em><b>Base Abstraction</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REFINE__BASE_ABSTRACTION = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Refine</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REFINE_FEATURE_COUNT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get Refines</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REFINE___GET_REFINES__NAMEDELEMENT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_OPERATION_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Refine</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REFINE_OPERATION_COUNT = BlocksPackage.DIRECTED_RELATIONSHIP_PROPERTY_PATH_OPERATION_COUNT + 1;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.requirements.DeriveReqt <em>Derive Reqt</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Derive Reqt</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.DeriveReqt
+ * @generated
+ */
+ EClass getDeriveReqt();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.requirements.Trace <em>Trace</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Trace</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Trace
+ * @generated
+ */
+ EClass getTrace();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.sysml14.requirements.Trace#getTracedFrom(org.eclipse.uml2.uml.NamedElement) <em>Get Traced From</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Traced From</em>' operation.
+ * @see org.eclipse.papyrus.sysml14.requirements.Trace#getTracedFrom(org.eclipse.uml2.uml.NamedElement)
+ * @generated
+ */
+ EOperation getTrace__GetTracedFrom__NamedElement();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.requirements.Requirement <em>Requirement</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Requirement</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Requirement
+ * @generated
+ */
+ EClass getRequirement();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getBase_Class <em>Base Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Class</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Requirement#getBase_Class()
+ * @see #getRequirement()
+ * @generated
+ */
+ EReference getRequirement_Base_Class();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getText <em>Text</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Text</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Requirement#getText()
+ * @see #getRequirement()
+ * @generated
+ */
+ EAttribute getRequirement_Text();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getId <em>Id</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Id</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Requirement#getId()
+ * @see #getRequirement()
+ * @generated
+ */
+ EAttribute getRequirement_Id();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getDerived <em>Derived</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Derived</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Requirement#getDerived()
+ * @see #getRequirement()
+ * @generated
+ */
+ EReference getRequirement_Derived();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getDerivedFrom <em>Derived From</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Derived From</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Requirement#getDerivedFrom()
+ * @see #getRequirement()
+ * @generated
+ */
+ EReference getRequirement_DerivedFrom();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getSatisfiedBy <em>Satisfied By</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Satisfied By</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Requirement#getSatisfiedBy()
+ * @see #getRequirement()
+ * @generated
+ */
+ EReference getRequirement_SatisfiedBy();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getRefinedBy <em>Refined By</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Refined By</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Requirement#getRefinedBy()
+ * @see #getRequirement()
+ * @generated
+ */
+ EReference getRequirement_RefinedBy();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getTracedTo <em>Traced To</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Traced To</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Requirement#getTracedTo()
+ * @see #getRequirement()
+ * @generated
+ */
+ EReference getRequirement_TracedTo();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getVerifiedBy <em>Verified By</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Verified By</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Requirement#getVerifiedBy()
+ * @see #getRequirement()
+ * @generated
+ */
+ EReference getRequirement_VerifiedBy();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.requirements.Requirement#getMaster <em>Master</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Master</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Requirement#getMaster()
+ * @see #getRequirement()
+ * @generated
+ */
+ EReference getRequirement_Master();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.requirements.Copy <em>Copy</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Copy</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Copy
+ * @generated
+ */
+ EClass getCopy();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.requirements.Satisfy <em>Satisfy</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Satisfy</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Satisfy
+ * @generated
+ */
+ EClass getSatisfy();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.sysml14.requirements.Satisfy#getSatisfies(org.eclipse.uml2.uml.NamedElement) <em>Get Satisfies</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Satisfies</em>' operation.
+ * @see org.eclipse.papyrus.sysml14.requirements.Satisfy#getSatisfies(org.eclipse.uml2.uml.NamedElement)
+ * @generated
+ */
+ EOperation getSatisfy__GetSatisfies__NamedElement();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.requirements.TestCase <em>Test Case</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Test Case</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.TestCase
+ * @generated
+ */
+ EClass getTestCase();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.requirements.TestCase#getBase_Operation <em>Base Operation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Operation</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.TestCase#getBase_Operation()
+ * @see #getTestCase()
+ * @generated
+ */
+ EReference getTestCase_Base_Operation();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.sysml14.requirements.TestCase#getBase_Behavior <em>Base Behavior</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Behavior</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.TestCase#getBase_Behavior()
+ * @see #getTestCase()
+ * @generated
+ */
+ EReference getTestCase_Base_Behavior();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.requirements.Verify <em>Verify</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Verify</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Verify
+ * @generated
+ */
+ EClass getVerify();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.sysml14.requirements.Verify#getVerifies(org.eclipse.uml2.uml.NamedElement) <em>Get Verifies</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Verifies</em>' operation.
+ * @see org.eclipse.papyrus.sysml14.requirements.Verify#getVerifies(org.eclipse.uml2.uml.NamedElement)
+ * @generated
+ */
+ EOperation getVerify__GetVerifies__NamedElement();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.sysml14.requirements.Refine <em>Refine</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Refine</em>'.
+ * @see org.eclipse.papyrus.sysml14.requirements.Refine
+ * @generated
+ */
+ EClass getRefine();
+
+ /**
+ * Returns the meta object for the '{@link org.eclipse.papyrus.sysml14.requirements.Refine#getRefines(org.eclipse.uml2.uml.NamedElement) <em>Get Refines</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Refines</em>' operation.
+ * @see org.eclipse.papyrus.sysml14.requirements.Refine#getRefines(org.eclipse.uml2.uml.NamedElement)
+ * @generated
+ */
+ EOperation getRefine__GetRefines__NamedElement();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ RequirementsFactory getRequirementsFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.DeriveReqtImpl <em>Derive Reqt</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.DeriveReqtImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getDeriveReqt()
+ * @generated
+ */
+ EClass DERIVE_REQT = eINSTANCE.getDeriveReqt();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.TraceImpl <em>Trace</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.TraceImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getTrace()
+ * @generated
+ */
+ EClass TRACE = eINSTANCE.getTrace();
+
+ /**
+ * The meta object literal for the '<em><b>Get Traced From</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation TRACE___GET_TRACED_FROM__NAMEDELEMENT = eINSTANCE.getTrace__GetTracedFrom__NamedElement();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl <em>Requirement</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getRequirement()
+ * @generated
+ */
+ EClass REQUIREMENT = eINSTANCE.getRequirement();
+
+ /**
+ * The meta object literal for the '<em><b>Base Class</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT__BASE_CLASS = eINSTANCE.getRequirement_Base_Class();
+
+ /**
+ * The meta object literal for the '<em><b>Text</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute REQUIREMENT__TEXT = eINSTANCE.getRequirement_Text();
+
+ /**
+ * The meta object literal for the '<em><b>Id</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute REQUIREMENT__ID = eINSTANCE.getRequirement_Id();
+
+ /**
+ * The meta object literal for the '<em><b>Derived</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT__DERIVED = eINSTANCE.getRequirement_Derived();
+
+ /**
+ * The meta object literal for the '<em><b>Derived From</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT__DERIVED_FROM = eINSTANCE.getRequirement_DerivedFrom();
+
+ /**
+ * The meta object literal for the '<em><b>Satisfied By</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT__SATISFIED_BY = eINSTANCE.getRequirement_SatisfiedBy();
+
+ /**
+ * The meta object literal for the '<em><b>Refined By</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT__REFINED_BY = eINSTANCE.getRequirement_RefinedBy();
+
+ /**
+ * The meta object literal for the '<em><b>Traced To</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT__TRACED_TO = eINSTANCE.getRequirement_TracedTo();
+
+ /**
+ * The meta object literal for the '<em><b>Verified By</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT__VERIFIED_BY = eINSTANCE.getRequirement_VerifiedBy();
+
+ /**
+ * The meta object literal for the '<em><b>Master</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REQUIREMENT__MASTER = eINSTANCE.getRequirement_Master();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.CopyImpl <em>Copy</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.CopyImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getCopy()
+ * @generated
+ */
+ EClass COPY = eINSTANCE.getCopy();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.SatisfyImpl <em>Satisfy</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.SatisfyImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getSatisfy()
+ * @generated
+ */
+ EClass SATISFY = eINSTANCE.getSatisfy();
+
+ /**
+ * The meta object literal for the '<em><b>Get Satisfies</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SATISFY___GET_SATISFIES__NAMEDELEMENT = eINSTANCE.getSatisfy__GetSatisfies__NamedElement();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.TestCaseImpl <em>Test Case</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.TestCaseImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getTestCase()
+ * @generated
+ */
+ EClass TEST_CASE = eINSTANCE.getTestCase();
+
+ /**
+ * The meta object literal for the '<em><b>Base Operation</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TEST_CASE__BASE_OPERATION = eINSTANCE.getTestCase_Base_Operation();
+
+ /**
+ * The meta object literal for the '<em><b>Base Behavior</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TEST_CASE__BASE_BEHAVIOR = eINSTANCE.getTestCase_Base_Behavior();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.VerifyImpl <em>Verify</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.VerifyImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getVerify()
+ * @generated
+ */
+ EClass VERIFY = eINSTANCE.getVerify();
+
+ /**
+ * The meta object literal for the '<em><b>Get Verifies</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation VERIFY___GET_VERIFIES__NAMEDELEMENT = eINSTANCE.getVerify__GetVerifies__NamedElement();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RefineImpl <em>Refine</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RefineImpl
+ * @see org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementsPackageImpl#getRefine()
+ * @generated
+ */
+ EClass REFINE = eINSTANCE.getRefine();
+
+ /**
+ * The meta object literal for the '<em><b>Get Refines</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation REFINE___GET_REFINES__NAMEDELEMENT = eINSTANCE.getRefine__GetRefines__NamedElement();
+
+ }
+
+} //RequirementsPackage
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Satisfy.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Satisfy.java
new file mode 100644
index 00000000000..ede63b71b24
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Satisfy.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Satisfy</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A Satisfy relationship is a dependency between a requirement and a model element that fulfills the requirement. As with other dependencies, the arrow direction points from the satisfying (client) model element to the (supplier) requirement that is satisfied.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getSatisfy()
+ * @model
+ * @generated
+ */
+public interface Satisfy extends Trace {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model required="true" ordered="false" refRequired="true" refOrdered="false"
+ * @generated
+ */
+ EList<Requirement> getSatisfies(NamedElement ref);
+
+} // Satisfy
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/TestCase.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/TestCase.java
new file mode 100644
index 00000000000..3ebedd13b4e
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/TestCase.java
@@ -0,0 +1,90 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.Operation;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Test Case</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A test case is a method for verifying a requirement is satisfied.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.TestCase#getBase_Operation <em>Base Operation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.TestCase#getBase_Behavior <em>Base Behavior</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getTestCase()
+ * @model
+ * @generated
+ */
+public interface TestCase extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Operation</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Operation</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Operation</em>' reference.
+ * @see #setBase_Operation(Operation)
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getTestCase_Base_Operation()
+ * @model ordered="false"
+ * @generated
+ */
+ Operation getBase_Operation();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.requirements.TestCase#getBase_Operation <em>Base Operation</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Operation</em>' reference.
+ * @see #getBase_Operation()
+ * @generated
+ */
+ void setBase_Operation(Operation value);
+
+ /**
+ * Returns the value of the '<em><b>Base Behavior</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Behavior</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Behavior</em>' reference.
+ * @see #setBase_Behavior(Behavior)
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getTestCase_Base_Behavior()
+ * @model ordered="false"
+ * @generated
+ */
+ Behavior getBase_Behavior();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.sysml14.requirements.TestCase#getBase_Behavior <em>Base Behavior</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Behavior</em>' reference.
+ * @see #getBase_Behavior()
+ * @generated
+ */
+ void setBase_Behavior(Behavior value);
+
+} // TestCase
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Trace.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Trace.java
new file mode 100644
index 00000000000..0d2f9ec107b
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Trace.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath;
+
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Trace</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getTrace()
+ * @model
+ * @generated
+ */
+public interface Trace extends DirectedRelationshipPropertyPath, org.eclipse.uml2.uml.profile.standard.Trace {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model required="true" ordered="false" refRequired="true" refOrdered="false"
+ * @generated
+ */
+ EList<Requirement> getTracedFrom(NamedElement ref);
+
+} // Trace
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Verify.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Verify.java
new file mode 100644
index 00000000000..25307b0cdaf
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/Verify.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Verify</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A Verify relationship is a dependency between a requirement and a test case or other model element that can determine whether a system fulfills the requirement. As with other dependencies, the arrow direction points from the (client) element to the (supplier) requirement.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#getVerify()
+ * @model
+ * @generated
+ */
+public interface Verify extends Trace {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model required="true" ordered="false" refRequired="true" refOrdered="false"
+ * @generated
+ */
+ EList<Requirement> getVerifies(NamedElement ref);
+
+} // Verify
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/CopyImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/CopyImpl.java
new file mode 100644
index 00000000000..4f326ab7c03
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/CopyImpl.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.sysml14.requirements.Copy;
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Copy</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class CopyImpl extends TraceImpl implements Copy {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CopyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RequirementsPackage.Literals.COPY;
+ }
+
+} //CopyImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/DeriveReqtImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/DeriveReqtImpl.java
new file mode 100644
index 00000000000..2745610fb0e
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/DeriveReqtImpl.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.sysml14.requirements.DeriveReqt;
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Derive Reqt</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class DeriveReqtImpl extends TraceImpl implements DeriveReqt {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DeriveReqtImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RequirementsPackage.Literals.DERIVE_REQT;
+ }
+
+} //DeriveReqtImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RefineImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RefineImpl.java
new file mode 100644
index 00000000000..c03a5c5506c
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RefineImpl.java
@@ -0,0 +1,230 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements.internal.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.DirectedRelationshipPropertyPathImpl;
+
+import org.eclipse.papyrus.sysml14.requirements.Refine;
+import org.eclipse.papyrus.sysml14.requirements.Requirement;
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+
+import org.eclipse.uml2.uml.Abstraction;
+import org.eclipse.uml2.uml.NamedElement;
+
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Refine</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RefineImpl#getBase_Abstraction <em>Base Abstraction</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class RefineImpl extends DirectedRelationshipPropertyPathImpl implements Refine {
+ /**
+ * The cached value of the '{@link #getBase_Abstraction() <em>Base Abstraction</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Abstraction()
+ * @generated
+ * @ordered
+ */
+ protected Abstraction base_Abstraction;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected RefineImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RequirementsPackage.Literals.REFINE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Abstraction getBase_Abstraction() {
+ if (base_Abstraction != null && base_Abstraction.eIsProxy()) {
+ InternalEObject oldBase_Abstraction = (InternalEObject)base_Abstraction;
+ base_Abstraction = (Abstraction)eResolveProxy(oldBase_Abstraction);
+ if (base_Abstraction != oldBase_Abstraction) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, RequirementsPackage.REFINE__BASE_ABSTRACTION, oldBase_Abstraction, base_Abstraction));
+ }
+ }
+ return base_Abstraction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Abstraction basicGetBase_Abstraction() {
+ return base_Abstraction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Abstraction(Abstraction newBase_Abstraction) {
+ Abstraction oldBase_Abstraction = base_Abstraction;
+ base_Abstraction = newBase_Abstraction;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RequirementsPackage.REFINE__BASE_ABSTRACTION, oldBase_Abstraction, base_Abstraction));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Requirement> getRefines(NamedElement ref) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RequirementsPackage.REFINE__BASE_ABSTRACTION:
+ if (resolve) return getBase_Abstraction();
+ return basicGetBase_Abstraction();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RequirementsPackage.REFINE__BASE_ABSTRACTION:
+ setBase_Abstraction((Abstraction)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RequirementsPackage.REFINE__BASE_ABSTRACTION:
+ setBase_Abstraction((Abstraction)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RequirementsPackage.REFINE__BASE_ABSTRACTION:
+ return base_Abstraction != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == org.eclipse.uml2.uml.profile.standard.Refine.class) {
+ switch (derivedFeatureID) {
+ case RequirementsPackage.REFINE__BASE_ABSTRACTION: return StandardPackage.REFINE__BASE_ABSTRACTION;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == org.eclipse.uml2.uml.profile.standard.Refine.class) {
+ switch (baseFeatureID) {
+ case StandardPackage.REFINE__BASE_ABSTRACTION: return RequirementsPackage.REFINE__BASE_ABSTRACTION;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RequirementsPackage.REFINE___GET_REFINES__NAMEDELEMENT:
+ return getRefines((NamedElement)arguments.get(0));
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} //RefineImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RequirementImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RequirementImpl.java
new file mode 100644
index 00000000000..fb37dca87b9
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RequirementImpl.java
@@ -0,0 +1,574 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements.internal.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.requirements.Requirement;
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Requirement</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl#getBase_Class <em>Base Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl#getText <em>Text</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl#getId <em>Id</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl#getDerived <em>Derived</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl#getDerivedFrom <em>Derived From</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl#getSatisfiedBy <em>Satisfied By</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl#getRefinedBy <em>Refined By</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl#getTracedTo <em>Traced To</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl#getVerifiedBy <em>Verified By</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.RequirementImpl#getMaster <em>Master</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class RequirementImpl extends MinimalEObjectImpl.Container implements Requirement {
+ /**
+ * The cached value of the '{@link #getBase_Class() <em>Base Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Class()
+ * @generated
+ * @ordered
+ */
+ protected org.eclipse.uml2.uml.Class base_Class;
+
+ /**
+ * The default value of the '{@link #getText() <em>Text</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getText()
+ * @generated
+ * @ordered
+ */
+ protected static final String TEXT_EDEFAULT = ""; //$NON-NLS-1$
+
+ /**
+ * The cached value of the '{@link #getText() <em>Text</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getText()
+ * @generated
+ * @ordered
+ */
+ protected String text = TEXT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getId()
+ * @generated
+ * @ordered
+ */
+ protected static final String ID_EDEFAULT = ""; //$NON-NLS-1$
+
+ /**
+ * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getId()
+ * @generated
+ * @ordered
+ */
+ protected String id = ID_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected RequirementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RequirementsPackage.Literals.REQUIREMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Class getBase_Class() {
+ if (base_Class != null && base_Class.eIsProxy()) {
+ InternalEObject oldBase_Class = (InternalEObject)base_Class;
+ base_Class = (org.eclipse.uml2.uml.Class)eResolveProxy(oldBase_Class);
+ if (base_Class != oldBase_Class) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, RequirementsPackage.REQUIREMENT__BASE_CLASS, oldBase_Class, base_Class));
+ }
+ }
+ return base_Class;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Class basicGetBase_Class() {
+ return base_Class;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Class(org.eclipse.uml2.uml.Class newBase_Class) {
+ org.eclipse.uml2.uml.Class oldBase_Class = base_Class;
+ base_Class = newBase_Class;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RequirementsPackage.REQUIREMENT__BASE_CLASS, oldBase_Class, base_Class));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getText() {
+ return text;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setText(String newText) {
+ String oldText = text;
+ text = newText;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RequirementsPackage.REQUIREMENT__TEXT, oldText, text));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getId() {
+ return id;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setId(String newId) {
+ String oldId = id;
+ id = newId;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RequirementsPackage.REQUIREMENT__ID, oldId, id));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Requirement> getDerived() {
+ // TODO: implement this method to return the 'Derived' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Requirement> getDerivedFrom() {
+ // TODO: implement this method to return the 'Derived From' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<NamedElement> getSatisfiedBy() {
+ // TODO: implement this method to return the 'Satisfied By' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getSatisfiedBy(String name) {
+ return getSatisfiedBy(name, false, null);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getSatisfiedBy(String name, boolean ignoreCase, EClass eClass) {
+ satisfiedByLoop: for (NamedElement satisfiedBy : getSatisfiedBy()) {
+ if (eClass != null && !eClass.isInstance(satisfiedBy))
+ continue satisfiedByLoop;
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(satisfiedBy.getName()) : name.equals(satisfiedBy.getName())))
+ continue satisfiedByLoop;
+ return satisfiedBy;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<NamedElement> getRefinedBy() {
+ // TODO: implement this method to return the 'Refined By' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getRefinedBy(String name) {
+ return getRefinedBy(name, false, null);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getRefinedBy(String name, boolean ignoreCase, EClass eClass) {
+ refinedByLoop: for (NamedElement refinedBy : getRefinedBy()) {
+ if (eClass != null && !eClass.isInstance(refinedBy))
+ continue refinedByLoop;
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(refinedBy.getName()) : name.equals(refinedBy.getName())))
+ continue refinedByLoop;
+ return refinedBy;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<NamedElement> getTracedTo() {
+ // TODO: implement this method to return the 'Traced To' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getTracedTo(String name) {
+ return getTracedTo(name, false, null);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getTracedTo(String name, boolean ignoreCase, EClass eClass) {
+ tracedToLoop: for (NamedElement tracedTo : getTracedTo()) {
+ if (eClass != null && !eClass.isInstance(tracedTo))
+ continue tracedToLoop;
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(tracedTo.getName()) : name.equals(tracedTo.getName())))
+ continue tracedToLoop;
+ return tracedTo;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<NamedElement> getVerifiedBy() {
+ // TODO: implement this method to return the 'Verified By' reference list
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getVerifiedBy(String name) {
+ return getVerifiedBy(name, false, null);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NamedElement getVerifiedBy(String name, boolean ignoreCase, EClass eClass) {
+ verifiedByLoop: for (NamedElement verifiedBy : getVerifiedBy()) {
+ if (eClass != null && !eClass.isInstance(verifiedBy))
+ continue verifiedByLoop;
+ if (name != null && !(ignoreCase ? name.equalsIgnoreCase(verifiedBy.getName()) : name.equals(verifiedBy.getName())))
+ continue verifiedByLoop;
+ return verifiedBy;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Requirement getMaster() {
+ Requirement master = basicGetMaster();
+ return master != null && master.eIsProxy() ? (Requirement)eResolveProxy((InternalEObject)master) : master;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Requirement basicGetMaster() {
+ // TODO: implement this method to return the 'Master' reference
+ // -> do not perform proxy resolution
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setMaster(Requirement newMaster) {
+ // TODO: implement this method to set the 'Master' reference
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RequirementsPackage.REQUIREMENT__BASE_CLASS:
+ if (resolve) return getBase_Class();
+ return basicGetBase_Class();
+ case RequirementsPackage.REQUIREMENT__TEXT:
+ return getText();
+ case RequirementsPackage.REQUIREMENT__ID:
+ return getId();
+ case RequirementsPackage.REQUIREMENT__DERIVED:
+ return getDerived();
+ case RequirementsPackage.REQUIREMENT__DERIVED_FROM:
+ return getDerivedFrom();
+ case RequirementsPackage.REQUIREMENT__SATISFIED_BY:
+ return getSatisfiedBy();
+ case RequirementsPackage.REQUIREMENT__REFINED_BY:
+ return getRefinedBy();
+ case RequirementsPackage.REQUIREMENT__TRACED_TO:
+ return getTracedTo();
+ case RequirementsPackage.REQUIREMENT__VERIFIED_BY:
+ return getVerifiedBy();
+ case RequirementsPackage.REQUIREMENT__MASTER:
+ if (resolve) return getMaster();
+ return basicGetMaster();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RequirementsPackage.REQUIREMENT__BASE_CLASS:
+ setBase_Class((org.eclipse.uml2.uml.Class)newValue);
+ return;
+ case RequirementsPackage.REQUIREMENT__TEXT:
+ setText((String)newValue);
+ return;
+ case RequirementsPackage.REQUIREMENT__ID:
+ setId((String)newValue);
+ return;
+ case RequirementsPackage.REQUIREMENT__DERIVED:
+ getDerived().clear();
+ getDerived().addAll((Collection<? extends Requirement>)newValue);
+ return;
+ case RequirementsPackage.REQUIREMENT__DERIVED_FROM:
+ getDerivedFrom().clear();
+ getDerivedFrom().addAll((Collection<? extends Requirement>)newValue);
+ return;
+ case RequirementsPackage.REQUIREMENT__SATISFIED_BY:
+ getSatisfiedBy().clear();
+ getSatisfiedBy().addAll((Collection<? extends NamedElement>)newValue);
+ return;
+ case RequirementsPackage.REQUIREMENT__REFINED_BY:
+ getRefinedBy().clear();
+ getRefinedBy().addAll((Collection<? extends NamedElement>)newValue);
+ return;
+ case RequirementsPackage.REQUIREMENT__TRACED_TO:
+ getTracedTo().clear();
+ getTracedTo().addAll((Collection<? extends NamedElement>)newValue);
+ return;
+ case RequirementsPackage.REQUIREMENT__VERIFIED_BY:
+ getVerifiedBy().clear();
+ getVerifiedBy().addAll((Collection<? extends NamedElement>)newValue);
+ return;
+ case RequirementsPackage.REQUIREMENT__MASTER:
+ setMaster((Requirement)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RequirementsPackage.REQUIREMENT__BASE_CLASS:
+ setBase_Class((org.eclipse.uml2.uml.Class)null);
+ return;
+ case RequirementsPackage.REQUIREMENT__TEXT:
+ setText(TEXT_EDEFAULT);
+ return;
+ case RequirementsPackage.REQUIREMENT__ID:
+ setId(ID_EDEFAULT);
+ return;
+ case RequirementsPackage.REQUIREMENT__DERIVED:
+ getDerived().clear();
+ return;
+ case RequirementsPackage.REQUIREMENT__DERIVED_FROM:
+ getDerivedFrom().clear();
+ return;
+ case RequirementsPackage.REQUIREMENT__SATISFIED_BY:
+ getSatisfiedBy().clear();
+ return;
+ case RequirementsPackage.REQUIREMENT__REFINED_BY:
+ getRefinedBy().clear();
+ return;
+ case RequirementsPackage.REQUIREMENT__TRACED_TO:
+ getTracedTo().clear();
+ return;
+ case RequirementsPackage.REQUIREMENT__VERIFIED_BY:
+ getVerifiedBy().clear();
+ return;
+ case RequirementsPackage.REQUIREMENT__MASTER:
+ setMaster((Requirement)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RequirementsPackage.REQUIREMENT__BASE_CLASS:
+ return base_Class != null;
+ case RequirementsPackage.REQUIREMENT__TEXT:
+ return TEXT_EDEFAULT == null ? text != null : !TEXT_EDEFAULT.equals(text);
+ case RequirementsPackage.REQUIREMENT__ID:
+ return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+ case RequirementsPackage.REQUIREMENT__DERIVED:
+ return !getDerived().isEmpty();
+ case RequirementsPackage.REQUIREMENT__DERIVED_FROM:
+ return !getDerivedFrom().isEmpty();
+ case RequirementsPackage.REQUIREMENT__SATISFIED_BY:
+ return !getSatisfiedBy().isEmpty();
+ case RequirementsPackage.REQUIREMENT__REFINED_BY:
+ return !getRefinedBy().isEmpty();
+ case RequirementsPackage.REQUIREMENT__TRACED_TO:
+ return !getTracedTo().isEmpty();
+ case RequirementsPackage.REQUIREMENT__VERIFIED_BY:
+ return !getVerifiedBy().isEmpty();
+ case RequirementsPackage.REQUIREMENT__MASTER:
+ return basicGetMaster() != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (text: "); //$NON-NLS-1$
+ result.append(text);
+ result.append(", id: "); //$NON-NLS-1$
+ result.append(id);
+ result.append(')');
+ return result.toString();
+ }
+
+} //RequirementImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RequirementsFactoryImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RequirementsFactoryImpl.java
new file mode 100644
index 00000000000..0dc96f0dd8b
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RequirementsFactoryImpl.java
@@ -0,0 +1,178 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements.internal.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.sysml14.requirements.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class RequirementsFactoryImpl extends EFactoryImpl implements RequirementsFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static RequirementsFactory init() {
+ try {
+ RequirementsFactory theRequirementsFactory = (RequirementsFactory)EPackage.Registry.INSTANCE.getEFactory(RequirementsPackage.eNS_URI);
+ if (theRequirementsFactory != null) {
+ return theRequirementsFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new RequirementsFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RequirementsFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case RequirementsPackage.DERIVE_REQT: return createDeriveReqt();
+ case RequirementsPackage.TRACE: return createTrace();
+ case RequirementsPackage.REQUIREMENT: return createRequirement();
+ case RequirementsPackage.COPY: return createCopy();
+ case RequirementsPackage.SATISFY: return createSatisfy();
+ case RequirementsPackage.TEST_CASE: return createTestCase();
+ case RequirementsPackage.VERIFY: return createVerify();
+ case RequirementsPackage.REFINE: return createRefine();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DeriveReqt createDeriveReqt() {
+ DeriveReqtImpl deriveReqt = new DeriveReqtImpl();
+ return deriveReqt;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Trace createTrace() {
+ TraceImpl trace = new TraceImpl();
+ return trace;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Requirement createRequirement() {
+ RequirementImpl requirement = new RequirementImpl();
+ return requirement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Copy createCopy() {
+ CopyImpl copy = new CopyImpl();
+ return copy;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Satisfy createSatisfy() {
+ SatisfyImpl satisfy = new SatisfyImpl();
+ return satisfy;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TestCase createTestCase() {
+ TestCaseImpl testCase = new TestCaseImpl();
+ return testCase;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Verify createVerify() {
+ VerifyImpl verify = new VerifyImpl();
+ return verify;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Refine createRefine() {
+ RefineImpl refine = new RefineImpl();
+ return refine;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RequirementsPackage getRequirementsPackage() {
+ return (RequirementsPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static RequirementsPackage getPackage() {
+ return RequirementsPackage.eINSTANCE;
+ }
+
+} //RequirementsFactoryImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RequirementsPackageImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RequirementsPackageImpl.java
new file mode 100644
index 00000000000..078a17f2e45
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/RequirementsPackageImpl.java
@@ -0,0 +1,599 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements.internal.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.sysml14.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml14.activities.internal.impl.ActivitiesPackageImpl;
+
+import org.eclipse.papyrus.sysml14.allocations.AllocationsPackage;
+
+import org.eclipse.papyrus.sysml14.allocations.internal.impl.AllocationsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.BlocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.ConstraintblocksPackage;
+
+import org.eclipse.papyrus.sysml14.constraintblocks.internal.impl.ConstraintblocksPackageImpl;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.DeprecatedelementsPackage;
+
+import org.eclipse.papyrus.sysml14.deprecatedelements.internal.impl.DeprecatedelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.modelelements.ModelelementsPackage;
+
+import org.eclipse.papyrus.sysml14.modelelements.internal.impl.ModelelementsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.portandflows.PortandflowsPackage;
+
+import org.eclipse.papyrus.sysml14.portandflows.internal.impl.PortandflowsPackageImpl;
+
+import org.eclipse.papyrus.sysml14.requirements.Copy;
+import org.eclipse.papyrus.sysml14.requirements.DeriveReqt;
+import org.eclipse.papyrus.sysml14.requirements.Refine;
+import org.eclipse.papyrus.sysml14.requirements.Requirement;
+import org.eclipse.papyrus.sysml14.requirements.RequirementsFactory;
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+import org.eclipse.papyrus.sysml14.requirements.Satisfy;
+import org.eclipse.papyrus.sysml14.requirements.TestCase;
+import org.eclipse.papyrus.sysml14.requirements.Trace;
+import org.eclipse.papyrus.sysml14.requirements.Verify;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class RequirementsPackageImpl extends EPackageImpl implements RequirementsPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass deriveReqtEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass traceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass requirementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass copyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass satisfyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass testCaseEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass verifyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass refineEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private RequirementsPackageImpl() {
+ super(eNS_URI, RequirementsFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link RequirementsPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static RequirementsPackage init() {
+ if (isInited) return (RequirementsPackage)EPackage.Registry.INSTANCE.getEPackage(RequirementsPackage.eNS_URI);
+
+ // Obtain or create and register package
+ RequirementsPackageImpl theRequirementsPackage = (RequirementsPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof RequirementsPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new RequirementsPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ StandardPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ BlocksPackageImpl theBlocksPackage = (BlocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) instanceof BlocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI) : BlocksPackage.eINSTANCE);
+ PortandflowsPackageImpl thePortandflowsPackage = (PortandflowsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) instanceof PortandflowsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(PortandflowsPackage.eNS_URI) : PortandflowsPackage.eINSTANCE);
+ ActivitiesPackageImpl theActivitiesPackage = (ActivitiesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) instanceof ActivitiesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ActivitiesPackage.eNS_URI) : ActivitiesPackage.eINSTANCE);
+ ModelelementsPackageImpl theModelelementsPackage = (ModelelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) instanceof ModelelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ModelelementsPackage.eNS_URI) : ModelelementsPackage.eINSTANCE);
+ ConstraintblocksPackageImpl theConstraintblocksPackage = (ConstraintblocksPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) instanceof ConstraintblocksPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ConstraintblocksPackage.eNS_URI) : ConstraintblocksPackage.eINSTANCE);
+ AllocationsPackageImpl theAllocationsPackage = (AllocationsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) instanceof AllocationsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AllocationsPackage.eNS_URI) : AllocationsPackage.eINSTANCE);
+ DeprecatedelementsPackageImpl theDeprecatedelementsPackage = (DeprecatedelementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) instanceof DeprecatedelementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(DeprecatedelementsPackage.eNS_URI) : DeprecatedelementsPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theRequirementsPackage.createPackageContents();
+ theBlocksPackage.createPackageContents();
+ thePortandflowsPackage.createPackageContents();
+ theActivitiesPackage.createPackageContents();
+ theModelelementsPackage.createPackageContents();
+ theConstraintblocksPackage.createPackageContents();
+ theAllocationsPackage.createPackageContents();
+ theDeprecatedelementsPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theRequirementsPackage.initializePackageContents();
+ theBlocksPackage.initializePackageContents();
+ thePortandflowsPackage.initializePackageContents();
+ theActivitiesPackage.initializePackageContents();
+ theModelelementsPackage.initializePackageContents();
+ theConstraintblocksPackage.initializePackageContents();
+ theAllocationsPackage.initializePackageContents();
+ theDeprecatedelementsPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theRequirementsPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(RequirementsPackage.eNS_URI, theRequirementsPackage);
+ return theRequirementsPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDeriveReqt() {
+ return deriveReqtEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTrace() {
+ return traceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getTrace__GetTracedFrom__NamedElement() {
+ return traceEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getRequirement() {
+ return requirementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirement_Base_Class() {
+ return (EReference)requirementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getRequirement_Text() {
+ return (EAttribute)requirementEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getRequirement_Id() {
+ return (EAttribute)requirementEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirement_Derived() {
+ return (EReference)requirementEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirement_DerivedFrom() {
+ return (EReference)requirementEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirement_SatisfiedBy() {
+ return (EReference)requirementEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirement_RefinedBy() {
+ return (EReference)requirementEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirement_TracedTo() {
+ return (EReference)requirementEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirement_VerifiedBy() {
+ return (EReference)requirementEClass.getEStructuralFeatures().get(8);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getRequirement_Master() {
+ return (EReference)requirementEClass.getEStructuralFeatures().get(9);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getCopy() {
+ return copyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSatisfy() {
+ return satisfyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSatisfy__GetSatisfies__NamedElement() {
+ return satisfyEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTestCase() {
+ return testCaseEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTestCase_Base_Operation() {
+ return (EReference)testCaseEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTestCase_Base_Behavior() {
+ return (EReference)testCaseEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getVerify() {
+ return verifyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getVerify__GetVerifies__NamedElement() {
+ return verifyEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getRefine() {
+ return refineEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getRefine__GetRefines__NamedElement() {
+ return refineEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RequirementsFactory getRequirementsFactory() {
+ return (RequirementsFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ deriveReqtEClass = createEClass(DERIVE_REQT);
+
+ traceEClass = createEClass(TRACE);
+ createEOperation(traceEClass, TRACE___GET_TRACED_FROM__NAMEDELEMENT);
+
+ requirementEClass = createEClass(REQUIREMENT);
+ createEReference(requirementEClass, REQUIREMENT__BASE_CLASS);
+ createEAttribute(requirementEClass, REQUIREMENT__TEXT);
+ createEAttribute(requirementEClass, REQUIREMENT__ID);
+ createEReference(requirementEClass, REQUIREMENT__DERIVED);
+ createEReference(requirementEClass, REQUIREMENT__DERIVED_FROM);
+ createEReference(requirementEClass, REQUIREMENT__SATISFIED_BY);
+ createEReference(requirementEClass, REQUIREMENT__REFINED_BY);
+ createEReference(requirementEClass, REQUIREMENT__TRACED_TO);
+ createEReference(requirementEClass, REQUIREMENT__VERIFIED_BY);
+ createEReference(requirementEClass, REQUIREMENT__MASTER);
+
+ copyEClass = createEClass(COPY);
+
+ satisfyEClass = createEClass(SATISFY);
+ createEOperation(satisfyEClass, SATISFY___GET_SATISFIES__NAMEDELEMENT);
+
+ testCaseEClass = createEClass(TEST_CASE);
+ createEReference(testCaseEClass, TEST_CASE__BASE_OPERATION);
+ createEReference(testCaseEClass, TEST_CASE__BASE_BEHAVIOR);
+
+ verifyEClass = createEClass(VERIFY);
+ createEOperation(verifyEClass, VERIFY___GET_VERIFIES__NAMEDELEMENT);
+
+ refineEClass = createEClass(REFINE);
+ createEOperation(refineEClass, REFINE___GET_REFINES__NAMEDELEMENT);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ BlocksPackage theBlocksPackage = (BlocksPackage)EPackage.Registry.INSTANCE.getEPackage(BlocksPackage.eNS_URI);
+ StandardPackage theStandardPackage = (StandardPackage)EPackage.Registry.INSTANCE.getEPackage(StandardPackage.eNS_URI);
+ UMLPackage theUMLPackage = (UMLPackage)EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
+ TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ deriveReqtEClass.getESuperTypes().add(this.getTrace());
+ traceEClass.getESuperTypes().add(theBlocksPackage.getDirectedRelationshipPropertyPath());
+ traceEClass.getESuperTypes().add(theStandardPackage.getTrace());
+ copyEClass.getESuperTypes().add(this.getTrace());
+ satisfyEClass.getESuperTypes().add(this.getTrace());
+ verifyEClass.getESuperTypes().add(this.getTrace());
+ refineEClass.getESuperTypes().add(theBlocksPackage.getDirectedRelationshipPropertyPath());
+ refineEClass.getESuperTypes().add(theStandardPackage.getRefine());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(deriveReqtEClass, DeriveReqt.class, "DeriveReqt", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(traceEClass, Trace.class, "Trace", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ EOperation op = initEOperation(getTrace__GetTracedFrom__NamedElement(), this.getRequirement(), "getTracedFrom", 1, -1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+ addEParameter(op, theUMLPackage.getNamedElement(), "ref", 1, 1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(requirementEClass, Requirement.class, "Requirement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getRequirement_Base_Class(), theUMLPackage.getClass_(), null, "base_Class", null, 0, 1, Requirement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getRequirement_Text(), theTypesPackage.getString(), "text", "", 1, 1, Requirement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$
+ initEAttribute(getRequirement_Id(), theTypesPackage.getString(), "id", "", 1, 1, Requirement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$
+ initEReference(getRequirement_Derived(), this.getRequirement(), null, "derived", null, 0, -1, Requirement.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRequirement_DerivedFrom(), this.getRequirement(), null, "derivedFrom", null, 0, -1, Requirement.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRequirement_SatisfiedBy(), theUMLPackage.getNamedElement(), null, "satisfiedBy", null, 0, -1, Requirement.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRequirement_RefinedBy(), theUMLPackage.getNamedElement(), null, "refinedBy", null, 0, -1, Requirement.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRequirement_TracedTo(), theUMLPackage.getNamedElement(), null, "tracedTo", null, 0, -1, Requirement.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRequirement_VerifiedBy(), theUMLPackage.getNamedElement(), null, "verifiedBy", null, 0, -1, Requirement.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getRequirement_Master(), this.getRequirement(), null, "master", null, 0, 1, Requirement.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(copyEClass, Copy.class, "Copy", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(satisfyEClass, Satisfy.class, "Satisfy", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ op = initEOperation(getSatisfy__GetSatisfies__NamedElement(), this.getRequirement(), "getSatisfies", 1, -1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+ addEParameter(op, theUMLPackage.getNamedElement(), "ref", 1, 1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(testCaseEClass, TestCase.class, "TestCase", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getTestCase_Base_Operation(), theUMLPackage.getOperation(), null, "base_Operation", null, 0, 1, TestCase.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEReference(getTestCase_Base_Behavior(), theUMLPackage.getBehavior(), null, "base_Behavior", null, 0, 1, TestCase.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(verifyEClass, Verify.class, "Verify", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ op = initEOperation(getVerify__GetVerifies__NamedElement(), this.getRequirement(), "getVerifies", 1, -1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+ addEParameter(op, theUMLPackage.getNamedElement(), "ref", 1, 1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(refineEClass, Refine.class, "Refine", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ op = initEOperation(getRefine__GetRefines__NamedElement(), this.getRequirement(), "getRefines", 1, -1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+ addEParameter(op, theUMLPackage.getNamedElement(), "ref", 1, 1, IS_UNIQUE, !IS_ORDERED); //$NON-NLS-1$
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/uml2/2.0.0/UML
+ createUMLAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/uml2/2.0.0/UML</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createUMLAnnotations() {
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML"; //$NON-NLS-1$
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "originalName", "Requirements" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+} //RequirementsPackageImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/SatisfyImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/SatisfyImpl.java
new file mode 100644
index 00000000000..66310026a58
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/SatisfyImpl.java
@@ -0,0 +1,77 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements.internal.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.sysml14.requirements.Requirement;
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+import org.eclipse.papyrus.sysml14.requirements.Satisfy;
+
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Satisfy</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class SatisfyImpl extends TraceImpl implements Satisfy {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SatisfyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RequirementsPackage.Literals.SATISFY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Requirement> getSatisfies(NamedElement ref) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RequirementsPackage.SATISFY___GET_SATISFIES__NAMEDELEMENT:
+ return getSatisfies((NamedElement)arguments.get(0));
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} //SatisfyImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/TestCaseImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/TestCaseImpl.java
new file mode 100644
index 00000000000..dc70f5b10eb
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/TestCaseImpl.java
@@ -0,0 +1,225 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements.internal.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+import org.eclipse.papyrus.sysml14.requirements.TestCase;
+
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.Operation;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Test Case</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.TestCaseImpl#getBase_Operation <em>Base Operation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.TestCaseImpl#getBase_Behavior <em>Base Behavior</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class TestCaseImpl extends MinimalEObjectImpl.Container implements TestCase {
+ /**
+ * The cached value of the '{@link #getBase_Operation() <em>Base Operation</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Operation()
+ * @generated
+ * @ordered
+ */
+ protected Operation base_Operation;
+
+ /**
+ * The cached value of the '{@link #getBase_Behavior() <em>Base Behavior</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Behavior()
+ * @generated
+ * @ordered
+ */
+ protected Behavior base_Behavior;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TestCaseImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RequirementsPackage.Literals.TEST_CASE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Operation getBase_Operation() {
+ if (base_Operation != null && base_Operation.eIsProxy()) {
+ InternalEObject oldBase_Operation = (InternalEObject)base_Operation;
+ base_Operation = (Operation)eResolveProxy(oldBase_Operation);
+ if (base_Operation != oldBase_Operation) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, RequirementsPackage.TEST_CASE__BASE_OPERATION, oldBase_Operation, base_Operation));
+ }
+ }
+ return base_Operation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Operation basicGetBase_Operation() {
+ return base_Operation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Operation(Operation newBase_Operation) {
+ Operation oldBase_Operation = base_Operation;
+ base_Operation = newBase_Operation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RequirementsPackage.TEST_CASE__BASE_OPERATION, oldBase_Operation, base_Operation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Behavior getBase_Behavior() {
+ if (base_Behavior != null && base_Behavior.eIsProxy()) {
+ InternalEObject oldBase_Behavior = (InternalEObject)base_Behavior;
+ base_Behavior = (Behavior)eResolveProxy(oldBase_Behavior);
+ if (base_Behavior != oldBase_Behavior) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, RequirementsPackage.TEST_CASE__BASE_BEHAVIOR, oldBase_Behavior, base_Behavior));
+ }
+ }
+ return base_Behavior;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Behavior basicGetBase_Behavior() {
+ return base_Behavior;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Behavior(Behavior newBase_Behavior) {
+ Behavior oldBase_Behavior = base_Behavior;
+ base_Behavior = newBase_Behavior;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RequirementsPackage.TEST_CASE__BASE_BEHAVIOR, oldBase_Behavior, base_Behavior));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RequirementsPackage.TEST_CASE__BASE_OPERATION:
+ if (resolve) return getBase_Operation();
+ return basicGetBase_Operation();
+ case RequirementsPackage.TEST_CASE__BASE_BEHAVIOR:
+ if (resolve) return getBase_Behavior();
+ return basicGetBase_Behavior();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RequirementsPackage.TEST_CASE__BASE_OPERATION:
+ setBase_Operation((Operation)newValue);
+ return;
+ case RequirementsPackage.TEST_CASE__BASE_BEHAVIOR:
+ setBase_Behavior((Behavior)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RequirementsPackage.TEST_CASE__BASE_OPERATION:
+ setBase_Operation((Operation)null);
+ return;
+ case RequirementsPackage.TEST_CASE__BASE_BEHAVIOR:
+ setBase_Behavior((Behavior)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RequirementsPackage.TEST_CASE__BASE_OPERATION:
+ return base_Operation != null;
+ case RequirementsPackage.TEST_CASE__BASE_BEHAVIOR:
+ return base_Behavior != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //TestCaseImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/TraceImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/TraceImpl.java
new file mode 100644
index 00000000000..58b67d7490e
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/TraceImpl.java
@@ -0,0 +1,230 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements.internal.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.sysml14.blocks.internal.impl.DirectedRelationshipPropertyPathImpl;
+
+import org.eclipse.papyrus.sysml14.requirements.Requirement;
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+import org.eclipse.papyrus.sysml14.requirements.Trace;
+
+import org.eclipse.uml2.uml.Abstraction;
+import org.eclipse.uml2.uml.NamedElement;
+
+import org.eclipse.uml2.uml.profile.standard.StandardPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Trace</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.sysml14.requirements.internal.impl.TraceImpl#getBase_Abstraction <em>Base Abstraction</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class TraceImpl extends DirectedRelationshipPropertyPathImpl implements Trace {
+ /**
+ * The cached value of the '{@link #getBase_Abstraction() <em>Base Abstraction</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Abstraction()
+ * @generated
+ * @ordered
+ */
+ protected Abstraction base_Abstraction;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TraceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RequirementsPackage.Literals.TRACE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Abstraction getBase_Abstraction() {
+ if (base_Abstraction != null && base_Abstraction.eIsProxy()) {
+ InternalEObject oldBase_Abstraction = (InternalEObject)base_Abstraction;
+ base_Abstraction = (Abstraction)eResolveProxy(oldBase_Abstraction);
+ if (base_Abstraction != oldBase_Abstraction) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, RequirementsPackage.TRACE__BASE_ABSTRACTION, oldBase_Abstraction, base_Abstraction));
+ }
+ }
+ return base_Abstraction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Abstraction basicGetBase_Abstraction() {
+ return base_Abstraction;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Abstraction(Abstraction newBase_Abstraction) {
+ Abstraction oldBase_Abstraction = base_Abstraction;
+ base_Abstraction = newBase_Abstraction;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RequirementsPackage.TRACE__BASE_ABSTRACTION, oldBase_Abstraction, base_Abstraction));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Requirement> getTracedFrom(NamedElement ref) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RequirementsPackage.TRACE__BASE_ABSTRACTION:
+ if (resolve) return getBase_Abstraction();
+ return basicGetBase_Abstraction();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RequirementsPackage.TRACE__BASE_ABSTRACTION:
+ setBase_Abstraction((Abstraction)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RequirementsPackage.TRACE__BASE_ABSTRACTION:
+ setBase_Abstraction((Abstraction)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RequirementsPackage.TRACE__BASE_ABSTRACTION:
+ return base_Abstraction != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == org.eclipse.uml2.uml.profile.standard.Trace.class) {
+ switch (derivedFeatureID) {
+ case RequirementsPackage.TRACE__BASE_ABSTRACTION: return StandardPackage.TRACE__BASE_ABSTRACTION;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == org.eclipse.uml2.uml.profile.standard.Trace.class) {
+ switch (baseFeatureID) {
+ case StandardPackage.TRACE__BASE_ABSTRACTION: return RequirementsPackage.TRACE__BASE_ABSTRACTION;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RequirementsPackage.TRACE___GET_TRACED_FROM__NAMEDELEMENT:
+ return getTracedFrom((NamedElement)arguments.get(0));
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} //TraceImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/VerifyImpl.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/VerifyImpl.java
new file mode 100644
index 00000000000..51e6906ced7
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/internal/impl/VerifyImpl.java
@@ -0,0 +1,77 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements.internal.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.sysml14.requirements.Requirement;
+import org.eclipse.papyrus.sysml14.requirements.RequirementsPackage;
+import org.eclipse.papyrus.sysml14.requirements.Verify;
+
+import org.eclipse.uml2.uml.NamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Verify</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class VerifyImpl extends TraceImpl implements Verify {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected VerifyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RequirementsPackage.Literals.VERIFY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Requirement> getVerifies(NamedElement ref) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RequirementsPackage.VERIFY___GET_VERIFIES__NAMEDELEMENT:
+ return getVerifies((NamedElement)arguments.get(0));
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} //VerifyImpl
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/util/RequirementsAdapterFactory.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/util/RequirementsAdapterFactory.java
new file mode 100644
index 00000000000..9994107a3e2
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/util/RequirementsAdapterFactory.java
@@ -0,0 +1,308 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath;
+
+import org.eclipse.papyrus.sysml14.requirements.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage
+ * @generated
+ */
+public class RequirementsAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static RequirementsPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RequirementsAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = RequirementsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected RequirementsSwitch<Adapter> modelSwitch =
+ new RequirementsSwitch<Adapter>() {
+ @Override
+ public Adapter caseDeriveReqt(DeriveReqt object) {
+ return createDeriveReqtAdapter();
+ }
+ @Override
+ public Adapter caseTrace(Trace object) {
+ return createTraceAdapter();
+ }
+ @Override
+ public Adapter caseRequirement(Requirement object) {
+ return createRequirementAdapter();
+ }
+ @Override
+ public Adapter caseCopy(Copy object) {
+ return createCopyAdapter();
+ }
+ @Override
+ public Adapter caseSatisfy(Satisfy object) {
+ return createSatisfyAdapter();
+ }
+ @Override
+ public Adapter caseTestCase(TestCase object) {
+ return createTestCaseAdapter();
+ }
+ @Override
+ public Adapter caseVerify(Verify object) {
+ return createVerifyAdapter();
+ }
+ @Override
+ public Adapter caseRefine(Refine object) {
+ return createRefineAdapter();
+ }
+ @Override
+ public Adapter caseDirectedRelationshipPropertyPath(DirectedRelationshipPropertyPath object) {
+ return createDirectedRelationshipPropertyPathAdapter();
+ }
+ @Override
+ public Adapter caseStandard_Trace(org.eclipse.uml2.uml.profile.standard.Trace object) {
+ return createStandard_TraceAdapter();
+ }
+ @Override
+ public Adapter caseStandard_Refine(org.eclipse.uml2.uml.profile.standard.Refine object) {
+ return createStandard_RefineAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.requirements.DeriveReqt <em>Derive Reqt</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.requirements.DeriveReqt
+ * @generated
+ */
+ public Adapter createDeriveReqtAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.requirements.Trace <em>Trace</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.requirements.Trace
+ * @generated
+ */
+ public Adapter createTraceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.requirements.Requirement <em>Requirement</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.requirements.Requirement
+ * @generated
+ */
+ public Adapter createRequirementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.requirements.Copy <em>Copy</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.requirements.Copy
+ * @generated
+ */
+ public Adapter createCopyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.requirements.Satisfy <em>Satisfy</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.requirements.Satisfy
+ * @generated
+ */
+ public Adapter createSatisfyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.requirements.TestCase <em>Test Case</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.requirements.TestCase
+ * @generated
+ */
+ public Adapter createTestCaseAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.requirements.Verify <em>Verify</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.requirements.Verify
+ * @generated
+ */
+ public Adapter createVerifyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.requirements.Refine <em>Refine</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.requirements.Refine
+ * @generated
+ */
+ public Adapter createRefineAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath <em>Directed Relationship Property Path</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath
+ * @generated
+ */
+ public Adapter createDirectedRelationshipPropertyPathAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.uml2.uml.profile.standard.Trace <em>Trace</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.uml2.uml.profile.standard.Trace
+ * @generated
+ */
+ public Adapter createStandard_TraceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.uml2.uml.profile.standard.Refine <em>Refine</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.uml2.uml.profile.standard.Refine
+ * @generated
+ */
+ public Adapter createStandard_RefineAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //RequirementsAdapterFactory
diff --git a/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/util/RequirementsSwitch.java b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/util/RequirementsSwitch.java
new file mode 100644
index 00000000000..b2dc50b6ae1
--- /dev/null
+++ b/plugins/sysml/sysml14/org.eclipse.papyrus.sysml14/src-gen/org/eclipse/papyrus/sysml14/requirements/util/RequirementsSwitch.java
@@ -0,0 +1,326 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.eclipse.papyrus.sysml14.requirements.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.sysml14.blocks.DirectedRelationshipPropertyPath;
+
+import org.eclipse.papyrus.sysml14.requirements.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.sysml14.requirements.RequirementsPackage
+ * @generated
+ */
+public class RequirementsSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static RequirementsPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RequirementsSwitch() {
+ if (modelPackage == null) {
+ modelPackage = RequirementsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case RequirementsPackage.DERIVE_REQT: {
+ DeriveReqt deriveReqt = (DeriveReqt)theEObject;
+ T result = caseDeriveReqt(deriveReqt);
+ if (result == null) result = caseTrace(deriveReqt);
+ if (result == null) result = caseDirectedRelationshipPropertyPath(deriveReqt);
+ if (result == null) result = caseStandard_Trace(deriveReqt);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case RequirementsPackage.TRACE: {
+ Trace trace = (Trace)theEObject;
+ T result = caseTrace(trace);
+ if (result == null) result = caseDirectedRelationshipPropertyPath(trace);
+ if (result == null) result = caseStandard_Trace(trace);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case RequirementsPackage.REQUIREMENT: {
+ Requirement requirement = (Requirement)theEObject;
+ T result = caseRequirement(requirement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case RequirementsPackage.COPY: {
+ Copy copy = (Copy)theEObject;
+ T result = caseCopy(copy);
+ if (result == null) result = caseTrace(copy);
+ if (result == null) result = caseDirectedRelationshipPropertyPath(copy);
+ if (result == null) result = caseStandard_Trace(copy);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case RequirementsPackage.SATISFY: {
+ Satisfy satisfy = (Satisfy)theEObject;
+ T result = caseSatisfy(satisfy);
+ if (result == null) result = caseTrace(satisfy);
+ if (result == null) result = caseDirectedRelationshipPropertyPath(satisfy);
+ if (result == null) result = caseStandard_Trace(satisfy);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case RequirementsPackage.TEST_CASE: {
+ TestCase testCase = (TestCase)theEObject;
+ T result = caseTestCase(testCase);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case RequirementsPackage.VERIFY: {
+ Verify verify = (Verify)theEObject;
+ T result = caseVerify(verify);
+ if (result == null) result = caseTrace(verify);
+ if (result == null) result = caseDirectedRelationshipPropertyPath(verify);
+ if (result == null) result = caseStandard_Trace(verify);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case RequirementsPackage.REFINE: {
+ Refine refine = (Refine)theEObject;
+ T result = caseRefine(refine);
+ if (result == null) result = caseDirectedRelationshipPropertyPath(refine);
+ if (result == null) result = caseStandard_Refine(refine);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Derive Reqt</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Derive Reqt</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDeriveReqt(DeriveReqt object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Trace</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Trace</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTrace(Trace object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Requirement</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Requirement</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseRequirement(Requirement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Copy</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Copy</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCopy(Copy object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Satisfy</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Satisfy</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSatisfy(Satisfy object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Test Case</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Test Case</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTestCase(TestCase object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Verify</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Verify</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseVerify(Verify object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Refine</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Refine</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseRefine(Refine object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Directed Relationship Property Path</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Directed Relationship Property Path</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDirectedRelationshipPropertyPath(DirectedRelationshipPropertyPath object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Trace</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Trace</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStandard_Trace(org.eclipse.uml2.uml.profile.standard.Trace object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Refine</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Refine</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStandard_Refine(org.eclipse.uml2.uml.profile.standard.Refine object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //RequirementsSwitch

Back to the top