aboutsummaryrefslogtreecommitdiffstats
path: root/kubernetes/cds/Chart.yaml
blob: f96054fa7065ccf6b1b639b8f45c1390c4acee7a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# Copyright © 2017 Amdocs, Bell Canada
# Modifications Copyright © 2018  Orange
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#       http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: v1
description: ONAP Controller Design Studio (CDS)
name: cds
version: 5.0.0
.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
/*
 * ============LICENSE_START=======================================================
 * ONAP
 * ================================================================================
 * Copyright (C) 2018-2019, 2021 AT&T Intellectual Property. All rights reserved.
 * ================================================================================
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * ============LICENSE_END=========================================================
 */

package org.onap.policy.drools.pooling.message;

import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.onap.policy.drools.pooling.PoolingFeatureException;

/**
 * Messages sent on the internal topic.
 */
@Getter
@Setter
@NoArgsConstructor
public class Message {

    /**
     * Name of the administrative channel.
     */
    public static final String ADMIN = "_admin";

    /**
     * Host that originated the message.
     */
    private String source;

    /**
     * Channel on which the message is routed, which is either the target host
     * or {@link #ADMIN}.
     */
    private String channel;


    /**
     * Constructor.
     *
     * @param source host on which the message originated
     */
    public Message(String source) {
        this.source = source;
    }

    /**
     * Checks the validity of the message, including verifying that required
     * fields are not missing.
     *
     * @throws PoolingFeatureException if the message is invalid
     */
    public void checkValidity() throws PoolingFeatureException {
        if (source == null || source.isEmpty()) {
            throw new PoolingFeatureException("missing message source");
        }

        if (channel == null || channel.isEmpty()) {
            throw new PoolingFeatureException("missing message channel");
        }
    }

}