1 /* Copyright 2002-2026 CS GROUP
2 * Licensed to CS GROUP (CS) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * CS licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17 package org.orekit.files.ccsds.ndm.cdm;
18
19 import java.util.Optional;
20
21 import org.orekit.annotation.Nullable;
22 import org.orekit.files.ccsds.section.Header;
23
24 /**
25 * Header of a CCSDS Conjunction Data Message.
26 * @author Melina Vanel
27 * @since 11.2
28 */
29 public class CdmHeader extends Header {
30
31 /** ID that uniquely identifies a message from a given originator. */
32 @Nullable
33 private String messageFor;
34
35 /**
36 * Constructor.
37 */
38 public CdmHeader() {
39 super(1.0, 2.0);
40 }
41
42 /** {@inheritDoc} */
43 @Override
44 public void validate(final double version) {
45 super.validate(version);
46 }
47
48 /**
49 * Get the spacecraft name for which the CDM is provided stored in MESSAGE_FOR key.
50 * @return messageFor the spacecraft name for which the CDM is provided.
51 */
52 public Optional<String> getMessageFor() {
53 return Optional.ofNullable(messageFor);
54 }
55
56 /**
57 * Set the spacecraft name for which the CDM is provided stored in MESSAGE_FOR key.
58 * @param spacecraftNames the spacecraft name for which the CDM is provided.
59 */
60 public void setMessageFor(final String spacecraftNames) {
61 refuseFurtherComments();
62 this.messageFor = spacecraftNames;
63 }
64
65 }