Matching.java

package gov.nist.secauto.oscal.lib.model;

import gov.nist.secauto.metaschema.binding.model.annotations.BoundFlag;
import gov.nist.secauto.metaschema.binding.model.annotations.MetaschemaAssembly;
import gov.nist.secauto.metaschema.model.common.datatype.adapter.StringAdapter;
import java.lang.Override;
import java.lang.String;
import org.apache.commons.lang3.builder.MultilineRecursiveToStringStyle;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;

/**
 * Selecting a set of controls by matching their IDs with a wildcard pattern.
 */
@MetaschemaAssembly(
    formalName = "Match Controls by Pattern",
    description = "Selecting a set of controls by matching their IDs with a wildcard pattern.",
    name = "matching",
    metaschema = OscalProfileMetaschema.class
)
public class Matching {
  @BoundFlag(
      formalName = "Pattern",
      description = "A [glob expression](https://en.wikipedia.org/wiki/Glob_(programming)) matching the IDs of one or more controls to be selected.",
      useName = "pattern",
      typeAdapter = StringAdapter.class
  )
  private String _pattern;

  public Matching() {
  }

  public String getPattern() {
    return _pattern;
  }

  public void setPattern(String value) {
    _pattern = value;
  }

  @Override
  public String toString() {
    return new ReflectionToStringBuilder(this, MultilineRecursiveToStringStyle.MULTI_LINE_STYLE).toString();
  }
}