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.

The following features are supported:

See Also:
UMLPackage.getProfile()

Field Summary
 
Fields inherited from interface org.eclipse.uml2.uml.NamedElement
SEPARATOR
 
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
 Stereotype createOwnedStereotype(java.lang.String name)
          Creates a new Stereotype, with the specified 'Name', and appends it to the 'Owned Stereotype' reference list
 Stereotype createOwnedStereotype(java.lang.String name, boolean isAbstract)
          Creates a(n) (abstract) stereotype with the specified name as an owned stereotype of this profile.
 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.
 Stereotype getOwnedStereotype(java.lang.String name)
          Retrieves the first Stereotype with the specified 'Name' from the 'Owned Stereotype' reference list
 Stereotype getOwnedStereotype(java.lang.String name, boolean ignoreCase, boolean createOnDemand)
          Retrieves the first Stereotype with the specified 'Name' from the 'Owned Stereotype' reference list
 org.eclipse.emf.common.util.EList<Stereotype> getOwnedStereotypes()
          Returns the value of the 'Owned Stereotype' reference list.
 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
applyProfile, createNestedPackage, createNestedPackage, createOwnedClass, createOwnedEnumeration, createOwnedInterface, createOwnedPrimitiveType, createOwnedType, createPackagedElement, createPackageMerge, createProfileApplication, getAllAppliedProfiles, getAllProfileApplications, getAppliedProfile, getAppliedProfile, getAppliedProfiles, getNestedPackage, getNestedPackage, getNestedPackages, getNestingPackage, getOwnedType, getOwnedType, getOwnedTypes, getPackagedElement, getPackagedElement, getPackagedElements, getPackageMerge, getPackageMerge, getPackageMerges, getProfileApplication, getProfileApplication, getProfileApplications, isModelLibrary, isProfileApplied, makesVisible, setNestingPackage, 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, validateMembersDistinguishable
 
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.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, 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.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.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, 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.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, 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

getOwnedStereotypes

org.eclipse.emf.common.util.EList<Stereotype> getOwnedStereotypes()
Returns the value of the 'Owned Stereotype' reference list. The list contents are of type Stereotype. References the Stereotypes that are owned by the Profile.

Returns:
the value of the 'Owned Stereotype' reference list.
See Also:
UMLPackage.getProfile_OwnedStereotype()

createOwnedStereotype

Stereotype createOwnedStereotype(java.lang.String name)
Creates a new Stereotype, with the specified 'Name', and appends it to the 'Owned Stereotype' reference list.

Parameters:
name - The 'Name' for the new Stereotype, or null.
Returns:
The new Stereotype.
See Also:
getOwnedStereotypes()

getOwnedStereotype

Stereotype getOwnedStereotype(java.lang.String name)
Retrieves the first Stereotype with the specified 'Name' from the 'Owned Stereotype' reference list.

Parameters:
name - The 'Name' of the Stereotype to retrieve, or null.
Returns:
The first Stereotype with the specified 'Name', or null.
See Also:
getOwnedStereotypes()

getOwnedStereotype

Stereotype getOwnedStereotype(java.lang.String name,
                              boolean ignoreCase,
                              boolean createOnDemand)
Retrieves the first Stereotype with the specified 'Name' from the 'Owned Stereotype' reference list.

Parameters:
name - The 'Name' of the Stereotype to retrieve, or null.
ignoreCase - Whether to ignore case in String comparisons.
createOnDemand - Whether to create a Stereotype on demand if not found.
Returns:
The first Stereotype with the specified 'Name', or null.
See Also:
getOwnedStereotypes()

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. References a metaclass that may be extended.

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. References a package containing (directly or indirectly) metaclasses that may be extended.

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. self.metaclassReference.importedElement-> select(c | c.oclIsKindOf(Classifier) and (c.generalization.namespace = self or (c.specialization.namespace = self) )->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. self.metamodelReference.importedPackage.elementImport.importedElement.allOwningPackages())-> union(self.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.

createOwnedStereotype

Stereotype createOwnedStereotype(java.lang.String name,
                                 boolean isAbstract)
Creates a(n) (abstract) stereotype with the specified name as an owned stereotype of this profile.

Parameters:
name - The name for the new stereotype, or null.
isAbstract - Whether the new stereotype should be abstract.

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, 2007 IBM Corporation and others.
All Rights Reserved.