RoutingIndicatorTerm.java
- /* Copyright 2024-2025 The Johns Hopkins University Applied Physics Laboratory
- * Licensed to CS GROUP (CS) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * CS licenses this file to You 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.
- */
- package org.orekit.files.iirv.terms;
- import org.orekit.files.iirv.terms.base.StringValuedIIRVTerm;
- /**
- * 4-character destination routing indicator that specifies the site for which the message was generated.
- * <p>
- * See {@link OriginIdentificationTerm OriginIdentificationTerm} for the related alphabetic character
- * <p>
- * Valid values:
- * <ul>
- * <li>GSFC = NASA Goddard Space Flight Center
- * <li>WLP = Wallops Island tracking radars
- * <li>ETR = NASA/USFC Eastern Test Range
- * <li>JPL = NASA Jet Propulsion Laboratory
- * <li>WTR = NASA/USFC Western Test Range
- * <li>JSC = NASA Johnson Space Center
- * <li>PMR = Navy Pacific Missile Range
- * <li>CSTC = Air Force Satellite Control Facility
- * <li>KMR = Army Kwajalein Missile Range
- * <li>CNES = French Space Agency National Centre for Space Studies (CNES)
- * <li>MANY = Message originated from more than one of the above stations
- * </ul>
- *
- * @author Nick LaFarge
- * @since 13.0
- */
- public class RoutingIndicatorTerm extends StringValuedIIRVTerm {
- /** NASA Goddard Space Flight Center (GSFC) RoutingIndicator. */
- public static final RoutingIndicatorTerm GSFC = new RoutingIndicatorTerm("GSFC");
- /** Wallops Island tracking radars (WLP) RoutingIndicator. */
- public static final RoutingIndicatorTerm WLP = new RoutingIndicatorTerm(" WLP");
- /** NASA/USFC Eastern Test Range (ETR) RoutingIndicator. */
- public static final RoutingIndicatorTerm ETR = new RoutingIndicatorTerm(" ETR");
- /** NASA Jet Propulsion Laboratory (JPL) RoutingIndicator. */
- public static final RoutingIndicatorTerm JPL = new RoutingIndicatorTerm(" JPL");
- /** NASA/USFC Western Test Range (WTR) RoutingIndicator. */
- public static final RoutingIndicatorTerm WTR = new RoutingIndicatorTerm(" WTR");
- /** NASA Johnson Space Center (JSC) RoutingIndicator. */
- public static final RoutingIndicatorTerm JSC = new RoutingIndicatorTerm(" JSC");
- /** Navy Pacific Missile Range (PMR) RoutingIndicator. */
- public static final RoutingIndicatorTerm PMR = new RoutingIndicatorTerm(" PMR");
- /** Air Force Satellite Control Facility (CSTC) RoutingIndicator. */
- public static final RoutingIndicatorTerm CSTC = new RoutingIndicatorTerm("CSTC");
- /** Army Kwajalein Missile Range (KMR) RoutingIndicator. */
- public static final RoutingIndicatorTerm KMR = new RoutingIndicatorTerm(" KMR");
- /** French Space Agency National Centre for Space Studies (CNES) RoutingIndicator. */
- public static final RoutingIndicatorTerm CNES = new RoutingIndicatorTerm("CNES");
- /** Message originated from more than one of the above stations RoutingIndicator. */
- public static final RoutingIndicatorTerm MANY = new RoutingIndicatorTerm("MANY");
- /** The length of the IIRV term within the message. */
- public static final int ROUTING_INDICATOR_TERM_LENGTH = 4;
- /** Regular expression that ensures the validity of string values for this term. */
- public static final String ROUTING_INDICATOR_TERM_PATTERN = "([A-Z ]+)";
- /**
- * Constructor.
- * <p>
- * See {@link StringValuedIIRVTerm#StringValuedIIRVTerm(String, String, int)}
- *
- * @param value value of the routing indicator term
- */
- public RoutingIndicatorTerm(final String value) {
- super(ROUTING_INDICATOR_TERM_PATTERN, value, ROUTING_INDICATOR_TERM_LENGTH);
- }
- }