org.eclipse.emf.facet.custom.core

## Interface ICustomizationManager

    public interface ICustomizationManager

This interface allows to access the customization manager. A customization manager will compute the customization property depending on the loaded customizations. Be careful, the load order has an impact on the customization property value. Customizations are loaded in a stack. If there is a conflict between two customizations, the higher customization (the nearest from the top of the stack) gets the priority.

Since:
  0.2
Author:
  Gregoire Dupe
Noimplement:
  This interface is not intended to be implemented by clients.
Noextend:
  This interface is not intended to be extended by clients.

### Method Summary

All Methods Instance Methods Abstract Methods
`<T> T` `getCustomValueOf(EObject eObject, ETypedElement structuralFeature, FacetOperation customProperty, java.lang.Class<T> classs)` This method is used to get the value of a customization property for a chosen eObject and a chosen eStructuralFeature.
`<T> T` `getCustomValueOf(EObject eObject, FacetOperation customProperty, java.lang.Class<T> classs)` This method is used to get the value of a customization property for a chosen eObject.
`IFacetManager` `getFacetManager()`
`java.util.List<Customization>` `getManagedCustomizations()` This method is used to get the customization stack.
`ResourceSet` `getResourceSet()` This method returns the resourceSet used to manage the customization models.

### Method Detail

#### getManagedCustomizations

    java.util.List<Customization> getManagedCustomizations()

This method is used to get the customization stack. The top customization in the stack will be the first in the list.

Returns:
  a mutable list of customizations

#### getCustomValueOf

    <T> T getCustomValueOf(EObject eObject,
                           FacetOperation customProperty,
                           java.lang.Class<T> classs)
                    throws CustomizationException

This method is used to get the value of a customization property for a chosen eObject.

Parameters:
  `eObject` -
  `customProperty` -
  `classs` - the expected result type
Returns:
  a value having a type depending a the customizationProperty type. (Can be null.)
Throws:
  `CustomizationException`

#### getCustomValueOf

    <T> T getCustomValueOf(EObject eObject,
                           ETypedElement structuralFeature,
                           FacetOperation customProperty,
                           java.lang.Class<T> classs)
                    throws CustomizationException

This method is used to get the value of a customization property for a chosen eObject and a chosen eStructuralFeature.

Parameters:
  `eObject` -
  `structuralFeature` - must not be null
  `customProperty` - must not be null
  `classs` - the expected result type
Returns:
  a value having a type depending a the customizationProperty type. (Can be null.)
Throws:
  `CustomizationException`

#### getResourceSet

    ResourceSet getResourceSet()

This method returns the resourceSet used to manage the customization models.

#### getFacetManager

    IFacetManager getFacetManager()