syncthing / syncthing-java Goto Github PK
View Code? Open in Web Editor NEWThis project forked from davide-imbriaco/a-sync
A Java client implementation of the Syncthing protocol
License: Mozilla Public License 2.0
This project forked from davide-imbriaco/a-sync
A Java client implementation of the Syncthing protocol
License: Mozilla Public License 2.0
Unfortunately, there seems to be no simple, cross-platform way to implement this. Anyway this is not required, and will only print a warning on Syncthing devices.
I run ./gradlew run -Pargs="-d BPDFDTU-..."
on 1f1bb33, which results in the following error:
15:09:40.955 [pool-7-thread-1] WARN net.syncthing.java.discovery.protocol.LocalDiscoveryHandler - Error receiving datagram
java.net.SocketException: Socket closed
at java.net.PlainDatagramSocketImpl.receive0(Native Method)
at java.net.AbstractPlainDatagramSocketImpl.receive(AbstractPlainDatagramSocketImpl.java:143)
at java.net.DatagramSocket.receive(DatagramSocket.java:812)
at net.syncthing.java.discovery.protocol.LocalDiscoveryHandler$2.run(LocalDiscoveryHandler.java:151)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Entire log: https://gist.github.com/imsodin/6b640daf58cc490ce40e185a259a9219
Might be related to #5
I haven't looked into it at all yet, as I tried to find out how debugging in Android Studio or linux command line works for a java gradle project - I got a little annoyed in the process. If you have the inclination to tell me a bit about your workflow and/or answer a few questions, ping me in IRC.
The index should be handled entirely by the library. There is no reason that the app should have to trigger index updates. Eg whenever we connect to a device.
Only very few classes need to be visible to clients, eg SyncthingClient and IndexHandler. Other classes should be hidden.
The apk currently has 7 MB, and requires multidex (which slows down the build). We should reduce the number of dependencies.
Largest packages according to du -sch
on extracted a-sync-client-1.3-executable.jar:
Bouncycastle: 17MB
Google Common: 8.7 MB
Apache Commons: 6.3MB
H2 Database: 5.1MB
The initial key generation is very slow compared to syncthing-android. There is obviously room for improvement.
Sometimes connecting works fine, but other times (under the same circumstances) nothing works.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.