blob: d2159841c9dff606e0f5549989a69ae77d0ca921 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
package com.yahoo.vespa.hosted.controller.deployment;
import com.yahoo.vespa.hosted.controller.api.integration.BuildService;
/**
* Sends build jobs to an internal build system whenever it accepts them, or to an external one otherwise.
*
* @author jonmv
*/
public class DelegatingBuildService implements BuildService {
private final BuildService external;
private final BuildService internal;
public DelegatingBuildService(BuildService external, BuildService internal) {
this.external = external;
this.internal = internal;
}
@Override
public void trigger(BuildJob buildJob) {
(internal.builds(buildJob) ? internal : external).trigger(buildJob);
}
@Override
public JobState stateOf(BuildJob buildJob) {
return (internal.builds(buildJob) ? internal : external).stateOf(buildJob);
}
}
|