From 4b92643221d92785aa18e28363d4cb0be0a138e8 Mon Sep 17 00:00:00 2001
From: Spark Fountain <stefan.behrendt@sparkfountain.de>
Date: Mon, 18 Jul 2016 19:31:56 +0200
Subject: [PATCH] improved snapshot folder naming with leading zeros

---
 src/main/java/fucoin/AbstractNode.java | 34 ++++++++++++++++++++++++--
 1 file changed, 32 insertions(+), 2 deletions(-)

diff --git a/src/main/java/fucoin/AbstractNode.java b/src/main/java/fucoin/AbstractNode.java
index 7b7f943..5b58293 100644
--- a/src/main/java/fucoin/AbstractNode.java
+++ b/src/main/java/fucoin/AbstractNode.java
@@ -181,10 +181,40 @@ public abstract class AbstractNode extends UntypedActor implements Serializable
      * @return Array[snapshot folder name, path to snapshot include filename]
      */
     private String[] getSnapshotDirAndFilename(String name, LocalDateTime time) {
-        String folder = time.getYear() + "-" + time.getMonthValue() + "-" + time.getDayOfMonth() + " " +
-                time.getHour() + "." + time.getMinute() + "." + time.getSecond();
+    	String folder = getFolderName(time);
         return new String[]{folder, "snapshots/" + folder + "/" + name + ".json"};
     }
+    
+    private String getFolderName(LocalDateTime time) {
+     	String result = "";
+     	
+     	String year = String.valueOf(time.getYear());
+     	String month = String.valueOf(time.getMonthValue());
+     	if(month.length()==1) {
+     		month = "0" + month;
+     	}
+     	String day = String.valueOf(time.getDayOfMonth());
+     	if(day.length()==1) {
+     		day = "0" + day;
+     	}
+     	String hour = String.valueOf(time.getHour());
+     	if(hour.length()==1) {
+     		hour = "0" + day;
+     	}
+     	String minute = String.valueOf(time.getMinute());
+     	if(minute.length()==1) {
+     		minute = "0" + minute;
+     	}
+     	String second = String.valueOf(time.getSecond());
+     	if(second.length()==1) {
+     		second = "0" + second;
+     	}
+     	
+     	result = year + "-" + month + "-" + day + "_"
+     			+ hour + "-" + minute + "-" + second;
+     	
+     	return result;
+     }
 
     private Statistics statistics = new Statistics();
 
-- 
GitLab