hudson.plugins.android_emulator
Class TaskDispatcher
java.lang.Object
hudson.model.queue.QueueTaskDispatcher
hudson.plugins.android_emulator.TaskDispatcher
- All Implemented Interfaces:
- hudson.ExtensionPoint
@Extension
public class TaskDispatcher
- extends hudson.model.queue.QueueTaskDispatcher
This QueueTaskDispatcher prevents any one Android emulator instance from being executed more than
once concurrently on any one build machine.
From the given Task, we form a hash of the emulator configuration
and check whether any other build currently running on the given Node
is already using this configuration. If so, we veto execution of the given Task.
As Android emulator attributes will quite often be parameterised (especially for matrix builds),
we attempt to expand as many variables as possible, i.e. from the environment of the Node
and the axis combination for matrix builds. Because we are evaluating these parameters before the
build has actually started, it's possible that the variable expansions made aren't 100% accurate,
for example if there are earlier BuildWrapper instances contributing to the environment.
| Nested classes/interfaces inherited from interface hudson.ExtensionPoint |
hudson.ExtensionPoint.LegacyInstancesAreScopedToHudson |
|
Method Summary |
hudson.model.queue.CauseOfBlockage |
canTake(hudson.model.Node node,
hudson.model.Queue.Task task)
|
| Methods inherited from class hudson.model.queue.QueueTaskDispatcher |
all |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TaskDispatcher
public TaskDispatcher()
canTake
public hudson.model.queue.CauseOfBlockage canTake(hudson.model.Node node,
hudson.model.Queue.Task task)
- Specified by:
canTake in class hudson.model.queue.QueueTaskDispatcher
Copyright © 2004-2011. All Rights Reserved.