All Downloads are FREE. Search and download functionalities are using the official Maven repository.

se.jbee.inject.config.Feature Maven / Gradle / Ivy

There is a newer version: 0.6
Show newest version
/*
 *  Copyright (c) 2012, Jan Bernitt 
 *			
 *  Licensed under the Apache License, Version 2.0, http://www.apache.org/licenses/LICENSE-2.0
 */
package se.jbee.inject.config;

import se.jbee.inject.bootstrap.Bundle;
import se.jbee.inject.bootstrap.Module;

/**
 * {@link Feature}s can be used to model more fine grained {@link Edition} by using
 * enums as the options to chose from.
 * 
 * @author Jan Bernitt ([email protected])
 * 
 * @param 
 *            The enum used as different features/options to chose from.
 */
public interface Feature> {

	/**
	 * @return The feature this given {@link Bundle} or {@link Module} class represents or
	 *         null is it doesn't represent any special feature (so it will be install
	 *         in any case).
	 */
	T featureOf( Class bundleOrModule );
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy