diff --git a/pom.xml b/pom.xml
index ec551d3..ed6b48b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -36,8 +36,14 @@
1.2.17
1.7.5
1.0.1
- 2.10.0
- 8.0.0-M1
+ 2.10.3
+ 8.0.0-M3
+ 2.2.3
+ 1.1
+ 2.8.0
+ 1.2
+ 1.9
+ 2.4.0
@@ -86,37 +92,37 @@
net.sourceforge.jtransforms
jtransforms
- 2.4.0
+ ${lib.jtransforms.version}
commons-cli
commons-cli
- 1.2
+ ${lib.commons-cli.version}
commons-codec
commons-codec
- 1.9
+ ${lib.commons-codec.version}
javax.transaction
jta
- 1.1
+ ${lib.jta.version}
net.sf.ehcache
ehcache
- 2.8.0
+ ${lib.ehcache.version}
com.typesafe.akka
akka-actor_2.10
- 2.1.1
+ ${lib.akka.version}
com.typesafe.akka
akka-slf4j_2.10
- 2.1.1
+ ${lib.akka.version}
@@ -126,6 +132,7 @@
src/main/resources
true
+ **/*.conf
**/*.properties
**/*.info
@@ -134,6 +141,7 @@
src/main/resources
false
+ **/*.conf
**/*.properties
**/*.info
@@ -144,6 +152,7 @@
src/test/resources
true
+ **/*.conf
**/*.properties
**/*.info
@@ -152,6 +161,7 @@
src/test/resources
false
+ **/*.conf
**/*.properties
**/*.info
diff --git a/src/main/resources/application.conf b/src/main/resources/application.conf
index abc24e6..d2fcb02 100644
--- a/src/main/resources/application.conf
+++ b/src/main/resources/application.conf
@@ -1,4 +1,62 @@
+//Default Properties File
+//Image Tools version: ${project.version}
+version = "${build-version}"
+
akka {
- event-handlers = ["akka.event.slf4j.Slf4jEventHandler"]
- loglevel = "DEBUG"
+ loggers = ["akka.event.slf4j.Slf4jLogger"]
+ loglevel = "INFO"
+}
+
+//Default App Settings
+app {
+ timed = false
+ log {
+ debug = false
+ info = false
+ error = true
+ }
+ engine {
+ //Concurrency Settings
+ concurrent {
+ similarity.limit = 15
+ processing.limit = 15
+ }
+ }
+}
+
+#Default Image Settings
+image {
+ //images must be 90% similar
+ differenceThreshold = 0.90
+ //control generation of hashes for new images.
+ hash {
+ precision=64
+ }
+ ahash {
+ use = true
+ weight = 0.70
+ precision = 8
+ tolerence = 8
+ }
+ dhash {
+ use = true
+ weight = 0.85
+ precision = 8
+ tolerence = 8
+ }
+ phash {
+ //set to false if hashing images is taking too long
+ use = true
+ weight = 1.0
+ precision = 32
+ tolerence = 8
+ }
+}
+
+//Default Thumbnail Settings
+thumbnail {
+ //Directory where to store thumbnails
+ directory = ".cache/thumbnails/"
+ //Size of the thumbnail to generate and store
+ size = 128
}
\ No newline at end of file
diff --git a/src/test/resources/application.conf b/src/test/resources/application.conf
index abc24e6..6fab465 100644
--- a/src/test/resources/application.conf
+++ b/src/test/resources/application.conf
@@ -1,4 +1,63 @@
-akka {
- event-handlers = ["akka.event.slf4j.Slf4jEventHandler"]
- loglevel = "DEBUG"
+//Default Properties File
+//Image Tools version: ${project.version}
+version = "${build-version}"
+
+
+akka {
+ loggers = ["akka.event.slf4j.Slf4jLogger"]
+ loglevel = "DEBUG"
+}
+
+//Default App Settings
+app {
+ timed = false
+ log {
+ debug = true
+ info = true
+ error = true
+ }
+ engine {
+ //Concurrency Settings
+ concurrent {
+ similarity.limit = 15
+ processing.limit = 15
+ }
+ }
+}
+
+#Default Image Settings
+image {
+ //images must be 90% similar
+ differenceThreshold = 0.90
+ //control generation of hashes for new images.
+ hash {
+ precision=64
+ }
+ ahash {
+ use = true
+ weight = 0.70
+ precision = 8
+ tolerence = 8
+ }
+ dhash {
+ use = true
+ weight = 0.85
+ precision = 8
+ tolerence = 8
+ }
+ phash {
+ //set to false if hashing images is taking too long
+ use = true
+ weight = 1.0
+ precision = 32
+ tolerence = 8
+ }
+}
+
+//Default Thumbnail Settings
+thumbnail {
+ //Directory where to store thumbnails
+ directory = ".cache/thumbnails/"
+ //Size of the thumbnail to generate and store
+ size = 128
}
\ No newline at end of file
diff --git a/todo b/todo
new file mode 100644
index 0000000..c5f252e
--- /dev/null
+++ b/todo
@@ -0,0 +1,18 @@
+Move over to Logback for the backend
+ -Convert the configuration file
+ -Convert the AppConfig to configure basic logging
+Profile and improve performance for the ConcurrentEngine when looking for similarities.
+ -SynchronousEngine is about 2.5x faster currently for finding similarities
+ -ConcurrentEngine actors for finding similarities are not CPU constrained and need to be
+Convert app configuration format from a java properties to a typesafehub:config
+ -Rewrite properties in new format (JSON)
+ -Rewrite PropertiesLoader to use the new format
+Add functionality to both engines
+ -Recursive directory scanning
+ -Determine how to handle similarites there... All images or just per folder
+ -Move files to new locations
+ -Rename new files based on their MD5
+Add functionality to ImageService
+ -Cache thumbnails
+ -Generate thumbnails
+ -Move caching of images into the ImageService
\ No newline at end of file