aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/vespa/model/container/component/ContainerSubsystem.java
blob: 280546e7efc2c2417dbde032b2a66b7b61d491f3 (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
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.model.container.component;

import com.yahoo.vespa.model.container.component.chain.Chains;

/**
 * Holder for components and options related to either processing/search/docproc
 * for a container cluster.
 *
 * @author gjoranv
 */
public abstract class ContainerSubsystem<CHAINS extends Chains<?>> {

    private final CHAINS chains;

    public ContainerSubsystem(CHAINS chains) {
        this.chains = chains;
    }

    public CHAINS getChains() {
        if (chains == null)
            throw new IllegalStateException("Null chains for " + this);
        return chains;
    }

}