package org.jboss.resteasy.spi.metadata;

/**
 * SPI which allows implementations to modify the resource metadata discovered by RESTEasy.
 *
 * @author Christian Kaltepoth
 */
public interface ResourceClassProcessor
{

   /**
    * Allows the implementation of this method to modify the resource metadata represented by
    * the supplied {@link ResourceClass} instance. Implementation will typically create
    * wrappers which modify only certain aspects of the metadata.
    *
    * @param clazz The original metadata
    * @return the (potentially modified) metadata (never null)
    */
   ResourceClass process(ResourceClass clazz);

}
