Skip to content

Delete files from local directory that are already present in your Synology remote directory

License

Notifications You must be signed in to change notification settings

danishnaseem05/EyeWatch

Repository files navigation

README

The intention of this software for me is solely to delete the Fortnite video files from my PC after they have successfully been uploaded to the Synology DiskStation. As NVIDIA GEFORCE NOW saves the gameplay captures on my local hard drive as I'm playing the game, which causes low disk space on my (C:) Drive, therefore after uploading these video files to my Synology DiskStation using the app called Synology Drive, this software would delete those local video files. I'll try my best not to hard code this software, so it can be of more general use.

  • For more info refer to the following:

    • Documentation.docx for the full visual documentation
    • Documentation.md for the markdown version of it, without the images.
  • To RUN the program refer to the JAR file:

    • Target/EyeWatch.jar
  • For TESTING refer to:

    • src/test/java/Test/Testing.java

TODO

  • Change the name of the entire program from EyeWatch to either EyePurgeWatch or SynologyPurgeWatch (this one would also require the modification of icons)

  • Call the SynologyAPI's run method from the Lib.java constructor and save the Filenames in a LinkedList.

  • Make a method in Lib.java that compares two Linked Lists (in this case they'll be the remote files linked list and local files linked list). This will have O(1) space complexity and O(n^2) time complexity, as it will compare each item from each linked list, hence running in a nested loop. While running in a loop, it will append each item that is present in both the linked lists to a linked list, which is going to be returned at the end of the function call. That list will later be passed on to the delete method to delete those files.

  • Fix either GUI.java or OperatingSystem.java so that the database doesn't save setting until the monitoring has started correctly.

  • Fix the port number error in the SynologyAPI.java

  • Figure out the bug that is causing the GUI to not display the https port number error if the typed https port number is not an integer.

  • Make the WatchLocalDirectoryStateThread class in OperatingSystem.java more efficient so it doesn't take up the CPU when running in Idle. Create idle method to achieve this.