package controller.upload;
import org.apache.tomcat.jni.File;
import java.nio.file.*;
import static java.nio.file.StandardCopyOption.*;
import logging.Log;
import java.io.*;
public abstract class SequencePngFile implements UploadProcessor{
public static void createPngFile(String pFileName, String pInFileName,
String pFileDir, String pLibPath) {
try {
final String umlPicutilPath = "D:\\GnuWin32\\bin\\pic2plot.exe";
//logging.Log.LogCreate().Info("pFileName =" + pFileName + " pInFileName=" + pInFileName + " pFileDir= " + pFileDir + " pLibPath = " + pLibPath);
logging.Log.LogCreate().Info(umlPicutilPath);
Path srcSeqPicFile =new java.io.File(pLibPath + "sequence.pic").toPath();
Path dstSeqPicFile = new java.io.File(pFileDir + "sequence.pic").toPath();
Path temp = java.nio.file.Files.copy(srcSeqPicFile, dstSeqPicFile,REPLACE_EXISTING);
logging.Log.LogCreate().Info(temp.toString());
String picFileName = pFileDir + pInFileName;
String pngFileName = pFileDir + pFileName + ".png";
logging.Log.LogCreate().Info(picFileName);
logging.Log.LogCreate().Info(pngFileName);
// Command to generate PNG file from pic file
FileWriter fw = null;
try {
fw = new FileWriter("C:\\test.bat");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
BufferedWriter bw=new BufferedWriter(fw);
bw.write(umlPicutilPath + " -Tpng --bitmap-size 1000x1000 " + picFileName + ">" + pngFileName + "\n" + "EXIT");
bw.close();
fw.close();
String command[] = new String[]{"cmd","/k","start","C:\\test.bat"};
try {
//Process procObj = Runtime.getRuntime().exec(command);
Runtime.getRuntime().exec(command);
} catch (Exception e) {
e.printStackTrace();
Log.LogCreate().Info("Error 2: generating png file failed .." + e.getMessage());
}
} catch (Exception e) {
Log.LogCreate().Info("Error in creating the png file............." + e.getMessage());
}
}
}