/**
*
*/
package org.minnal.generator.core;
import java.io.File;
import java.io.StringWriter;
import java.util.ArrayList;
import java.util.List;
import org.minnal.core.Application;
import org.minnal.utils.serializer.Serializer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* @author ganeshs
*
*/
public class ApplicationSpiGenerator extends AbstractGenerator {
private List<String> applications = new ArrayList<String>();
private File file;
private static final Logger logger = LoggerFactory.getLogger(ApplicationSpiGenerator.class);
/**
* @param baseDir
*/
public ApplicationSpiGenerator(File baseDir) {
super(baseDir);
}
@Override
public void init() {
super.init();
file = new File(getServicesFolder(true), Application.class.getName());
}
public void addApplication(String application) {
this.applications.add(application);
}
@Override
public void generate() {
logger.info("Creating the application spi file {}", file.getAbsolutePath());
StringWriter writer = new StringWriter();
for (String application : applications) {
writer.append(application).append("\n");
}
serializeTo(file, writer.toString(), Serializer.DEFAULT_TEXT_SERIALIZER);
}
}