org.eclipse.uml2.uml
Interface Profile

All Superinterfaces:
Element, org.eclipse.emf.ecore.EModelElement, org.eclipse.emf.ecore.EObject, NamedElement, Namespace, org.eclipse.emf.common.notify.Notifier, Package, PackageableElement, ParameterableElement, TemplateableElement

public interface Profile
extends Package

A representation of the model object 'Profile'. A profile defines limited extensions to a reference metamodel with the purpose of adapting the metamodel to a specific platform or domain.

From package UML::Packages.

The following features are supported:

See Also:
UMLPackage.getProfile()

Field Summary
 
Fields inherited from interface org.eclipse.uml2.uml.NamedElement
SEPARATOR
 
Method Summary
 org.eclipse.emf.ecore.EObject create(Classifier classifier)
          Creates and returns an instance of (the Ecore representation of) the specified classifier defined in this profile.
 ElementImport createMetaclassReference(PackageableElement importedElement)
          Creates a new ElementImport, with the specified 'Imported Element', and appends it to the 'Metaclass Reference' reference list
 PackageImport createMetamodelReference(Package importedPackage)
          Creates a new PackageImport, with the specified 'Imported Package', and appends it to the 'Metamodel Reference' reference list
 org.eclipse.emf.ecore.EPackage define()
          Defines this profile by (re)creating Ecore representations of its current contents
 org.eclipse.emf.ecore.EPackage define(java.util.Map<java.lang.String,java.lang.String> options, org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          Defines this profile by (re)creating Ecore representations of its current contents, using the specified options, diagnostics, and context.
 org.eclipse.emf.ecore.EPackage getDefinition()
          Retrieves the current definition (Ecore representation) of this profile
 org.eclipse.emf.ecore.ENamedElement getDefinition(NamedElement namedElement)
          Retrieves the current definition (Ecore representation) of the specified named element in this profile.
 ElementImport getMetaclassReference(PackageableElement importedElement)
          Retrieves the first ElementImport with the specified 'Imported Element' from the 'Metaclass Reference' reference list
 ElementImport getMetaclassReference(PackageableElement importedElement, boolean createOnDemand)
          Retrieves the first ElementImport with the specified 'Imported Element' from the 'Metaclass Reference' reference list
 org.eclipse.emf.common.util.EList<ElementImport> getMetaclassReferences()
          Returns the value of the 'Metaclass Reference' reference list.
 PackageImport getMetamodelReference(Package importedPackage)
          Retrieves the first PackageImport with the specified 'Imported Package' from the 'Metamodel Reference' reference list
 PackageImport getMetamodelReference(Package importedPackage, boolean createOnDemand)
          Retrieves the first PackageImport with the specified 'Imported Package' from the 'Metamodel Reference' reference list
 org.eclipse.emf.common.util.EList<PackageImport> getMetamodelReferences()
          Returns the value of the 'Metamodel Reference' reference list.
 org.eclipse.emf.common.util.EList<Extension> getOwnedExtensions(boolean requiredOnly)
          Retrieves the extensions owned by this profile, excluding non-required extensions if indicated.
 org.eclipse.emf.common.util.EList<Class> getReferencedMetaclasses()
          Retrieves the metaclasses referenced by this profile
 org.eclipse.emf.common.util.EList<Model> getReferencedMetamodels()
          Retrieves the metamodels referenced by this profile
 boolean isDefined()
          Determines whether this profile is defined
 boolean validateMetaclassReferenceNotSpecialized(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          An element imported as a metaclassReference is not specialized or generalized in a Profile.
 boolean validateReferencesSameMetamodel(org.eclipse.emf.common.util.DiagnosticChain diagnostics, java.util.Map<java.lang.Object,java.lang.Object> context)
          All elements imported either as metaclassReferences or through metamodelReferences are members of the same base reference metamodel.
 
Methods inherited from interface org.eclipse.uml2.uml.Package
allApplicableStereotypes, applyProfile, containingProfile, createNestedPackage, createNestedPackage, createOwnedClass, createOwnedEnumeration, createOwnedInterface, createOwnedPrimitiveType, createOwnedStereotype, createOwnedType, createPackagedElement, createPackageMerge, createProfileApplication, getAllAppliedProfiles, getAllProfileApplications, getAppliedProfile, getAppliedProfile, getAppliedProfiles, getNestedPackage, getNestedPackage, getNestedPackages, getNestingPackage, getOwnedStereotype, getOwnedStereotype, getOwnedStereotypes, getOwnedType, getOwnedType, getOwnedTypes, getPackagedElement, getPackagedElement, getPackagedElements, getPackageMerge, getPackageMerge, getPackageMerges, getProfileApplication, getProfileApplication, getProfileApplications, getURI, isModelLibrary, isProfileApplied, makesVisible, setNestingPackage, setURI, unapplyProfile, validateElementsPublicOrPrivate, visibleMembers
 
Methods inherited from interface org.eclipse.uml2.uml.Namespace
createElementImport, createElementImport, createOwnedRule, createOwnedRule, createPackageImport, createPackageImport, excludeCollisions, getElementImport, getElementImport, getElementImports, getImportedElements, getImportedMember, getImportedMember, getImportedMembers, getImportedPackages, getMember, getMember, getMembers, getNamesOfMember, getOwnedMember, getOwnedMember, getOwnedMembers, getOwnedRule, getOwnedRule, getOwnedRules, getPackageImport, getPackageImport, getPackageImports, importMembers, membersAreDistinguishable, validateCannotImportOwnedMembers, validateCannotImportSelf, validateMembersDistinguishable
 
Methods inherited from interface org.eclipse.uml2.uml.PackageableElement
validateNamespaceNeedsVisibility
 
Methods inherited from interface org.eclipse.uml2.uml.NamedElement
allNamespaces, allOwningPackages, createDependency, createNameExpression, createUsage, getClientDependencies, getClientDependency, getClientDependency, getLabel, getLabel, getName, getNameExpression, getNamespace, getQualifiedName, getVisibility, isDistinguishableFrom, isSetName, isSetVisibility, separator, setName, setNameExpression, setVisibility, unsetName, unsetVisibility, validateHasNoQualifiedName, validateHasQualifiedName, validateVisibilityNeedsOwnership
 
Methods inherited from interface org.eclipse.uml2.uml.ParameterableElement
getOwningTemplateParameter, getTemplateParameter, isCompatibleWith, isTemplateParameter, setOwningTemplateParameter, setTemplateParameter
 
Methods inherited from interface org.eclipse.uml2.uml.Element
addKeyword, allOwnedElements, applyStereotype, createEAnnotation, createOwnedComment, destroy, getApplicableStereotype, getApplicableStereotypes, getAppliedStereotype, getAppliedStereotypes, getAppliedSubstereotype, getAppliedSubstereotypes, getKeywords, getModel, getNearestPackage, getOwnedComments, getOwnedElements, getOwner, getRelationships, getRelationships, getRequiredStereotype, getRequiredStereotypes, getSourceDirectedRelationships, getSourceDirectedRelationships, getStereotypeApplication, getStereotypeApplications, getTargetDirectedRelationships, getTargetDirectedRelationships, getValue, hasKeyword, hasValue, isStereotypeApplicable, isStereotypeApplied, isStereotypeRequired, mustBeOwned, removeKeyword, setValue, unapplyStereotype, validateHasOwner, validateNotOwnSelf
 
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
getEAnnotation, getEAnnotations
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 
Methods inherited from interface org.eclipse.uml2.uml.TemplateableElement
createOwnedTemplateSignature, createOwnedTemplateSignature, createTemplateBinding, getOwnedTemplateSignature, getTemplateBinding, getTemplateBinding, getTemplateBindings, isTemplate, parameterableElements, setOwnedTemplateSignature
 

Method Detail

getMetaclassReferences

org.eclipse.emf.common.util.EList<ElementImport> getMetaclassReferences()
Returns the value of the 'Metaclass Reference' reference list. The list contents are of type ElementImport.

This feature subsets the following features:

References a metaclass that may be extended.

From package UML::Packages.

Returns:
the value of the 'Metaclass Reference' reference list.
See Also:
UMLPackage.getProfile_MetaclassReference()

createMetaclassReference

ElementImport createMetaclassReference(PackageableElement importedElement)
Creates a new ElementImport, with the specified 'Imported Element', and appends it to the 'Metaclass Reference' reference list.

Parameters:
importedElement - The 'Imported Element' for the new ElementImport, or null.
Returns:
The new ElementImport.
See Also:
getMetaclassReferences()

getMetaclassReference

ElementImport getMetaclassReference(PackageableElement importedElement)
Retrieves the first ElementImport with the specified 'Imported Element' from the 'Metaclass Reference' reference list.

Parameters:
importedElement - The 'Imported Element' of the ElementImport to retrieve, or null.
Returns:
The first ElementImport with the specified 'Imported Element', or null.
See Also:
getMetaclassReferences()

getMetaclassReference

ElementImport getMetaclassReference(PackageableElement importedElement,
                                    boolean createOnDemand)
Retrieves the first ElementImport with the specified 'Imported Element' from the 'Metaclass Reference' reference list.

Parameters:
importedElement - The 'Imported Element' of the ElementImport to retrieve, or null.
createOnDemand - Whether to create a ElementImport on demand if not found.
Returns:
The first ElementImport with the specified 'Imported Element', or null.
See Also:
getMetaclassReferences()

getMetamodelReferences

org.eclipse.emf.common.util.EList<PackageImport> getMetamodelReferences()
Returns the value of the 'Metamodel Reference' reference list. The list contents are of type PackageImport.

This feature subsets the following features:

References a package containing (directly or indirectly) metaclasses that may be extended.

From package UML::Packages.

Returns:
the value of the 'Metamodel Reference' reference list.
See Also:
UMLPackage.getProfile_MetamodelReference()

createMetamodelReference

PackageImport createMetamodelReference(Package importedPackage)
Creates a new PackageImport, with the specified 'Imported Package', and appends it to the 'Metamodel Reference' reference list.

Parameters:
importedPackage - The 'Imported Package' for the new PackageImport, or null.
Returns:
The new PackageImport.
See Also:
getMetamodelReferences()

getMetamodelReference

PackageImport getMetamodelReference(Package importedPackage)
Retrieves the first PackageImport with the specified 'Imported Package' from the 'Metamodel Reference' reference list.

Parameters:
importedPackage - The 'Imported Package' of the PackageImport to retrieve, or null.
Returns:
The first PackageImport with the specified 'Imported Package', or null.
See Also:
getMetamodelReferences()

getMetamodelReference

PackageImport getMetamodelReference(Package importedPackage,
                                    boolean createOnDemand)
Retrieves the first PackageImport with the specified 'Imported Package' from the 'Metamodel Reference' reference list.

Parameters:
importedPackage - The 'Imported Package' of the PackageImport to retrieve, or null.
createOnDemand - Whether to create a PackageImport on demand if not found.
Returns:
The first PackageImport with the specified 'Imported Package', or null.
See Also:
getMetamodelReferences()

validateMetaclassReferenceNotSpecialized

boolean validateMetaclassReferenceNotSpecialized(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                                 java.util.Map<java.lang.Object,java.lang.Object> context)
An element imported as a metaclassReference is not specialized or generalized in a Profile. metaclassReference.importedElement-> select(c | c.oclIsKindOf(Classifier) and (c.oclAsType(Classifier).allParents()->collect(namespace)->includes(self)))->isEmpty() and packagedElement-> select(oclIsKindOf(Classifier))->collect(oclAsType(Classifier).allParents())-> intersection(metaclassReference.importedElement->select(oclIsKindOf(Classifier))->collect(oclAsType(Classifier)))->isEmpty()

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

validateReferencesSameMetamodel

boolean validateReferencesSameMetamodel(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                        java.util.Map<java.lang.Object,java.lang.Object> context)
All elements imported either as metaclassReferences or through metamodelReferences are members of the same base reference metamodel. metamodelReference.importedPackage.elementImport.importedElement.allOwningPackages()-> union(metaclassReference.importedElement.allOwningPackages() )->notEmpty()

Parameters:
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

create

org.eclipse.emf.ecore.EObject create(Classifier classifier)
Creates and returns an instance of (the Ecore representation of) the specified classifier defined in this profile.

Parameters:
classifier - The classifier of which to create an instance.

isDefined

boolean isDefined()
Determines whether this profile is defined.


define

org.eclipse.emf.ecore.EPackage define()
Defines this profile by (re)creating Ecore representations of its current contents.


define

org.eclipse.emf.ecore.EPackage define(java.util.Map<java.lang.String,java.lang.String> options,
                                      org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                      java.util.Map<java.lang.Object,java.lang.Object> context)
Defines this profile by (re)creating Ecore representations of its current contents, using the specified options, diagnostics, and context.

Parameters:
options - The options to use.
diagnostics - The chain of diagnostics to which problems are to be appended.
context - The cache of context-specific information.

getDefinition

org.eclipse.emf.ecore.EPackage getDefinition()
Retrieves the current definition (Ecore representation) of this profile.


getDefinition

org.eclipse.emf.ecore.ENamedElement getDefinition(NamedElement namedElement)
Retrieves the current definition (Ecore representation) of the specified named element in this profile.

Parameters:
namedElement - The named element whose definition to retrieve.

getReferencedMetaclasses

org.eclipse.emf.common.util.EList<Class> getReferencedMetaclasses()
Retrieves the metaclasses referenced by this profile.


getReferencedMetamodels

org.eclipse.emf.common.util.EList<Model> getReferencedMetamodels()
Retrieves the metamodels referenced by this profile.


getOwnedExtensions

org.eclipse.emf.common.util.EList<Extension> getOwnedExtensions(boolean requiredOnly)
Retrieves the extensions owned by this profile, excluding non-required extensions if indicated.

Parameters:
requiredOnly - Whether to retrieve only required extensions.

Copyright 2003, 2014 IBM Corporation, CEA, and others.
All Rights Reserved.