Welcome to Metaphora's wiki!
Metaphora is a JavaFX 2 rich application written in Java and Groovy, and uses the GroovyFX and Netty projects.
Metaphora permits to send and receive large files between two machines, so it acts as client/server application.
You can see it in action in this screencast where, for the purpose of the demonstration, somes files are sent from and to the same instance of the application. The screenshot below also shows some progress bars when you send or receive files.
The application has a main form presenting a rectangular area, the DROP ZONE, and will show what's going on when files will be sent or received (to or from another instance of the application, normally on an another machine) by displaying progress bars for transfers progression.
Files can be sent simply by dragging them from the operating system and dropping them into the DROP ZONE. These files are then automatically transferred toward the destination machine. Of course, Metaphora must be running on this target machine in order to receive the files.
Metaphora uses a properties file to keep important parameters for its execution; this file,
conf.properties, is located in the
.metaphora folder inside the user's folder. Normally, this file is created for you run the application for the first time. This repository gives an example of a such file, with
Here the key/value pairs used in this file:
|inboxFilename||An absolute directory path in which received files will be saved|
By default it's the
|serverPort||The port number used by the TCP server.|
|clientHost||Hostname or IP of the target machine (that will receive files).|
|clientPort||The port number used by the Metaphora server target machine.|
Metaphora can be built with Gradle 1.0.
The Gradle build file provides tasks to build the application, but also:
metaphoratask to run Metaphora from the command line
disttask to produce the .jar files and a .jnlp file useful to start the application with Java Web Start. For that, you need to have a JRE 7 installed and that includes JavaFX 2 (we test it with Java 7 Update 5).
This task generates files in the
build/distfolder. For convenience, these files are provided in this repository.
As stated above, the best way (for now) to run Metaphora outside the build tool, is to run the
metaphora-*.jnlp file via Java Web Start. So, it would be possible to create un shortcut to the application from the Java Web Start viewer cache.