org.nakedobjects.metamodel.facets.MultiTypedFacet Maven / Gradle / Ivy
The newest version!
package org.nakedobjects.metamodel.facets;
/**
* A Class that provides multiple facet implementations, either directly or through a delegate.
*
*
* The client of this interface should use {@link #getFacet(Class)} to obtain the facet implementation for
* each of the {@link #facetTypes() facets types}.
*/
public interface MultiTypedFacet extends Facet {
/**
* All of the facet types either implemented or available by this facet implementation.
*
*/
public Class[] facetTypes();
public T getFacet(Class facet);
}
// Copyright (c) Naked Objects Group Ltd.