batkinson / jrsync

A minimal android-compatible library for efficient synchronization of large files

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

JRsync

Build Status Coverage Status Maven Central

A library for efficiently synchronizing files, based on the rsync algorithm. It is intended to be usable by applications written for the Android mobile operating system with no additional dependencies, as well as from server applications.

Why?

After looking for a solution for the CIMS project, I could not find an acceptable solution for efficient, general purpose file synchronization usable for both client and server components written in Java/Android. I was looking for something that had the following properties:

  • Usable in Java and Android without external dependencies
  • Capable of efficient incremental synchronization of large files
  • Minimalistic - Small and focused over large and feature-rich
  • Reasonable test coverage
  • A commercial-friendly, permissive license (non-viral open source license)

Since I couldn't find what I was looking for, I decided to create it.

Requirements

To build this library, you'll need:

  • JDK 7+
  • Apache Maven

Building

To build the library, you just need to run:

mvn clean install

About

A minimal android-compatible library for efficient synchronization of large files


Languages

Language:Java 100.0%