The plugin component that wraps a {@link Resource}. This component allows you to work with the actual resource, such as determining its availability and setting its configuration, among other things. Resource components have a lifecycle controlled by the plugin container - see {@link #start(ResourceContext)} and {@link #stop()}.
Implementations of this interface can also implement one or more of the different functionality facets which will allow the component to support different features such as measureability, configurability and others. These functionality facets are:
{@link MeasurementFacet}
{@link ConfigurationFacet}
{@link OperationFacet}
{@link DeleteResourceFacet}
{@link CreateChildResourceFacet}
{@link ContentFacet}
{@link SupportFacet}
All implementations of this interface must also implement the base {@link AvailabilityFacet}.
@param < T> the parent resource component type for this component. This means you can nest a hierarchy of resourcecomponents that mimic the resource type hierarchy as defined in a plugin deployment descriptor.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.