diff options
author | Nils Schwabe | 2014-06-16 18:01:17 +0200 |
---|---|---|
committer | Nils Schwabe | 2014-06-16 18:01:17 +0200 |
commit | abe4422f8db9f3f762f9505d67765d2ffe4f7ad5 (patch) | |
tree | 52492ec8d628687323f88f4cb9e8c33afb2b5fd8 /src | |
parent | Add FtpUsers are now in sync with DB (diff) | |
download | masterserver-abe4422f8db9f3f762f9505d67765d2ffe4f7ad5.tar.gz masterserver-abe4422f8db9f3f762f9505d67765d2ffe4f7ad5.tar.xz masterserver-abe4422f8db9f3f762f9505d67765d2ffe4f7ad5.zip |
Implement downloading functionality
Diffstat (limited to 'src')
3 files changed, 18 insertions, 4 deletions
diff --git a/src/main/java/org/openslx/imagemaster/ftp/MasterFtpServer.java b/src/main/java/org/openslx/imagemaster/ftp/MasterFtpServer.java index 8ed64d6..3da37a0 100644 --- a/src/main/java/org/openslx/imagemaster/ftp/MasterFtpServer.java +++ b/src/main/java/org/openslx/imagemaster/ftp/MasterFtpServer.java @@ -260,8 +260,12 @@ public class MasterFtpServer implements Runnable DbFtpUser.removeUserByName( username ); } // remove his home dir - File dir = new File( Globals.getPropertyString( Globals.PropString.FTPBASEDIR ) + "/" + username ); - Util.deleteFolder( dir ); + try { + File dir = new File( Globals.getPropertyString( Globals.PropString.FTPBASEDIR ) + "/" + username ); + Util.deleteFolder( dir ); + } catch (Exception e) { + // don't care because it could be a downloading user + } return true; } catch ( FtpException e ) { return false; diff --git a/src/main/java/org/openslx/imagemaster/server/ApiServer.java b/src/main/java/org/openslx/imagemaster/server/ApiServer.java index ab1b88a..a36f201 100644 --- a/src/main/java/org/openslx/imagemaster/server/ApiServer.java +++ b/src/main/java/org/openslx/imagemaster/server/ApiServer.java @@ -226,4 +226,15 @@ public class ApiServer return ftpCredentials; } + public static boolean finishedDownload( String ftpUser ) + { + if ( !App.ftpServer.users.containsKey( ftpUser )) + return false; + + // download is done, user can be removed now + App.ftpServer.removeUser( ftpUser ); + + return true; + } + } diff --git a/src/main/java/org/openslx/imagemaster/thrift/server/ImageServerHandler.java b/src/main/java/org/openslx/imagemaster/thrift/server/ImageServerHandler.java index 9ad1fcb..446fae3 100644 --- a/src/main/java/org/openslx/imagemaster/thrift/server/ImageServerHandler.java +++ b/src/main/java/org/openslx/imagemaster/thrift/server/ImageServerHandler.java @@ -80,8 +80,7 @@ public class ImageServerHandler implements ImageServer.Iface @Override public boolean finishedDownload( String ftpUser ) throws TException { - // TODO Auto-generated method stub - return false; + return ApiServer.finishedDownload( ftpUser ); } } |