aQute.bnd.service.reporter.ReportSerializerPlugin Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of biz.aQute.bnd Show documentation
Show all versions of biz.aQute.bnd Show documentation
This command line utility is the Swiss army knife of OSGi. It provides you with a breadth of tools to understand and manage OSGi based systems. This project basically uses bndlib.
package aQute.bnd.service.reporter;
import java.io.OutputStream;
import java.util.Map;
import org.osgi.annotation.versioning.ProviderType;
/**
* This plugin serialize the extracted DTO report into a specific format.
*/
@ProviderType
public interface ReportSerializerPlugin {
/**
* Get the set of file extension names corresponding to the format that this
* plugin can serialize to.
*
* @return one or multiple extensions name, never {@code null}
*/
String[] getHandledExtensions();
/**
* Serialize the DTO report into the output stream.
*
* @param reportDTO the DTO report to serialize, must not be {@code null}
* @param output the output stream to write the serialization result, must
* not be {@code null}
* @throws Exception if any errors occur during the serialization process
*/
void serialize(Map reportDTO, OutputStream output) throws Exception;
}