summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/openslx/taskmanager/tasks/WakeOnLan.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/openslx/taskmanager/tasks/WakeOnLan.java')
-rw-r--r--src/main/java/org/openslx/taskmanager/tasks/WakeOnLan.java16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/main/java/org/openslx/taskmanager/tasks/WakeOnLan.java b/src/main/java/org/openslx/taskmanager/tasks/WakeOnLan.java
index 2391d4d..17780b5 100644
--- a/src/main/java/org/openslx/taskmanager/tasks/WakeOnLan.java
+++ b/src/main/java/org/openslx/taskmanager/tasks/WakeOnLan.java
@@ -93,14 +93,17 @@ public class WakeOnLan extends AbstractTask
}
list.add( client.mac );
}
+ if ( byMethod.isEmpty() )
+ break;
+ status.addMsg( "Starting job distribution..." );
// Execute
List<Future<?>> waitList = new ArrayList<>();
for ( Entry<String, ArrayList<String>> it : byMethod.entrySet() ) {
- String[] parts = it.getKey().split( "//" );
- String method = parts[0];
- List<String> macs = it.getValue();
- String macString = Strings.join( macs.iterator(), ' ' );
- String ip = parts[1];
+ final String[] parts = it.getKey().split( "//" );
+ final String method = parts[0];
+ final List<String> macs = it.getValue();
+ final String macString = Strings.join( macs.iterator(), ' ' );
+ final String ip = parts[1];
final int jobId = ++jobIdCounter;
if ( method.equalsIgnoreCase( "DIRECT" ) ) {
// Directly from server
@@ -164,8 +167,7 @@ public class WakeOnLan extends AbstractTask
e.printStackTrace();
}
}
- // If we had any jobs to do, loop again, otherwise we're done
- } while ( !byMethod.isEmpty() );
+ } while ( true );
status.addMsg( "Mainloop done" );
if ( this.clients.isEmpty() )
return true;