/**
*
*/
package org.minnal.api;
import org.minnal.api.filter.CorsFilter;
import org.minnal.core.Application;
import org.minnal.core.Plugin;
import org.minnal.core.config.ApplicationConfiguration;
import com.wordnik.swagger.jaxrs.listing.ApiDeclarationProvider;
import com.wordnik.swagger.jaxrs.listing.ApiListingResourceJSON;
import com.wordnik.swagger.jaxrs.listing.ResourceListingProvider;
/**
* @author ganeshs
*
*/
public class ApiPlugin implements Plugin {
private boolean enableCors;
/**
* @param enableCors
*/
public ApiPlugin(boolean enableCors) {
this.enableCors = enableCors;
}
@Override
public void init(Application<? extends ApplicationConfiguration> application) {
application.addProvider(new ApiDeclarationProvider());
application.addProvider(new ResourceListingProvider());
application.addResource(ApiListingResourceJSON.class);
if (enableCors) {
application.addFilter(CorsFilter.class);
}
}
@Override
public void destroy() {
}
}