Issue#22 improved createMD5File method in SibaUtils

This commit is contained in:
Didier Clermonté 2016-06-25 00:37:01 +02:00
parent 163851eb09
commit 74358afc3b
2 changed files with 81 additions and 59 deletions

View File

@ -103,7 +103,7 @@ public class SibaManager
out = new TarArchiveOutputStream(gzipOutputStream);
SibaUtils.tarDirectoryTree(fileToSave, out);
out.close();
SibaUtils.prepareMD5File(result, target + "/" + outputFileNameWithoutExtension + ".tgz.md5");
SibaUtils.createMD5File(result, target + "/" + outputFileNameWithoutExtension + ".tgz.md5");
}
}
catch (IOException ioExceptionBackup)

View File

@ -39,19 +39,49 @@ import org.apache.commons.compress.utils.IOUtils;
*/
public class SibaUtils
{
public static File createMD5File(final String md5, final String fileName, final String target) throws IOException
/**
*
* This method Generate the file with MD5.
*
* @param inputDirectory
* @param target
* @return
* @throws IOException
* @throws NoSuchAlgorithmException
*/
public static File createMD5File(final File inputDirectory, final String target)
throws IOException, NoSuchAlgorithmException
{
File result;
String md5 = SibaUtils.md5(inputDirectory);
String fileName = inputDirectory.getName();
result = createMD5File(md5, fileName, target);
//
return result;
}
public static File createMD5File(final String md5, final String fileName, final String target) throws IOException
{
File result;
FileWriter fileWriter;
fileWriter = null;
try
{
result = new File(target);
FileWriter fileWriter = new FileWriter(result);
fileWriter = new FileWriter(result);
fileWriter.write(md5);
String newLine = System.getProperty("line.separator");
fileWriter.append(" ");
fileWriter.append(fileName);
fileWriter.append(newLine);
fileWriter.close();
}
finally
{
IOUtils.closeQuietly(fileWriter);
}
//
return result;
}
@ -65,10 +95,13 @@ public class SibaUtils
public static String loadMD5Sum(final File choosenFile) throws IOException
{
String result;
FileReader fileReader;
fileReader = null;
try
{
if (choosenFile.exists() && (choosenFile.length() > 32))
{
FileReader fileReader = new FileReader(choosenFile);
fileReader = new FileReader(choosenFile);
BufferedReader bufferedReader = new BufferedReader(fileReader);
String line = bufferedReader.readLine();
result = line.substring(0, 32);
@ -78,7 +111,11 @@ public class SibaUtils
{
result = "";
}
}
finally
{
IOUtils.closeQuietly(fileReader);
}
//
return result;
}
@ -135,29 +172,6 @@ public class SibaUtils
return result;
}
/**
*
* This method Generate the file with MD5.
*
* @param directoryToCheck
* @param destination
* @return
* @throws IOException
* @throws NoSuchAlgorithmException
*/
public static File prepareMD5File(final File directoryToCheck, final String destination)
throws IOException, NoSuchAlgorithmException
{
File result;
String md5 = SibaUtils.md5(directoryToCheck);
String fileName = directoryToCheck.getName();
result = createMD5File(md5, fileName, destination);
//
return result;
}
/**
*
* @param choosenFile
@ -167,11 +181,14 @@ public class SibaUtils
public static File readFileNameToCheck(final File choosenFile) throws IOException
{
File result;
FileReader fileReader;
fileReader = null;
try
{
// result = null;
if (choosenFile.exists() && (choosenFile.length() > 32))
{
FileReader fileReader = new FileReader(choosenFile);
fileReader = new FileReader(choosenFile);
BufferedReader bufferedReader = new BufferedReader(fileReader);
String line = bufferedReader.readLine();
String fileNameToString = new String();
@ -192,6 +209,11 @@ public class SibaUtils
{
result = null;
}
}
finally
{
IOUtils.closeQuietly(fileReader);
}
//
return result;
}