001package gov.nist.secauto.oscal.lib.model; 002 003import gov.nist.secauto.metaschema.binding.model.annotations.BoundFlag; 004import gov.nist.secauto.metaschema.binding.model.annotations.MetaschemaAssembly; 005import gov.nist.secauto.metaschema.model.common.datatype.adapter.StringAdapter; 006import java.lang.Override; 007import java.lang.String; 008import org.apache.commons.lang3.builder.MultilineRecursiveToStringStyle; 009import org.apache.commons.lang3.builder.ReflectionToStringBuilder; 010 011/** 012 * Selecting a set of controls by matching their IDs with a wildcard pattern. 013 */ 014@MetaschemaAssembly( 015 formalName = "Match Controls by Pattern", 016 description = "Selecting a set of controls by matching their IDs with a wildcard pattern.", 017 name = "matching", 018 metaschema = OscalProfileMetaschema.class 019) 020public class Matching { 021 @BoundFlag( 022 formalName = "Pattern", 023 description = "A [glob expression](https://en.wikipedia.org/wiki/Glob_(programming)) matching the IDs of one or more controls to be selected.", 024 useName = "pattern", 025 typeAdapter = StringAdapter.class 026 ) 027 private String _pattern; 028 029 public Matching() { 030 } 031 032 public String getPattern() { 033 return _pattern; 034 } 035 036 public void setPattern(String value) { 037 _pattern = value; 038 } 039 040 @Override 041 public String toString() { 042 return new ReflectionToStringBuilder(this, MultilineRecursiveToStringStyle.MULTI_LINE_STYLE).toString(); 043 } 044}