diff options
Diffstat (limited to 'src/main/java')
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 ); } } |
