001/*
002 * SPDX-FileCopyrightText: none
003 * SPDX-License-Identifier: CC0-1.0
004 */
005
006package gov.nist.secauto.oscal.lib.metapath.function.library;
007
008import com.google.auto.service.AutoService;
009
010import gov.nist.secauto.metaschema.core.metapath.function.FunctionLibrary;
011import gov.nist.secauto.metaschema.core.metapath.function.IFunctionLibrary;
012
013@AutoService(IFunctionLibrary.class)
014public class OscalFunctionLibrary
015    extends FunctionLibrary {
016
017  public OscalFunctionLibrary() {
018    registerFunction(ResolveProfile.SIGNATURE_NO_ARG);
019    registerFunction(ResolveProfile.SIGNATURE_ONE_ARG);
020    registerFunction(HasOscalNamespace.SIGNATURE_ONE_ARG);
021    registerFunction(HasOscalNamespace.SIGNATURE_TWO_ARGS);
022
023    // for backwards compatibility with no function namespace
024    registerFunction(ResolveProfile.SIGNATURE_NO_ARG_METAPATH);
025    registerFunction(ResolveProfile.SIGNATURE_ONE_ARG_METAPATH);
026    registerFunction(HasOscalNamespace.SIGNATURE_ONE_ARG_METAPATH);
027    registerFunction(HasOscalNamespace.SIGNATURE_TWO_ARGS_METAPATH);
028
029  }
030
031}